Skip to content

A set of examples for ModeShape, which is a lightweight, fast, pluggable, open-source, federating JCR implementation that can unify content from multiple systems, including files systems, databases, data grids, other repositories, etc.

License

ModeShape/modeshape-examples

 
 

Repository files navigation

The ModeShape project

ModeShape is an open source implementation of the JCR 2.0 (JSR-283) (aka, 'JCR') specification and standard API. To your applications, ModeShape looks and behaves like a regular JCR repository. Applications can search, query, navigate, change, version, listen for changes, etc. But ModeShape can store that content in a variety of back-end stores (including relational databases, Infinispan data grids, JBoss Cache, etc.), or it can access and update existing content from other kinds of systems (including file systems, SVN repositories, JDBC database metadata, and other JCR repositories). ModeShape's connector architecture means that you can write custom connectors to access any kind of system. And ModeShape can even federate multiple back-end systems into a single, unified virtual repository.

For more information on ModeShape, including getting started guides, reference guides, and downloadable binaries, visit the project's website at http://www.modeshape.org or follow us on our blog or on Twitter. Or hop into our IRC chat room and talk our community of contributors and users.

The official Git repository for the project is also on GitHub at http://github.com/ModeShape/modeshape.

Examples

This Git repository contains examples showing how to use ModeShape within your applications. Each example is a self-contained Maven project that is ready to use.

To run the examples, simply clone the repository:

$ git clone git://github.com/ModeShape/modeshape-examples.git
$ cd modeshape-examples

Then use Maven to build all of the examples (and run any unit tests):

$ mvn clean install -s settings.xml

or you can build an individual example. For instance:

$ cd modeshape-embedded-example
$ mvn clean install -s settings.xml

See this ModeShape community article for help on how to install Maven 3.

By default, these examples use the latest released version of ModeShape, but you can easily build them to use earlier versions (as long as the examples don't use APIs or configuration options that were introduced in subsequent versions):

$ mvn clean install -s settings.xml -Dmodeshape.version=3.2.0.Final

Looking for ModeShape 2.x examples?

The code on the 'master' branch works against the latest ModeShape 3.x release, but a different branch contains the examples for use with ModeShape 2.x. To get to those, use the Git checkout command to switch branches:

$ git checkout 2.x

and then use the Maven command to build the examples (same as above).

Need help?

ModeShape is open source software with a dedicated community. If you have any questions or problems, post a question in our user forum or hop into our IRC chat room and talk our community of contributors and users.

Contribute an example

We're always looking for good, easy to follow examples. If you've written one and would like to help, simply use GitHub's Fork and Pull-Request techniques.

  1. Use the "Fork" button at the top of this page on GitHub to create your own fork.
  2. Clone your fork:
    $ git clone git@github.com:<you>/modeshape-examples.git
    $ cd modeshape-examples
    $ git remote add upstream git://github.com/ModeShape/modeshape-examples.git
  1. Create a topic branch
    $ git checkout -b <branch-name>
  1. Make your changes
  2. When all of the examples (including yours) build, commit to that branch
    $ git commit .
  1. Push your commit(s) to your fork on GitHub
    $ git push origin <branch-name>
  1. On GitHub.com, go to your fork and switch branches to your topic branch, press the 'Pull Request' button, and fill out the form with the details.

We'll then review your submission and, if it works and builds, merge it into the examples repository.

About

A set of examples for ModeShape, which is a lightweight, fast, pluggable, open-source, federating JCR implementation that can unify content from multiple systems, including files systems, databases, data grids, other repositories, etc.

Resources

License

Stars

Watchers

Forks

Packages

No packages published