org.apache.hivemind.lib.pipeline
Class PipelineAssembler

java.lang.Object
  extended by org.apache.hivemind.impl.BaseLocatable
      extended by org.apache.hivemind.lib.pipeline.PipelineAssembler
All Implemented Interfaces:
org.apache.hivemind.Locatable, org.apache.hivemind.LocationHolder

public class PipelineAssembler
extends org.apache.hivemind.impl.BaseLocatable

Used by the PipelineFactory to assemble the pipeline.

Author:
Howard Lewis Ship

Constructor Summary
PipelineAssembler(org.apache.hivemind.ErrorLog errorLog, java.lang.String serviceId, java.lang.Class serviceInterface, java.lang.Class filterInterface, org.apache.hivemind.service.ClassFactory classFactory, DefaultImplementationBuilder defaultBuilder)
           
 
Method Summary
 void addFilter(java.lang.String name, java.lang.String prereqs, java.lang.String postreqs, java.lang.Object filter, org.apache.hivemind.Location location)
           
 java.lang.Object createPipeline()
          Returns an object that implements the service interface, and integrates any filters for the pipeline with the
 void setTerminator(java.lang.Object terminator, org.apache.hivemind.Location terminatorLocation)
           
 
Methods inherited from class org.apache.hivemind.impl.BaseLocatable
getLocation, setLocation
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

PipelineAssembler

public PipelineAssembler(org.apache.hivemind.ErrorLog errorLog,
                         java.lang.String serviceId,
                         java.lang.Class serviceInterface,
                         java.lang.Class filterInterface,
                         org.apache.hivemind.service.ClassFactory classFactory,
                         DefaultImplementationBuilder defaultBuilder)
Parameters:
errorLog - used for reporting recoverable errors
serviceInterface - the main interface
filterInterface - the interface for filters
classFactory - for creating new classes
defaultBuilder - used to provide a placeholder terminator if no real terminator is supplied
servceId - of the service being assembled
Method Detail

addFilter

public void addFilter(java.lang.String name,
                      java.lang.String prereqs,
                      java.lang.String postreqs,
                      java.lang.Object filter,
                      org.apache.hivemind.Location location)

setTerminator

public void setTerminator(java.lang.Object terminator,
                          org.apache.hivemind.Location terminatorLocation)

createPipeline

public java.lang.Object createPipeline()
Returns an object that implements the service interface, and integrates any filters for the pipeline with the