-
Notifications
You must be signed in to change notification settings - Fork 17
NeoEMF blueprints connector uses the Tinkergraph representation as its default serialization mechanism. To enable Neo4j-based storage you need to provide a specific option to the Resource#save()
method using the dedicated BlueprintsNeo4jOptionBuilder
:
neoEMFResource.save(BlueprintsNeo4jOptionBuilder.newBuilder().noOption());
Note that this builder can be used to set Blueprints generic options as well as Neo4j specific options.
Yes, you can save and load a NeoEMF model in your database by specifying its path in the URI used to create a resource:
Resource neoEMFResource = resourceSet.createResource(<uri_to_my_database>);
Please note that your database has to be supported by NeoEMF. Existing non-modeling data (such as your own application data, manually stored information, etc) will not be accessible through the NeoEMF API.
Warning: using an existing database with the blueprints-neo4j connector will lock the database and reject any new connection. This is caused by the embedded Neo4j instance that allows only one connection per database.
Not for now, the blueprints-neo4j connector uses an embedded Neo4j instance to save models that cannot be accessed and set by the client application. Since we received several questions related to this feature we put it on top of our backend integration todo list!
NeoEMF is designed to be compatible with existing generated EMF code. However, the adapter
which is in charge of the transformation from standard EMF objects to NeoEMF objects has not been
implemented yet and an UnsupportedOperationException
is thrown.
A workaround is to create a new EMF Generator Model using NeoEMF importer and generate the code from it. The adapter implementation will be part of a next release.