Groovy Documentation

groovy.util
[Java] Interface Factory


public interface Factory

Authors:
Andres Almiray
Danno Ferrin


Method Summary
boolean isHandlesNodeChildren()

Does this factory "Own" it's child closure.

boolean isLeaf()

@return true if no child closures should be processed

java.lang.Object newInstance(FactoryBuilderSupport builder, java.lang.Object name, java.lang.Object value, java.util.Map attributes)

@param builder the FactoryBuilder

void onFactoryRegistration(FactoryBuilderSupport builder, java.lang.String registeredName, java.lang.String registeredGroupName)

Called when a factory is registered to a builder

boolean onHandleNodeAttributes(FactoryBuilderSupport builder, java.lang.Object node, java.util.Map attributes)

@param builder the FactoryBuilder

boolean onNodeChildren(FactoryBuilderSupport builder, java.lang.Object node, Closure childContent)

Only called if it isLeaf is false and isHandlesNodeChildren is true

void onNodeCompleted(FactoryBuilderSupport builder, java.lang.Object parent, java.lang.Object node)

@param builder the FactoryBuilder

void setChild(FactoryBuilderSupport builder, java.lang.Object parent, java.lang.Object child)

void setParent(FactoryBuilderSupport builder, java.lang.Object parent, java.lang.Object child)

 

Method Detail

isHandlesNodeChildren

public boolean isHandlesNodeChildren()
Does this factory "Own" it's child closure.
Returns:
true if the factory should have onContentClosure() called, false if the builder should handle it


isLeaf

public boolean isLeaf()
Returns:
true if no child closures should be processed


newInstance

public java.lang.Object newInstance(FactoryBuilderSupport builder, java.lang.Object name, java.lang.Object value, java.util.Map attributes)
throws:
InstantiationException if attempting to instantiate an interface or abstract class
throws:
IllegalAccessException if the instance can't be created due to a security violation
Parameters:
builder - the FactoryBuilder
name - the name of the node being built
value - the 'value' argument in the build node
attributes - the attributes of the build arg
Returns:
the object created for the builder


onFactoryRegistration

public void onFactoryRegistration(FactoryBuilderSupport builder, java.lang.String registeredName, java.lang.String registeredGroupName)
Called when a factory is registered to a builder
Parameters:
builder - the build the factory has been registered to
registeredName - the name the factory has been registered under


onHandleNodeAttributes

public boolean onHandleNodeAttributes(FactoryBuilderSupport builder, java.lang.Object node, java.util.Map attributes)
Parameters:
builder - the FactoryBuilder
node - the node (returned from newINstance) to consider the attributes for
attributes - the attributes, a mutable set
Returns:
true if the factory builder should use standerd bean property matching for the remaining attributes


onNodeChildren

public boolean onNodeChildren(FactoryBuilderSupport builder, java.lang.Object node, Closure childContent)
Only called if it isLeaf is false and isHandlesNodeChildren is true
Parameters:
builder - the FactoryBuilder
node - the node (returned from newINstance) to consider the attributes for
childContent - the child content closure of the builder
Returns:
true if the factory builder should apply default node processing to the content child


onNodeCompleted

public void onNodeCompleted(FactoryBuilderSupport builder, java.lang.Object parent, java.lang.Object node)
Parameters:
builder - the FactoryBuilder
parent - the parent node (null if 'root')
node - the node just completed


setChild

public void setChild(FactoryBuilderSupport builder, java.lang.Object parent, java.lang.Object child)


setParent

public void setParent(FactoryBuilderSupport builder, java.lang.Object parent, java.lang.Object child)


 

Groovy Documentation