# 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()`
Gets the digester that was set upon initialization.
`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()
Gets the digester that was set upon initialization.

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