[wtp-dev] Suitable architecture for a plugin project
I am trying to create a plugin for a process engine in which workflows can be deployed .
UI plugins which, upon some UI event will have to pull information and manage life cycle events of the process engine(start/stop etc). On the other hand the when
specific events happen in the process engine this has to be communicated with
the respective UI plugins. I need an architecture which decouples the process engine with the UI as possible so it can be used with differents UI or
other non UI plugins which need to use that process engine.
I was thinking of a suitable architecture for this scenario. I
thought of adding Listener extensions for the process engine plugin so any
plugin listening with these extensions will get the server events. But
for UI to process engine communication I could not think of a way which would push information to and pull information from the process engine upon UI events. I thought of importing process engine classes to the UI plugin to do such communications but it will create some coupling between UI and
the server. Defining UI Listeners is not an option also for obvious
Can anybody help me with this design problem. I greatly appreciate any suggetions.