I just finished the second part of my article "Modeling goes Enterprise - About EMF and CDO". It will be published in the
Eclipse Magazin next month. Thanks to Sebastian Meyen and Hartmut Schlosser I'm allowed to make the example application, discussed in the article, available in the Eclipse CVS!
The splash picture was taken in my kitchenThe example is a set of applications (IDE, headless, 3x RCP, Servlet) used to support the business of the electronic restaurant "eDine", where they have touch computers at all the tables and at the bar and in the kitchen. Special RCP applications operate on a distributed shared EMF model which is provided by a headless CDO repository server.
Running the Example
1) Install the example
2) Start the server process
- Start the "GastroServer" launch config. It creates a Derby database at "/gastro".
- Watch the console output.
3) Populate the repository
- Start the "GastroTestClient1" launch config. It opens a runtime IDE with generic CDO support.
- Open the "CDO Sessions" view.
- Add a new session (green plus button). Enter "tcp://localhost" and "gastro".

- Open a new transaction (right-click on the session).
- Import the /org.gastro.testclient/inventory.xml resource into "/eDine/inventory".
- Commit the transaction (right-click on the transaction or just save the editor).

4) Start the RCP application for table 1 (and optionally for table 2)
- Start the "GastroTable1" launch config. It opens an RCP application.
- Browse through the menu card and select some offerings here and there.

5) Start the RCP application for the bar
- Start the "GastroDepartment1" launch config. It opens an RCP application for the barkeeper.
- Watch orders coming in.
- Eventually click on order details to mark them SERVED and watch the order disappearing when completed.
6) Start the RCP application for the kitchen
- Start the "GastroDepartment2" launch config. It opens an RCP application for the cook.
- Eventually click on order details to mark them SERVED and watch the order disappearing when completed.

7) Send an order (if the RCP applications are all started, see steps 4-6)
- In the table application open the second shelf pane and send the order.
- Watch how the relevant order details "arrive" in the bar and kitchen applications...

8) Browse the menu card via Web
- Start a web browser and point it to "http://localhost:9090/gastro"

Enjoy your meal! ;-)