EMF crafting wonders


Some days ago, while discussing with a colleague, very clever at electronics I must say,  I was asking myself how to easily achieve command handling with queues. The goal was to asynchronously post/consume commands to pilot RGB LEDs on a card connected by serial USB connection

It came to my mind, that I would have to model something first before coding anything ... ;-)

Doing so, I went to think on how to design an application possibly having several "threads" concurrently processing commands posted and/or consumed in queues in transmission (Tx) or reception (Rx).

Here is what I finally got after some time :


The central piece is "CmdEngine" owning Qx/Rx queues as well as a list of events, actually kind of recording what temporally happened in the system.

Okay, this is a model ! Where are the "threads", "synchronized", "volatile" ? 

I know, and in first instance, let me tell you that I prefer Jobs to plain threads. As you can see in EngineClient, we introduced an attribute which is actually the core of commands processing ... !

Trust me or not, in conjunction with EMF Transaction and EMF Query, Jobs are simply a very simple and very efficient solution for creating asynchronous applications in Eclipse. 

Having simply using code generated from previous model and having built a simple framework using EMF Transaction, GEF and BIRT, I came to build this application in 3 week-ends (A video had been a better demo for something moving) :


This application allows to monitor commands posted on queues all in live !

I created a sourceforge project : xqz.sf.net (xqz is for "Cross Queues"). I also made an RCP application available here. (Thank you PDE Build and JUnit !)

I'm not sure whether or not this could become an Eclipse technology project, but I had a lot of fun to craft all this MDD/EMF(T) stuff.

Eclipse modeling is just so awesome to me sometimes !

Next step record everything thanks to CDO (fingers crossed !)

regards, 

-- Lucas

EMF Meta Tooling : Textual Search/Replace Infrastructure Generation

Dear Community,

for some time now, I have been busy developing an Ecore Search "meta tooling" framework in my "garage" ... ;-)

Eclipse 3.4M7 is coming & I am reasonably happy to announce that a cool feature had been stabilized : Textual Search Infrastructure Generation For Arbitrary Ecore Models (Aka EMF Search Codegen).

This feature provides code generation facilities to produce custom search pages for arbitrary EMF models.

For instance, universally known EMF project MoviesDb.genmodel example can have its EMF Search infrastructure generated/customized thanks to a wizard:



producing following Eclipse Search page contribution :



Allowing to perform textual queries on EMF Models and replace as well :


How great, isn't it ? ;-)

Intrepid developers would certainly be more than happy to grab the code from CVS or just play with it from our latest build.

For more information you can refer to our "Custom EMF Search Infrastructure Generation" Quick Start Guide (Screencast Version).

Hope all this stuff will help developers in EMF space by giving possibility to get a quick access to customizable search engines and UI integrations.

Go Eclipse, Go Modeling !

NB: for those interested on the movie in the query tab, see this video. I was so sure these tomatoes was coming from Jupiter... crazy me ;-)

EMF Search : new & noteworthy for M5

M5 features:

EMF GenModel Search

- GenModel Textual Search Page

GenModel Search Page

- GenModel Result Page Specific Actions

  • Model/Edit/Editor/Test Code Generation Actions

  • Navigation To Model Java Code
  • Navigation To Ecore Element


- Generic Regex Replace (Ecore/UML2)


- Ecore/OCL Completion Proposal



M4 & Older features:

- Ecore OCL & Textual Query Search Results

- UML2 OCL/Textual Query Search Results


- Navigation To Legacy Editors & Ecore Tools Diagrams

- Various extension points : see CVS ^^

EMF Search : UML2 search/replace basic use cases

Hi community !

Just finished to implement core APIs for meta search/replace of EMF Search framework.

More than just posting a long list of features, I prefer to expose some viewlet of the Eclpise modeling ecore/uml tooling.

The purpose of this EMF Search tooling is to ease Eclipse modeling user experience by offering ways to easily search, navigate, refactor Ecore based resources.

Here is a short screencast of EMF Search features in vivo:

EMFT Search : A quick update

Hi folks,

Here are some screenshots of the latest EMFT Search developments.

You'll probably notice that there's some more features than the only integration to Eclipse Platform Search APIs ^^

That's certainly a kind of collateral effect, due to the layered framework organization ;-)

In other words, since model search queries have been divorced from all UI/Codegen/Common plugins, it allows to assemble some nice, non premedited things, like Open [EClass|EPackage] Filtered Selection Dialogs or the EReferences popup menu.

Anyway, a long road have still to be (model ?) driven to the final release.

A good point is that this starting point opens some nice perspectives for the Eclipse Model Driven Development. I suppose EMFT Search is just a seed and will, with luck (and restless efforts) turn into a nice plant, prospering in the modeling garden.













EMFT Search : initial contributions

I'm happy to announce my first contributions to the newly created Eclipse EMFT Search project.

I'm proud having been accepted has commiter for Modeling project as I consider this initiative as the next significant step in *any purpose* MDSD Java tools for next years.

I hope my modest contribution will help people being more productive in their all day work, and being able to provide a better Eclipse integration for MDSD developers.

Eclipse Commiter Nomination



I am proud to announce that I have been nominated Eclipse Commiter for Modeling/EMFT project. It is a big event in my developer's life as it comes after some 5 years eclipse/plugin development efforts in many different part of the world (Ireland, UK, France, ...).

Just wanted to say thank you to Anyware Technolgies open source guys :

Sylvain Wallez (CTO Anyware Technologies, Apache Foundation Member)
David Sciamma (Eclipse Commiter)
Olivier Prouvost (Open Source Consultant)

I will put huge efforts in making quality and collaborative contributions. Trying to make this open source world as good as my small french brain will allow ^^.



EMF Model Search Proposal posted !



A viewlet is also available [here].

ESR !

Model Driven Blogging

EMF model compare is a great productivity feature, I heard this had been accepted as Modeling project tool. It looks very promising :



Cedric Brun from [acceleo] is actively blogging on model driven stuff. He contributed a model compare and describes it [here].

Great stuff !

EMF Search Contribution posted

Anyware Technologies contributed today EMF model search RFE.

[ Bugzilla #180492 : EMF model search RFE ]

I am proud to announce this modest contribution an am sure this will be really usefull for community.

It's not a huge amount of code, anyway, it is a nice little productivity tool.

This feature is already part of Topcased 1.0 M3 and will hopefully be accepted in the modeling project as a productivity tool.

If it is the case we'll have to switch org.topcased.search.* plugins back to something closer to eclipse.* ^^

Enjoy !