Jump to: navigation, search

Mangrove

Mangrove - SOA Modeling Framework

Mangrove is a framework for integrating design and runtime artifacts that are being created or used in different Eclipse editors and runtimes related to SOA. It is a subproject of the SOA top-level project.

This pages serves as starting point for discussing developments and extensions for Mangrove. For instance, new Mangrove Branches should have a short description here.

Mangrove code can be found under the Eclipse SVN repository at http://dev.eclipse.org/svnroot/soa/org.eclipse.mangrove/

Anonymous access to the SVN:

   host: dev.eclipse.org
   repository: /svnroot/soa/org.eclipse.mangrove
   method: http

Committer access to the SVN:

   host: dev.eclipse.org
   repository: /svnroot/soa/org.eclipse.mangrove
   method: svn+ssh

Code structure

The various Mangrove plugins are organized in different modules according to their purpose. The modules are:

  • org.eclipse.soa.mangrove.core - the EMF core plugins
  • org.eclipse.soa.mangrove.branches - the Transformation Plug-ins (initial existing code in STP-IM): contain the logic required to move and convert information between editors, tools and the core metamodel instance.
  • org.eclipse.soa.mangrove.builder - ensures the constant updating of SOA artifacts in the core as well as in the corresponding editors and tools (e.g. when saving a diagram, update the appropriate artifacts in the core while also enabling the update of the corresponding artifact in related editors or tools).
  • org.eclipse.soa.mangrove.leaves - the Editor Extensions (initial existing code in STP-IM), extensions and improvements to editors and tools for adding Mangrove-specific functionality at design time (e.g. views allowing the enrichment of certain SOA elements in the core or configuration menus for customizing the amount of information to be moved to/from the core).
  • org.eclipse.soa.mangrove.roots - the Runtime Connections: plugins for moving information to and from runtime tools and repositories when needed in order to have a "living" core, providing a good reality snapshot. This can be useful when diagrams are out of sync or when aggregated monitoring information is required to update graphical elements. Also for generating deployment information in a common format.