net.sf.seaf.factory.impl
Class InitializingFactory

java.lang.Object
  extended by net.sf.seaf.factory.impl.support.DelegatingFactoryBase
      extended by net.sf.seaf.factory.impl.InitializingFactory
All Implemented Interfaces:
Factory

public class InitializingFactory
extends DelegatingFactoryBase
implements Factory

Factory that initializes the returned instances using an Initializer.

The initializer set on the factory must match the type of the instance returned, otherwise SeafInitializationException is thrown.


Constructor Summary
InitializingFactory()
          Default empty constructor.
InitializingFactory(Initializer<?> initializer, Factory instantiatingFactory)
          Full constructor.
 
Method Summary
<Type> Type
getInstanceOf(Class<Type> type)
          Return an initialized instance of the specified type.
 void setInitializer(Initializer<?> initializer)
          Set the initializer.
 
Methods inherited from class net.sf.seaf.factory.impl.support.DelegatingFactoryBase
getInstantiatingFactory, setInstantiatingFactory
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

InitializingFactory

public InitializingFactory()
Default empty constructor. The initializer and instantiating factory must be supplied via its setter methods.


InitializingFactory

public InitializingFactory(Initializer<?> initializer,
                           Factory instantiatingFactory)
Full constructor.

Parameters:
initializer - The initializer
instantiatingFactory - The instantiating factory
Method Detail

getInstanceOf

public <Type> Type getInstanceOf(Class<Type> type)
                   throws SeafRuntimeException
Description copied from interface: Factory
Return an initialized instance of the specified type.

Specified by:
getInstanceOf in interface Factory
Parameters:
type - The type of the requested instance
Returns:
The instance
Throws:
SeafRuntimeException - Thrown when the instance cannot be retrieved

setInitializer

public final void setInitializer(Initializer<?> initializer)
Set the initializer.

Parameters:
initializer - The initializer


Copyright © 2008-2011 SEAF. All Rights Reserved.