Package groovy.util
Interface Factory
- All Known Implementing Classes:
- AbstractFactory,- CustomizersFactory,- ImportCustomizerFactory,- InlinedASTCustomizerFactory,- SecureASTCustomizerFactory,- SourceAwareCustomizerFactory
public interface Factory
- 
Method SummaryModifier and Type Method Description booleanisHandlesNodeChildren()Does this factory "Own" its child closure.booleanisLeaf()java.lang.ObjectnewInstance(FactoryBuilderSupport builder, java.lang.Object name, java.lang.Object value, java.util.Map attributes)voidonFactoryRegistration(FactoryBuilderSupport builder, java.lang.String registeredName, java.lang.String registeredGroupName)Called when a factory is registered to a builderbooleanonHandleNodeAttributes(FactoryBuilderSupport builder, java.lang.Object node, java.util.Map attributes)booleanonNodeChildren(FactoryBuilderSupport builder, java.lang.Object node, Closure childContent)Only called if it isLeaf is false and isHandlesNodeChildren is truevoidonNodeCompleted(FactoryBuilderSupport builder, java.lang.Object parent, java.lang.Object node)voidsetChild(FactoryBuilderSupport builder, java.lang.Object parent, java.lang.Object child)voidsetParent(FactoryBuilderSupport builder, java.lang.Object parent, java.lang.Object child)
- 
Method Details- 
isLeafboolean isLeaf()- Returns:
- true if no child closures should be processed
 
- 
isHandlesNodeChildrenboolean isHandlesNodeChildren()Does this factory "Own" its child closure.- Returns:
- true if the factory should have onContentClosure() called, false if the builder should handle it
 
- 
onFactoryRegistrationvoid 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
 
- 
newInstancejava.lang.Object newInstance(FactoryBuilderSupport builder, java.lang.Object name, java.lang.Object value, java.util.Map attributes) throws java.lang.InstantiationException, java.lang.IllegalAccessException- 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
- Throws:
- java.lang.InstantiationException- if attempting to instantiate an interface or abstract class
- java.lang.IllegalAccessException- if the instance can't be created due to a security violation
 
- 
onHandleNodeAttributesboolean 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 standard bean property matching for the remaining attributes
 
- 
onNodeChildrenOnly 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
 
- 
onNodeCompletedvoid 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
 
- 
setParent
- 
setChild
 
-