PipelineFactory is not quite the right thing here, but you can clearly see how you could build something more like Chain of Reponsibility using HiveMind.
There would need to be some kind of configuration format that would identify various "nodes" on the chain and thier relationships (which ones are invoked before others). The hard part is deciding who goes next after each method invocation ... need some way of saying "if return value is non null then do X else do Y". Using Pipeline, you can do a limited form, where each filter is responsible for either performing the final operation, or delegating out to the next "bridge" for the operation. That puts too much responsibility on the filters. On Wed, 10 Nov 2004 16:16:42 +1100, RALPH ROPER <[EMAIL PROTECTED]> wrote: > hi, > > I am currently evaluating retrofitting an application with Hivemind as a > number of the Struts Action classes are bloated and unwieldy. The > application has a number of processes that need to be run in order. Each > process depends on zero or many of the previous processes being completed > successfully. For example Calculate Settlement process cannot be run until > Upload Files and Verify processes have been run. While it has taken me two > days to get to grips with the whole IOC thing I cannot see an easy way to > implement this flow with Hivemind. The Apache common-chains API using Chain > of Responsibility pattern looks like it would do the trick but since I am > looking at Hivemind I thought I would look at what it can do. The > PipelineFactory does not seem to fit the bill as it uses a series of > filters, executes each one and passes on to the next. What I want to do is > more like > > Check Upload process done Y --> continue N --> exit > Check Verification done Y --> continue N --> exit > Run Settlement > Finish > > thanks, > > Ralph Roper > > ________________________________________________________ > NOTICE > The information in this email and or any of the attachments may contain; > a. Confidential information of Credit Union Services Corporation (Australia) > Limited (CUSCAL) or third parties; and or > b. Legally privileged information of CUSCAL or third parties; and or > c. Copyright material of CUSCAL or third parties. > If you are not an authorised recipient of this email, please contact CUSCAL > immediately by return email or by telephone on 61-2-8299 9000 and delete the > email from your system. > We do not accept any liability in connection with computer virus, data > corruption, interruption or any damage generally as a result of transmission > of this email. > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > -- Howard M. Lewis Ship Independent J2EE / Open-Source Java Consultant Creator, Jakarta Tapestry Creator, Jakarta HiveMind http://howardlewisship.com --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
