[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[mdt-bpmn2.dev] Merger Tool: warp separate models in combined model class

Hi,

I've done some work on the merger tool. Mainly regarding the
construction of models and processor. One has to pass in mandatory
parameters to the constructor instead of some load() method (as we
discussed on the other thread).
Right now I'm trying to find out how to create one single patch of the
21 commits I have in my local branch. Once I have accomplished that,
I'll upload my work to bugzilla.

Now there is a bigger change, I wanted to discuss with you first.
As far as I can see, the BPMN Model is scattered across several
XSD/CMOF files: BPMN, BPMNDI, DI, DC.
The merger tool uses the Model class to encapsulate this files. This
results in several redundant method calls, where some logic is called
on every individual model.
Now I'd like to create a new class, let's call it BpmnMetaModel. This
class holds four models as members and we can call methods like void
save() or EList<EStructuralFeature> getContent() (instead of
getXsdContent() and getmofContent()) on that class.
This way we can move some logic out of the processor.

After that is done, I'm planning to apply the strategy pattern to
extract the actual processing logic. I'll describe what I have in mind
in more detail, once I get the time to think some more about that.

Regards,
Benedikt