org.apache.hivemind.service.impl
Class BuilderFactory

java.lang.Object
  extended by org.apache.hivemind.service.impl.BuilderFactory
All Implemented Interfaces:
ServiceImplementationFactory

public class BuilderFactory
extends java.lang.Object
implements ServiceImplementationFactory

Implementation of ServiceImplementationFactory that can instantiate an object and then configure its properties.

Some thought has been given to using bytecode generation to create properties for messages, extension point id, and so forth. This is being avoided because it undermines the ability to test service implemenations as POJOs, outside the framework of HiveMind.

Instead the service is configured by means of the implementation's constructor and setter methods.

Author:
Howard Lewis Ship

Constructor Summary
BuilderFactory()
           
 
Method Summary
 java.lang.Object createCoreServiceImplementation(ServiceImplementationFactoryParameters factoryParameters)
          Creates a core implementation object for a particular service extension point.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

BuilderFactory

public BuilderFactory()
Method Detail

createCoreServiceImplementation

public java.lang.Object createCoreServiceImplementation(ServiceImplementationFactoryParameters factoryParameters)
Description copied from interface: ServiceImplementationFactory
Creates a core implementation object for a particular service extension point. Typically, the factory creates an instance and modifies it to implement the necessary interface (in much the same way that an ServiceInterceptorFactory would). Incompatible change from 1.0: A long list of individual parameters have been collapsed down into the factoryParameters.

Specified by:
createCoreServiceImplementation in interface ServiceImplementationFactory
Parameters:
factoryParameters - provides the information about the service necessary to construct the service.