# Interface ObjectCreationFactory

All Known Implementing Classes:
  `AbstractObjectCreationFactory`

public interface ObjectCreationFactory

Interface for use with `FactoryCreateRule`. The rule calls `createObject(Attributes)` to create an object to be pushed onto the `Digester` stack whenever it is matched.

`AbstractObjectCreationFactory` is an abstract implementation suitable for creating anonymous `ObjectCreationFactory` implementations.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `Object`
  `createObject(Attributes attributes)`
  Factory method called by `FactoryCreateRule` to supply an object based on the element's attributes.
  `Digester`
  `getDigester()`
  `void`
  `setDigester(Digester digester)`
  Set the `Digester` to allow the implementation to do logging, classloading based on the digester's classloader, etc.

- ## Method Details

  - ### createObject

    Object createObject(Attributes attributes) throws Exception
    Factory method called by `FactoryCreateRule` to supply an object based on the element's attributes.
    Parameters:
      `attributes` - the element's attributes
    Returns:
      the created object
    Throws:
      `Exception` - any exception thrown will be propagated upwards

  - ### getDigester

    Digester getDigester()
    Returns:
      the `Digester` that was set by the `FactoryCreateRule` upon initialization.

  - ### setDigester

    void setDigester(Digester digester)
    Set the `Digester` to allow the implementation to do logging, classloading based on the digester's classloader, etc.
    Parameters:
      `digester` - parent Digester object