## groovy.util
Class AbstractFactory

    java.lang.Object
      groovy.util.AbstractFactory

All Implemented Interfaces:
  Factory

    public abstract class AbstractFactory

extends Object
implements Factory

Author:
  Andres Almiray <aalmiray@users.sourceforge.com>, Danno Ferrin

Constructor Summary
`AbstractFactory()`

Method Summary
`boolean` `isHandlesNodeChildren()` Does this factory "Own" it's child closure.
`boolean` `isLeaf()`
`void` `onFactoryRegistration(FactoryBuilderSupport builder, String registerdName, String group)` Called when a factory is registerd to a builder
`boolean` `onHandleNodeAttributes(FactoryBuilderSupport builder, Object node, Map attributes)`
`boolean` `onNodeChildren(FactoryBuilderSupport builder, Object node, Closure childContent)` Only called if it isLeaf is false and isHandlesNodeChildren is true
`void` `onNodeCompleted(FactoryBuilderSupport builder, Object parent, Object node)`
`void` `setChild(FactoryBuilderSupport builder, Object parent, Object child)`
`void` `setParent(FactoryBuilderSupport builder, Object parent, Object child)`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Methods inherited from interface groovy.util.Factory
`newInstance`

Constructor Detail

### AbstractFactory

    public AbstractFactory()

Method Detail

### isLeaf

    public boolean isLeaf()

  Specified by:
    `isLeaf` in interface `Factory`
  Returns:
    true if no child closures should be processed

### isHandlesNodeChildren

    public boolean isHandlesNodeChildren()

  Description copied from interface: `Factory`
  Does this factory "Own" it's child closure.

  Specified by:
    `isHandlesNodeChildren` in interface `Factory`
  Returns:
    true if the factory should have onContentClosure() called, false if the builder shouold handle it

### onFactoryRegistration

    public void onFactoryRegistration(FactoryBuilderSupport builder,
                                      String registerdName,
                                      String group)

  Description copied from interface: `Factory`
  Called when a factory is registerd to a builder

  Specified by:
    `onFactoryRegistration` in interface `Factory`
  Parameters:
    `builder` - the build the factory has been registered to
    `registerdName` - the name the factory has been registerd under

### onHandleNodeAttributes

    public boolean onHandleNodeAttributes(FactoryBuilderSupport builder,
                                          Object node,
                                          Map attributes)

  Specified by:
    `onHandleNodeAttributes` in interface `Factory`
  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,
                                  Object node,
                                  Closure childContent)

  Description copied from interface: `Factory`
  Only called if it isLeaf is false and isHandlesNodeChildren is true

  Specified by:
    `onNodeChildren` in interface `Factory`
  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,
                                Object parent,
                                Object node)

  Specified by:
    `onNodeCompleted` in interface `Factory`
  Parameters:
    `builder` - the FactoryBuilder
    `parent` - the parent node (null if 'root')
    `node` - the node just completed

### setParent

    public void setParent(FactoryBuilderSupport builder,
                          Object parent,
                          Object child)

  Specified by:
    `setParent` in interface `Factory`

### setChild

    public void setChild(FactoryBuilderSupport builder,
                         Object parent,
                         Object child)

  Specified by:
    `setChild` in interface `Factory`

Copyright © 2003-2009 The Codehaus. All rights reserved.