Book a Demo

Author Topic: EA Automation Interface AddIn reference guide  (Read 10574 times)

Guillaume

  • EA Practitioner
  • ***
  • Posts: 1405
  • Karma: +42/-2
    • View Profile
    • www.umlchannel.com
EA Automation Interface AddIn reference guide
« on: March 31, 2011, 06:03:30 am »
Hi

I set up my project in Visual Studio to create a new EA Addin
I have access to the reference classes and methods definitions but there is a lack of details on each of them (in the Object Browser > Interopt.EA

Is there any document that explains what each class and method does?
For instance, how do I know how to use RepositoryClass.SQLQuery method?

thanks
Guillaume

Blog: www.umlchannel.com | Free utilities addin: www.eautils.com


stao

  • EA User
  • **
  • Posts: 137
  • Karma: +0/-0
    • View Profile
Re: EA Automation Interface AddIn reference guide
« Reply #1 on: March 31, 2011, 07:57:24 am »
Hi

i would recommend 2 things.
Use the EA Help. A better docu of the API doesnt exist imho.
The other thing is to use the search function of the forum.
There are many code fragments where you (hopefully) can find
the using of you requested things.

PS.
http://www.sparxsystems.com/enterprise_architect_user_guide/8.0/automation_and_scripts/repository3.html

Guillaume

  • EA Practitioner
  • ***
  • Posts: 1405
  • Karma: +42/-2
    • View Profile
    • www.umlchannel.com
Re: EA Automation Interface AddIn reference guide
« Reply #2 on: April 05, 2011, 07:24:30 pm »
thanks for the info

The following link contains everything I was looking for : http://www.sparxsystems.com/enterprise_architect_user_guide/8.0/automation_and_scripts/automationinterface.html

Is there any information about the DLLs that are available - my understanding is as follows :
- Interop.EA.dll is the EA API interoperable using C#
- SSJavacom.dll (+ associated eaapi.jar) is connected to Interop.EA.dll to provide access using Java

If the above is correct, it means that calls using Interop.EA.dll and C# would more more native so any performance issue using the Java API could be resolved using C#?


Guillaume

Blog: www.umlchannel.com | Free utilities addin: www.eautils.com


Geert Bellekens

  • EA Guru
  • *****
  • Posts: 13523
  • Karma: +574/-33
  • Make EA work for YOU!
    • View Profile
    • Enterprise Architect Consultant and Value Added Reseller
Re: EA Automation Interface AddIn reference guide
« Reply #3 on: April 06, 2011, 01:50:52 pm »
Guillaume,

I think the above is correct.
While there might be a small performance difference between Java and C# add-ins, I'm afraid it won't make a "real" difference.
Most performance issues when writing addins for EA stem from the way EA communicates with the database. There are instances where I've recorded hundreds of distinct database calls per second.

If you have specific performance issues you could post those issues in the forum. A lot of us have already worked out some workarounds for the slow api.

Geert

Eve

  • EA Administrator
  • EA Guru
  • *****
  • Posts: 8110
  • Karma: +119/-20
    • View Profile
Re: EA Automation Interface AddIn reference guide
« Reply #4 on: April 07, 2011, 08:25:53 am »
Quote
... it means that calls using Interop.EA.dll and C# would more more native ...
Actually, using the automation interface from either .Net or Java are both using a wrapper around the COM interface that EA provides.  I don't know the inner workings of the .Net wrapper, but I know the Java wrapper will only have a very small impact on performance, probably most significant when converting formats for large strings.

If you have something written in Java I wouldn't try porting to C# for performance reasons.  You will be disappointed.

Aaron B

  • EA Administrator
  • EA User
  • *****
  • Posts: 941
  • Karma: +18/-0
    • View Profile
Re: EA Automation Interface AddIn reference guide
« Reply #5 on: April 07, 2011, 10:14:49 am »
Further to Simon M's comments - The downside to Java however is that you can't use it to write an EA add-in or connect to a running instance of EA at this time.