Working with redviews located in an EMFStoreServer is different from working with xmi based views.
The EMFStore allows redview to store its redviews in a model repository which is similar to cvs or svn. Mostly you have to perform the same actions as in these systems.
EMFStore is divided into 2 parts.
- EMFStore server
Redviews can be stored in the emfstore and checked out into a locally workspace. After the checkout all contained redviews are stored in the local workspace. There you can open them, change them, commit your changes to the emfstore server and update locally projects. All these actions are default actions provided by unicase.
Configure the client
If you start to configure your client you should know, that each eclipse instance must have it’s own emfstore workspace (Further called workspace). If more than one eclipse instance is operating on the same local workspace inconsistent data could be produced.
Therefore redview offers an -vmarg argument which allows you to specify the workspace location in the application link.
-vmargs -Dredview.emfstore.wsLocation=<WORKSPACE_LOCATION>. In my case C:/temp/ws5 on win.
If a eclipse instances is launched with this vmarg, the local workspace is created in this folder.
Connect an EMFStore
Unicase offers an view callen “EMFStore browser”. This view should be used to create a new connection.
Open it and click “new repository”. Ensure that your emfStoreServer is running.
Then fill the fields with the informations required to connect to your server.
The settings above are required to connect to the server described under EMFStore server.
If the connection was created, you can login. Select the repository, right click, login.
The user super and password super are defaults to login to the server described under EMFStore server.
For detail informations about configure EMFStore see http://code.google.com/p/unicase/wiki/Setup.
If the server is connected, you will see a list of all projects contained as the servers childs.
Use checkout to checkout this project into the local workspace.
The unicase navigator allows you to process local models in your local workspace. It shows you all outchecked projects and contents. It is the main view to work with redviews.
Operations in UnicaseNavigator
Operations on the project:
- “Commit project” commits all changes to the server
- “Update project” updates the local project to servers HEAD version
- “Show history” shows all version in the server and allows to check out them.
- “Delete project” deletes the local project. The server project will not be removed.
- “Other -> Import -> Import model element” allows you to import redviews from the workspace or filesystem.
Operations on redviews:
- “Delete” removes the redview from the project.
- “Open redview editor” opens the redview in the designer.
Sample screenshot example:
Open designer from local workspace.
All changes from the server will be applied to the redview.
Do some changes
The redview and project get an dirty state marker.
Commit the changes
You can see the commit dialog.
After pressing OK the changes are stored in the EMFStore server.
EMFStore provides a backchannel implementation which allows redview to add an project changed listener. This listener will be notified if changes are commited and the project in the local workspace will be updated. So the redviews opened in the designer or a rcp app will reflect the changes directly.
If the backchannel should be active
emfstore.startup.post.loadlistener = true has to be specified in the EMFStores es.properties.