Skip to content

Commit

Permalink
add and fix package-info in core, and overview resources
Browse files Browse the repository at this point in the history
  • Loading branch information
yvrng committed Jan 16, 2017
1 parent 5c95dc1 commit b2316b0
Show file tree
Hide file tree
Showing 6 changed files with 44 additions and 46 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
*/

/**
* <b>TODO:</b> Provides...
* Provides the base classes that extends EMF API to enable lazy-loading of model elements.
*/

package fr.inria.atlanmod.neoemf.core;
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
*/

/**
* <b>TODO:</b> Provides...
* Provides all NeoEMF features.
*/

package fr.inria.atlanmod.neoemf.core;
package fr.inria.atlanmod.neoemf;
42 changes: 0 additions & 42 deletions overview.html

This file was deleted.

1 change: 0 additions & 1 deletion pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -418,7 +418,6 @@
<notimestamp>true</notimestamp>
<nosince>true</nosince>
<author>false</author>
<overview>${project.basedir}/overview.html</overview>
<excludePackageNames>
fr.inria.atlanmod.neoemf.data.berkeleydb*; <!-- Experimental functionality -->
fr.inria.atlanmod.neoemf.tests*;
Expand Down
Binary file added src/main/javadoc/doc-files/overview.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
41 changes: 41 additions & 0 deletions src/main/javadoc/overview.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
<body>
<h1>NeoEMF : A Multi-database Model Persistence Framework.</h1>

<p>The figure below describes the integration of NeoEMF in the Eclipse-based EMF ecosystem,
the most popular modeling framework nowadays. Modelers typically access a model using
<i>Model-based Tools</i>, which provide high-level modeling features such as a graphical
interface, interactive console, or query editor. These features internally rely on EMF's
<i>Model Access API</i> to navigate models, perform CRUD operations, check constraints, etc.
At its core, EMF delegates the operations to a persistence manager using its
<i>Persistence API</i>, which is in charge of the (de)serialization of the model.
The NeoEMF <i>core</i> component is defined at this level, and can be registered as a
persistence manager for EMF, replacing, for instance, the default XMI persistence manager.
This design makes NeoEMF both transparent to the client-application and EMF itself,
that simply delegates the calls without taking care of the actual storage.</p>

<p>Once the NeoEMF <i>core</i> component has received the request of the modeling operation
to perform, it forwards the operation to the appropriate database driver (<i>MapDB</i>, <i>Blueprints</i>,
or <i>HBase</i>), which is in charge of handling the low-level representation of the model.
These connectors translate modeling operations into <i>Backend API</i> calls, store the results,
and reify database records into EMF <i>EObjects</i> when needed. NeoEMF also embeds a set of
default caching strategies that are used to improve performance of client applications, and can
be configured transparently at the EMF API level.</p>

<div style="text-align: center;"><img src="doc-files/overview.png" alt="NeoEMF Architecture Overview"></div>

<div>
<p>Each backend is provided in a dedicated Eclipse plugin. you can navigate through the documentation
to have a complete overview of backend-specific classes and how they interact with the <i>core</i> component.
NeoEMF provides 4 database adapters for now:</p>
<ul>
<li>Blueprints - TinkerGraph: the default graph database embedded in Blueprints</li>
<li>Blueprints - Neo4j: Neo4j graph database under the Blueprints API</li>
<li>MapDB: an in-memory/on-disk Map database</li>
<li>HBase: a distributed Column database</li>
</ul>
</div>

<p>Sources are available on <a href="https://github.com/atlanmod/NeoEMF">GitHub</a>. Further informations
can be found on <a href="www.neoemf.com">NeoEMF website</a>.</p>

</body>

0 comments on commit b2316b0

Please sign in to comment.