occiware/ecore

Create a generic "new example" wizard for OCCI extensions

Closed this issue · 2 comments

The purpose of this task is to implement a generic wizard that can be extended by OCCI extensions.

Goal: when launching the eclipse action "File >New... > Example...", a single OCCI extension wizard aggregates all of the available examples of installed OCCI extensions.
The wizard shows the examples as a list, for each it shows a screenshot + a description.
Once an example is chosen and the wizard finished, a new modeling project is deployed into the workspace with the chosen example.

A similar approach has been implemented in https://github.com/ObeoNetwork/BPMN-Designer and could be used as an inspiration.

https://github.com/ObeoNetwork/BPMN-Designer/blob/master/samples/org.obeonetwork.dsl.bpmn2.samples/schema/org.obeonetwork.dsl.bpmn2.samples.Bpmn2Sample.exsd
The extension point declaration, intended to be extended with BPMN samples (like our OCCI extensions).

https://github.com/ObeoNetwork/BPMN-Designer/blob/master/samples/org.obeonetwork.dsl.bpmn2.samples/src/org/obeonetwork/dsl/bpmn2/samples/wizards/ProjectUnzipperNewWizard.java
The part of code responsible for the extension fetching.

https://github.com/ObeoNetwork/BPMN-Designer/tree/master/samples
contains the samples, with a main project
https://github.com/ObeoNetwork/BPMN-Designer/tree/master/samples/org.obeonetwork.dsl.bpmn2.samples.pack.core
containing the zipped versions of the sample projects:
https://github.com/ObeoNetwork/BPMN-Designer/tree/master/samples/org.obeonetwork.dsl.bpmn2.samples.src.nobelprize
https://github.com/ObeoNetwork/BPMN-Designer/tree/master/samples/org.obeonetwork.dsl.bpmn2.samples.src.travelagency
(Maybe we can avoid this zip step in our own implementation)

Now (within next months and according to the deliverables' planning) we have to see that

  • this feature and its Eclipse extension point is developed
  • all partners contribute one Eclipse extension to it per OCCI extension they have developed, with at least 1-2 simple example configuration and 1 bigger / more complex / that has more coverage of what it is possible to do with this OCCI extension.

BTW I agree, zip is cumbersome to commit and lookup in source, while not gaining much in size.

Fixed with dac78db