Skip to content
krequena edited this page Jan 3, 2019 · 8 revisions

What is EAModelTransfer

EAModelTransfer is an open-source Java library which aims to provide a high-performant solution to an specific commercial product (Sparx Systems Enterprise Architect).

Specifically, it provides a way to perform Model Transfer operations that are not supported by the product API.

Why an open-source project

We believe in the open-source collaboration model, this is, we will gladly welcome both your suggestions and your code to keep improving this library.

The Model Transfer feature

Enterprise Architect works with EAP and EAPX files, which are structured internally as databases. It also can work directly with a plethora of DBMS, such as Microsoft SQLServer, Oracle Database, MySQL, Firebird and PostgreSQL.

The software provides a way to perform data migration between such files and databases, but this feature is not published in the API, so there is virtually no way to perform it programmatically.

How does this library work

The feature provided by this library allows to transfer the content of an Enterprise Architect database to another without using its API. This provides several advantages:

  • Code is faster, since it does not need to invoke objects over COM.
  • Works in headless mode.
  • Authentication is performed at database level.
  • No extra model authentication/permissions are needed.
  • All 4 transfer models (EAP->EAP, EAP->DBMS, DBMS->EAP and DBMS->DBMS) are supported.
  • Easy usage - it's just a Maven reference.
  • JDBC-agnostic, so any JDBC driver can be used.

Take a look at the documentation for usage explanation and examples.

Maven dependency

This library is published in Sonatype's Maven Central Repository, and can be imported to your project by using the following dependency reference:

<dependency>
  <groupId>pro.requena.ea</groupId>
  <artifactId>modeltransfer</artifactId>
  <version>1.0</version>
</dependency>

Changelog

Version 1.0 - January 3rd, 2019

  • Fix: Logging system changed to SLF4J.
  • Fix: Remove unused SQLServer JDBC driver dependency an reference.

Version 0.9 - November 16th, 2018

  • Fix: EAP files are left no longer open.

Version 0.1 - November 15th, 2018

  • Initial release to test integration.

Disclaimer

The vendors cited in this project are named only to maintain context.

Sparx Systems references from this project are trademarks of Sparx Systems Pty Ltd. Check https://sparxsystems.com/legal.html for more information.