org.apache.sling.nosql.generic-1.0.0
[maven-release-plugin] copy for tag org.apache.sling.nosql.generic-1.0.0

git-svn-id: https://svn.apache.org/repos/asf/sling/tags/org.apache.sling.nosql.generic-1.0.0@1703696 13f79535-47bb-0310-9956-ffa450edef68
tree: 482045b692ccb6227ab6999984699720cd0a4c4e
  1. README.md
  2. pom.xml
  3. src/
README.md

Apache Sling NoSQL Generic Resource Provider

Generic implementation of a Sling ResourceProvider that helps writing ResourceProviders using NoSQL databases as persistence.

The generic implementation helps mapping the resource data to document-oriented key-value NoSQL databases like MongoDB or Couchbase.

Features:

  • Defines a simplified “NoSqlAdapter” concept that is implemented for each NoSQL database. It boils down to simple get/put/list operations. Query support is optional.
  • Complete implementation of Resource, ResourceProvider, ResourceProviderFactory and ValueMap based on the NoSqlAdapter
  • “Transaction management” of Sling CRUD (commit/revert methods) is implemented
  • ValueMap supports String, Integer, Long, Double, Date, Calendar and InputStream/byte[] (binary data) and arrays of them. Date/Calendar and binary data is serialized to a string before storing, so the NoSQL databases have not to support them directly.
  • Sends resource notifications via OSGi EventAdmin
  • Provides a “tests” JAR that can be used for integration tests with NoSQL databases to test the own adapter implementation
  • Can be mounted as root provider without any JCR at all