to.etc.iocular.container
Interface BuildPlan

All Known Implementing Classes:
AbstractBuildPlan, BuildPlanForConstructor, BuildPlanForContainerParameter, BuildPlanForStaticFactory

public interface BuildPlan

Encapsulates a method of building an instance of a given object from a given container.

Author:
jal Created on Mar 28, 2007

Field Summary
static ComponentRef[] EMPTY_PLANS
           
 
Method Summary
 void destroy(BasicContainer bc, java.lang.Object self)
          Call the before-destruction methods specified for this object.
 void dump(IndentWriter iw)
           
 java.lang.Object getObject(BasicContainer c)
           
 boolean hasDestructors()
           
 boolean needsStaticInitialization()
          When T this component has a static (one-time only) initialization requirement.
 void start(BasicContainer bc, java.lang.Object self)
          Call the after-construction methods specified for this object (start methods).
 void staticStart(BasicContainer c)
          When this has a static initializer this should execute it.
 

Field Detail

EMPTY_PLANS

static final ComponentRef[] EMPTY_PLANS
Method Detail

getObject

java.lang.Object getObject(BasicContainer c)
                           throws java.lang.Exception
Throws:
java.lang.Exception

dump

void dump(IndentWriter iw)
          throws java.io.IOException
Throws:
java.io.IOException

needsStaticInitialization

boolean needsStaticInitialization()
When T this component has a static (one-time only) initialization requirement.

Returns:

staticStart

void staticStart(BasicContainer c)
                 throws java.lang.Exception
When this has a static initializer this should execute it. This gets called before an actual object is created from this definition.

Parameters:
c -
Throws:
java.lang.Exception

start

void start(BasicContainer bc,
           java.lang.Object self)
           throws java.lang.Exception
Call the after-construction methods specified for this object (start methods). When present these are called after construction of the object, with the instance of the object as a possible parameter.

Parameters:
bc -
self -
Throws:
java.lang.Exception

destroy

void destroy(BasicContainer bc,
             java.lang.Object self)
Call the before-destruction methods specified for this object.

Parameters:
bc -
self -
Throws:
java.lang.Exception

hasDestructors

boolean hasDestructors()