Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Modeling » EMF "Technology" (Ecore Tools, EMFatic, etc)  » [EMFStore] Looking for the API Javadoc
[EMFStore] Looking for the API Javadoc [message #1105798] Tue, 10 September 2013 09:37 Go to next message
Alan DW is currently offline Alan DW
Messages: 105
Registered: March 2012
Senior Member
Hello everyone,

I've just downloaded EMFStore from the update site and tried the examples. It seems to fit my use-case very well. However, sadly my Eclipse is unable to find any attached source or Javadoc for any of the EMFStore classes (e.g. ESWorkspace, ESLocalProject and so on). Is there any location where I may get these? Right now, I don't even have the names of the parameters of the API methods (it just says "arg0", "arg1" etc.), which really makes things difficult.


Thanks,


Alan
Re: [EMFStore] Looking for the API Javadoc [message #1106554 is a reply to message #1105798] Wed, 11 September 2013 08:44 Go to previous messageGo to next message
Maximilian Koegel is currently offline Maximilian Koegel
Messages: 196
Registered: July 2009
Senior Member
Hi Alan,

thank you for pointing this out, it is a build misconfiguration. Sorry
for the inconvenience!
We will fix this with the next service release. One of our committers is
reconfiguring the build today. So a build should be available soon. I am
really sorry, but in the meantime checking out the source is the only
option: http://eclipse.org/emfstore/gettinginvolved.html
I will let you know once the new build is available.
Let me know if I can help with anything else concerning EMFStore.
Feedback is very welcome!

Best regards,
Maximilian

Am 10.09.2013 11:37, schrieb Alan DW:
> Hello everyone,
>
> I've just downloaded EMFStore from the update site and tried the
> examples. It seems to fit my use-case very well. However, sadly my
> Eclipse is unable to find any attached source or Javadoc for any of the
> EMFStore classes (e.g. ESWorkspace, ESLocalProject and so on). Is there
> any location where I may get these? Right now, I don't even have the
> names of the parameters of the API methods (it just says "arg0", "arg1"
> etc.), which really makes things difficult.
>
>
> Thanks,
>
>
> Alan


--
Maximilian Kögel

Get Professional Eclipse Support: http://eclipsesource.com/munich
Re: [EMFStore] Looking for the API Javadoc [message #1106579 is a reply to message #1106554] Wed, 11 September 2013 09:24 Go to previous messageGo to next message
Alan DW is currently offline Alan DW
Messages: 105
Registered: March 2012
Senior Member
Hi,

okay, I'll wait for the Javadoc, thanks a lot Smile

Regarding feedback: I think the API is beautifully clean and "simple", given the rather complex task at hand - I felt right at home with it from the beginning since it picks up familiar terms such as "update", "share", "commit" and so on which is always good. Allowing progress monitors for most tasks is handy too when it comes to GUI and progress bars. And finally, picking up the eclipse-style "workspace/project/content" model was another good decision because it makes perfectly clear where which piece of metadata resides. The examples are really well documented and helped me a *lot* to get started. Altogether, I really like what I've seen so far about EMFStore!


However, I'd have some more questions that were not answered in the examples or the tutorials, so if you don't mind, I won't open another thread and ask right away Smile


1) EMFStore is easy to use as long as it is in-memory. But what about persisting the entire server state to disk? After all, when terminating the entire application, at the next start-up I don't want to create a *new* server (state) with new projects, I just want to connect back to the ones that were stored in the previous session. How is that done? I've been looking for a "persist" and "loadFromFile" or other method, but couldn't find any (again, Javadoc would be handy here Smile). And when the server state is saved to disk or loaded from disk, where can I specify to/from which filepath that should be?


2) EMFStore seems to make heavy use of certain "global" preferences files - at least that's what I can tell from the start-up log. I'm developing a distributed application where it would make sense to have actually *multiple* EMFStore instances running. In the real application scenario, they would be running on physically different machines, so that's not a problem there, but in development, I would have to run them all on the same machine simultaneously. Will they "get along" with each other or are there problems to be expected?


3) Due to the distributed nature of my application scenario, I cannot share the very same model elements across all applications. Sometimes for example I have to serialize them to XMI at the server, send them over network to the client, which re-builds the model from the XMI. So there will be many cases where model elements are not "equal" with respect to Java's " == " operator, but they *are* equal with respect to their type and their field contents. Is EMFStore capable of recognizing that in such a case no actual model "change" was performed?



Thank you for your support!


Alan
Re: [EMFStore] Looking for the API Javadoc [message #1106737 is a reply to message #1106579] Wed, 11 September 2013 13:33 Go to previous messageGo to next message
Maximilian Koegel is currently offline Maximilian Koegel
Messages: 196
Registered: July 2009
Senior Member
Hi Alan,

> Regarding feedback: I think the API is beautifully clean and "simple",
> given the rather complex task at hand - I felt right at home with it
> from the beginning since it picks up familiar terms such as "update",
> "share", "commit" and so on which is always good. Allowing progress
> monitors for most tasks is handy too when it comes to GUI and progress
> bars. And finally, picking up the eclipse-style
> "workspace/project/content" model was another good decision because it
> makes perfectly clear where which piece of metadata resides. The
> examples are really well documented and helped me a *lot* to get
> started. Altogether, I really like what I've seen so far about EMFStore!
Thank you very much, this comment is really very encouraging! BTW, great
strategy to receive excellent support in the news group ;)...
Also now I am thinking about adding testimonials to the Webpage ;), can
I add yours?

> However, I'd have some more questions that were not answered in the
> examples or the tutorials, so if you don't mind, I won't open another
> thread and ask right away :)
Sure, there is always a however but after this prelude...;)

> 1) EMFStore is easy to use as long as it is in-memory. But what about
> persisting the entire server state to disk? After all, when terminating
> the entire application, at the next start-up I don't want to create a
> *new* server (state) with new projects, I just want to connect back to
> the ones that were stored in the previous session. How is that done?
> I've been looking for a "persist" and "loadFromFile" or other method,
> but couldn't find any (again, Javadoc would be handy here :)). And when
> the server state is saved to disk or loaded from disk, where can I
> specify to/from which filepath that should be?
I guess you followed the Getting-Started tutorial and started the server
from within the client, right? The server data is already being stored
on disk, by default to <userhome>/.emfstore/server/profiles/default. For
details about storage please see:
http://eclipsesource.com/blogs/tutorials/emfstore-server-setup/#configure
>
> 2) EMFStore seems to make heavy use of certain "global" preferences
> files - at least that's what I can tell from the start-up log. I'm
> developing a distributed application where it would make sense to have
> actually *multiple* EMFStore instances running. In the real application
> scenario, they would be running on physically different machines, so
> that's not a problem there, but in development, I would have to run them
> all on the same machine simultaneously. Will they "get along" with each
> other or are there problems to be expected?
Every server instance can be configured with an es.properties file. It
is stored in the server home, which is by default in
<userhome>/.emfstore/server/profiles/default and can be configured as
mentioned in
http://eclipsesource.com/blogs/tutorials/emfstore-server-setup/#configure.
If they are configured to different directories (in case of XMI storage)
for different server instances they will "get along". The most simple
way to run servers in different directories is to add the start-up
command-line argument "-profile <some_name>", see
http://eclipsesource.com/blogs/tutorials/emfstore-server-setup/#configure also.

> 3) Due to the distributed nature of my application scenario, I cannot
> share the very same model elements across all applications. Sometimes
> for example I have to serialize them to XMI at the server, send them
> over network to the client, which re-builds the model from the XMI. So
> there will be many cases where model elements are not "equal" with
> respect to Java's " == " operator, but they *are* equal with respect to
> their type and their field contents. Is EMFStore capable of recognizing
> that in such a case no actual model "change" was performed?
Are you using EMFStore to distribute your models among the clients? If
not, why not? ;) Maybe I do not fully understand you scenario, can you
provide more detail?

Cheers,
Maximilian

P.S.: first build (not yet tested, but will test later) with source code
is now available at
https://hudson.eclipse.org/hudson/job/emf-emfstore-integration-tycho/1038/artifact/git/releng/org.eclipse.emf.emfstore.p2repository/*zip*/org.eclipse.emf.emfstore.p2repository.zip
If you are not in a hurry I would recommend to wait until we announce
the release on Twitter:
http://eclipse.org/emfstore/contact.html

>
>
>
> Thank you for your support!
>
>
> Alan


--
Maximilian Kögel

Get Professional Eclipse Support: http://eclipsesource.com/munich
Re: [EMFStore] Looking for the API Javadoc [message #1106881 is a reply to message #1106737] Wed, 11 September 2013 17:11 Go to previous messageGo to next message
Maximilian Koegel is currently offline Maximilian Koegel
Messages: 196
Registered: July 2009
Senior Member
Build with sources test with Kepler is ready here:
https://hudson.eclipse.org/hudson/job/emf-emfstore-integration-tycho/1041/artifact/git/releng/org.eclipse.emf.emfstore.p2repository/target/repository/*zip*/repository.zip
This is probably the 1.0.1 service release, scheduled for Monday
September 16th.

Cheers,
Maximilian


Am 11.09.2013 15:33, schrieb Maximilian Koegel:
> Hi Alan,
>
>> Regarding feedback: I think the API is beautifully clean and "simple",
>> given the rather complex task at hand - I felt right at home with it
>> from the beginning since it picks up familiar terms such as "update",
>> "share", "commit" and so on which is always good. Allowing progress
>> monitors for most tasks is handy too when it comes to GUI and progress
>> bars. And finally, picking up the eclipse-style
>> "workspace/project/content" model was another good decision because it
>> makes perfectly clear where which piece of metadata resides. The
>> examples are really well documented and helped me a *lot* to get
>> started. Altogether, I really like what I've seen so far about EMFStore!
> Thank you very much, this comment is really very encouraging! BTW, great
> strategy to receive excellent support in the news group ;)...
> Also now I am thinking about adding testimonials to the Webpage ;), can
> I add yours?
>
>> However, I'd have some more questions that were not answered in the
>> examples or the tutorials, so if you don't mind, I won't open another
>> thread and ask right away :)
> Sure, there is always a however but after this prelude...;)
>
>> 1) EMFStore is easy to use as long as it is in-memory. But what about
>> persisting the entire server state to disk? After all, when terminating
>> the entire application, at the next start-up I don't want to create a
>> *new* server (state) with new projects, I just want to connect back to
>> the ones that were stored in the previous session. How is that done?
>> I've been looking for a "persist" and "loadFromFile" or other method,
>> but couldn't find any (again, Javadoc would be handy here :)). And when
>> the server state is saved to disk or loaded from disk, where can I
>> specify to/from which filepath that should be?
> I guess you followed the Getting-Started tutorial and started the server
> from within the client, right? The server data is already being stored
> on disk, by default to <userhome>/.emfstore/server/profiles/default. For
> details about storage please see:
> http://eclipsesource.com/blogs/tutorials/emfstore-server-setup/#configure
>>
>> 2) EMFStore seems to make heavy use of certain "global" preferences
>> files - at least that's what I can tell from the start-up log. I'm
>> developing a distributed application where it would make sense to have
>> actually *multiple* EMFStore instances running. In the real application
>> scenario, they would be running on physically different machines, so
>> that's not a problem there, but in development, I would have to run them
>> all on the same machine simultaneously. Will they "get along" with each
>> other or are there problems to be expected?
> Every server instance can be configured with an es.properties file. It
> is stored in the server home, which is by default in
> <userhome>/.emfstore/server/profiles/default and can be configured as
> mentioned in
> http://eclipsesource.com/blogs/tutorials/emfstore-server-setup/#configure.
> If they are configured to different directories (in case of XMI storage)
> for different server instances they will "get along". The most simple
> way to run servers in different directories is to add the start-up
> command-line argument "-profile <some_name>", see
> http://eclipsesource.com/blogs/tutorials/emfstore-server-setup/#configure also.
>
>> 3) Due to the distributed nature of my application scenario, I cannot
>> share the very same model elements across all applications. Sometimes
>> for example I have to serialize them to XMI at the server, send them
>> over network to the client, which re-builds the model from the XMI. So
>> there will be many cases where model elements are not "equal" with
>> respect to Java's " == " operator, but they *are* equal with respect to
>> their type and their field contents. Is EMFStore capable of recognizing
>> that in such a case no actual model "change" was performed?
> Are you using EMFStore to distribute your models among the clients? If
> not, why not? ;) Maybe I do not fully understand you scenario, can you
> provide more detail?
>
> Cheers,
> Maximilian
>
> P.S.: first build (not yet tested, but will test later) with source code
> is now available at
> https://hudson.eclipse.org/hudson/job/emf-emfstore-integration-tycho/1038/artifact/git/releng/org.eclipse.emf.emfstore.p2repository/*zip*/org.eclipse.emf.emfstore.p2repository.zip
> If you are not in a hurry I would recommend to wait until we announce
> the release on Twitter:
> http://eclipse.org/emfstore/contact.html
>
>>
>>
>>
>> Thank you for your support!
>>
>>
>> Alan
>
>


--
Maximilian Kögel

Get Professional Eclipse Support: http://eclipsesource.com/munich
Re: [EMFStore] Looking for the API Javadoc [message #1107355 is a reply to message #1106737] Thu, 12 September 2013 09:30 Go to previous message
Alan DW is currently offline Alan DW
Messages: 105
Registered: March 2012
Senior Member
Hi.

Maximilian Koegel wrote on Wed, 11 September 2013 09:33

Thank you very much, this comment is really very encouraging! BTW, great
strategy to receive excellent support in the news group Wink...
Also now I am thinking about adding testimonials to the Webpage Wink, can
I add yours?


This has nothing to do with strategy, it's just my humble opinion. Since I've been working on a (conceptionally different) model repository myself, I know how hard the challenge is that you faced. So I give credit where credit is due Smile
If you want to add my testimonial, go ahead, it's okay for me! However, the question is how much a testimonial from a computer science master student is worth Wink




Maximilian Koegel wrote on Wed, 11 September 2013 09:33
I guess you followed the Getting-Started tutorial and started the server
from within the client, right?


Guilty as charged Wink


Maximilian Koegel wrote on Wed, 11 September 2013 09:33
The server data is already being stored
on disk, by default to <userhome>/.emfstore/server/profiles/default. For
details about storage please see:
http://eclipsesource.com/blogs/tutorials/emfstore-server-setup/#configure


Ah okay, that's really a helpful link right there. I must have missed it somehow when I was searching for this information on the homepage. I'll read it right away, thanks Smile


Maximilian Koegel wrote on Wed, 11 September 2013 09:33
Every server instance can be configured with an es.properties file. It
is stored in the server home, which is by default in
<userhome>/.emfstore/server/profiles/default and can be configured as
mentioned in
http://eclipsesource.com/blogs/tutorials/emfstore-server-setup/#configure.
If they are configured to different directories (in case of XMI storage)
for different server instances they will "get along". The most simple
way to run servers in different directories is to add the start-up
command-line argument "-profile <some_name>", see
http://eclipsesource.com/blogs/tutorials/emfstore-server-setup/#configure also.


Is there also a Java API-based way to accomplish this programatically when creating a new ESServer instance? I noticed that there is a lot of documentation about EMFStore from the "user perspective", but apart from the two example programs (which are very decent) I wasn't able to find much information from the developer perspective. But maybe I was just looking in the wrong place ^_^'


EDIT: I've just read the link to your blog and checked the extension points - I can see how to configure everything from the API now Smile


Maximilian Koegel wrote on Wed, 11 September 2013 09:33
Are you using EMFStore to distribute your models among the clients? If
not, why not? Wink Maybe I do not fully understand you scenario, can you
provide more detail?


I think it's easier if I just try it out myself and report back if it worked or not. I'll wait for the 1.0.1 service release to do that since I have plenty of other "construction sites" in my project that also demand attention, so I can easily wait for that release Smile Following you on Twitter!


Thanks for your answers!



Alan

[Updated on: Thu, 12 September 2013 09:42]

Report message to a moderator

Previous Topic:EMFCP is crashing the eclipse workspace
Next Topic:How to find my Classes in the diagram editor
Goto Forum:
  


Current Time: Wed Sep 17 07:39:57 GMT 2014

Powered by FUDForum. Page generated in 0.03931 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software