org.jfree.xml.factory.objects

Class AbstractObjectDescription

Implemented Interfaces:
Cloneable, ObjectDescription, Serializable
Known Direct Subclasses:
ArrayObjectDescription, BasicStrokeObjectDescription, BeanObjectDescription, BooleanObjectDescription, ByteObjectDescription, CharacterObjectDescription, ClassLoaderObjectDescription, CollectionObjectDescription, ColorObjectDescription, DateObjectDescription, Dimension2DObjectDescription, DimensionObjectDescription, DoubleObjectDescription, FloatObjectDescription, IntegerObjectDescription, Line2DObjectDescription, LongObjectDescription, Point2DObjectDescription, Rectangle2DObjectDescription, ShortObjectDescription, StringObjectDescription, URLObjectDescription

public abstract class AbstractObjectDescription
extends java.lang.Object
implements ObjectDescription, Cloneable

An abstract base class for object descriptions.
Author:
Thomas Morgner.

Constructor Summary

AbstractObjectDescription(Class className)
Creates a new object description.

Method Summary

void
configure(Configuration config)
Configures this factory.
static Class
convertPrimitiveClass(Class obj)
Converts primitives to corresponding object class.
boolean
equals(Object o)
Tests for equality.
Configuration
getConfig()
Returns the configuration for that object description.
protected Iterator
getDefinedParameterNames()
Returns an iterator for the parameter names.
ObjectDescription
getInstance()
Returns a cloned instance of the object description.
Class
getObjectClass()
Returns the class for the object.
Object
getParameter(String name)
Returns a parameter value.
Class
getParameterDefinition(String name)
Returns a parameter class.
Iterator
getParameterNames()
Returns an iterator for the parameter names.
ObjectDescription
getUnconfiguredInstance()
Returns a cloned instance of the object description.
int
hashCode()
Returns a hash code for the object.
void
setParameter(String name, Object value)
Sets a parameter.
void
setParameterDefinition(String name, Class obj)
Sets the class for a parameter.

Constructor Details

AbstractObjectDescription

public AbstractObjectDescription(Class className)
Creates a new object description.
Parameters:
className - the class.

Method Details

configure

public void configure(Configuration config)
Configures this factory. The configuration contains several keys and their defined values. The given reference to the configuration object will remain valid until the report parsing or writing ends.

The configuration contents may change during the reporting.

Specified by:
configure in interface ObjectDescription
Parameters:
config - the configuration, never null

convertPrimitiveClass

public static Class convertPrimitiveClass(Class obj)
Converts primitives to corresponding object class.
Parameters:
obj - the class.
Returns:
The class.

equals

public boolean equals(Object o)
Tests for equality.
Specified by:
equals in interface ObjectDescription
Parameters:
o - the object to test.
Returns:
A boolean.

getConfig

public Configuration getConfig()
Returns the configuration for that object description.
Returns:
the configuration or null, if not yet set.

getDefinedParameterNames

protected Iterator getDefinedParameterNames()
Returns an iterator for the parameter names.
Returns:
The iterator.

getInstance

public ObjectDescription getInstance()
Returns a cloned instance of the object description. The contents of the parameter objects collection are cloned too, so that any already defined parameter value is copied to the new instance.

Parameter definitions are not cloned, as they are considered read-only.

The newly instantiated object description is not configured. If it need to be configured, then you have to call configure on it.

Specified by:
getInstance in interface ObjectDescription
Returns:
A cloned instance.

getObjectClass

public Class getObjectClass()
Returns the class for the object.
Specified by:
getObjectClass in interface ObjectDescription
Returns:
The class.

getParameter

public Object getParameter(String name)
Returns a parameter value.
Specified by:
getParameter in interface ObjectDescription
Parameters:
name - the parameter name.
Returns:
The parameter value.

getParameterDefinition

public Class getParameterDefinition(String name)
Returns a parameter class.
Specified by:
getParameterDefinition in interface ObjectDescription
Parameters:
name - the parameter definition.
Returns:
The class.

getParameterNames

public Iterator getParameterNames()
Returns an iterator for the parameter names.
Specified by:
getParameterNames in interface ObjectDescription
Returns:
The iterator.

getUnconfiguredInstance

public ObjectDescription getUnconfiguredInstance()
Returns a cloned instance of the object description. The contents of the parameter objects collection are cloned too, so that any already defined parameter value is copied to the new instance.

Parameter definitions are not cloned, as they are considered read-only.

The newly instantiated object description is not configured. If it need to be configured, then you have to call configure on it.

Specified by:
getUnconfiguredInstance in interface ObjectDescription
Returns:
A cloned instance.

hashCode

public int hashCode()
Returns a hash code for the object.
Specified by:
hashCode in interface ObjectDescription
Returns:
The hash code.

setParameter

public void setParameter(String name,
                         Object value)
Sets a parameter.
Specified by:
setParameter in interface ObjectDescription
Parameters:
name - the name.
value - the value.

setParameterDefinition

public void setParameterDefinition(String name,
                                   Class obj)
Sets the class for a parameter.
Parameters:
name - the parameter name.
obj - the parameter class.