I have a daemon which exposes RMI interface for submission of various potentially long running bulk operations. The daemon may also talk to workflow/BPM system as a part of request processing. This essentially means that the request processing (post submission) also has an asynchronous component to deal with; which probably would require the bulk request to be broken down into multiple request objects arranged in a tree form with parent-child relationship representing dependency between the requests.
I would like to know your thoughts on design of such application. Prima-facie it seems command pattern could be used. However the system in question expects number of plugins to plug into it & so the proliferation of command (request or task objects in this case) objects could slow down plugin development.