## org.hibernate.tuple.component
Class AbstractComponentTuplizer

    java.lang.Object
      org.hibernate.tuple.component.AbstractComponentTuplizer

All Implemented Interfaces:
  Serializable, ComponentTuplizer, Tuplizer

Direct Known Subclasses:
  Dom4jComponentTuplizer, DynamicMapComponentTuplizer, PojoComponentTuplizer

    public abstract class AbstractComponentTuplizer

extends Object
implements ComponentTuplizer

Support for tuplizers relating to components.

Author:
  Gavin King, Steve Ebersole
See Also:
  Serialized Form

Field Summary
`protected Getter[]` `getters`
`protected boolean` `hasCustomAccessors`
`protected Instantiator` `instantiator`
`protected int` `propertySpan`
`protected Setter[]` `setters`

Constructor Summary
`protected` `AbstractComponentTuplizer(Component component)`

Method Summary
`protected abstract Getter` `buildGetter(Component component, Property prop)`
`protected abstract Instantiator` `buildInstantiator(Component component)`
`protected abstract Setter` `buildSetter(Component component, Property prop)`
`Getter` `getGetter(int i)` Retrieve the getter for the specified property.
`Object` `getParent(Object component)` Retreive the current value of the parent property.
`Object` `getPropertyValue(Object component, int i)` Extract the value of a particular property from the given entity.
`Object[]` `getPropertyValues(Object component)` Extract the current values contained on the given entity.
`boolean` `hasParentProperty()` Does the component managed by this tuuplizer contain a parent property?
`Object` `instantiate()` This method does not populate the component parent
`boolean` `isInstance(Object object)` Is the given object considered an instance of the the entity (acconting for entity-mode) managed by this tuplizer.
`boolean` `isMethodOf(Method method)` Is the given method available via the managed component as a property getter?
`void` `setParent(Object component, Object parent, SessionFactoryImplementor factory)` Set the value of the parent property.
`void` `setPropertyValues(Object component, Object[] values)` Inject the given values into the given entity.

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

Methods inherited from interface org.hibernate.tuple.Tuplizer
`getMappedClass`

Field Detail

### getters

    protected final Getter[] getters

### setters

    protected final Setter[] setters

### propertySpan

    protected final int propertySpan

### instantiator

    protected final Instantiator instantiator

### hasCustomAccessors

    protected final boolean hasCustomAccessors

Constructor Detail

### AbstractComponentTuplizer

    protected AbstractComponentTuplizer(Component component)

Method Detail

### buildInstantiator

    protected abstract Instantiator buildInstantiator(Component component)

### buildGetter

    protected abstract Getter buildGetter(Component component,
                                          Property prop)

### buildSetter

    protected abstract Setter buildSetter(Component component,
                                          Property prop)

### getPropertyValue

    public Object getPropertyValue(Object component,
                                   int i)
                            throws HibernateException

  Description copied from interface: `Tuplizer`
  Extract the value of a particular property from the given entity.

  Specified by:
    `getPropertyValue` in interface `Tuplizer`
  Parameters:
    `component` - The entity from which to extract the property value.
    `i` - The index of the property for which to extract the value.
  Returns:
    The current value of the given property on the given entity.
  Throws:
    `HibernateException`

### getPropertyValues

    public Object[] getPropertyValues(Object component)
                               throws HibernateException

  Description copied from interface: `Tuplizer`
  Extract the current values contained on the given entity.

  Specified by:
    `getPropertyValues` in interface `Tuplizer`
  Parameters:
    `component` - The entity from which to extract values.
  Returns:
    The current property values.
  Throws:
    `HibernateException`

### isInstance

    public boolean isInstance(Object object)

  Description copied from interface: `Tuplizer`
  Is the given object considered an instance of the the entity (acconting for entity-mode) managed by this tuplizer.

  Specified by:
    `isInstance` in interface `Tuplizer`
  Parameters:
    `object` - The object to be checked.
  Returns:
    True if the object is considered as an instance of this entity within the given mode.

### setPropertyValues

    public void setPropertyValues(Object component,
                                  Object[] values)
                           throws HibernateException

  Description copied from interface: `Tuplizer`
  Inject the given values into the given entity.

  Specified by:
    `setPropertyValues` in interface `Tuplizer`
  Parameters:
    `component` - The entity.
    `values` - The values to be injected.
  Throws:
    `HibernateException`

### instantiate

    public Object instantiate()
                       throws HibernateException

  This method does not populate the component parent

  Specified by:
    `instantiate` in interface `Tuplizer`
  Returns:
    The new, empty entity instance.
  Throws:
    `HibernateException`

### getParent

    public Object getParent(Object component)

  Description copied from interface: `ComponentTuplizer`
  Retreive the current value of the parent property.

  Specified by:
    `getParent` in interface `ComponentTuplizer`
  Parameters:
    `component` - The component instance from which to extract the parent property value.
  Returns:
    The current value of the parent property.

### hasParentProperty

    public boolean hasParentProperty()

  Description copied from interface: `ComponentTuplizer`
  Does the component managed by this tuuplizer contain a parent property?

  Specified by:
    `hasParentProperty` in interface `ComponentTuplizer`
  Returns:
    True if the component does contain a parent property; false otherwise.

### isMethodOf

    public boolean isMethodOf(Method method)

  Description copied from interface: `ComponentTuplizer`
  Is the given method available via the managed component as a property getter?

  Specified by:
    `isMethodOf` in interface `ComponentTuplizer`
  Parameters:
    `method` - The method which to check against the managed component.
  Returns:
    True if the managed component is available from the managed component; else false.

### setParent

    public void setParent(Object component,
                          Object parent,
                          SessionFactoryImplementor factory)

  Description copied from interface: `ComponentTuplizer`
  Set the value of the parent property.

  Specified by:
    `setParent` in interface `ComponentTuplizer`
  Parameters:
    `component` - The component instance on which to set the parent.
    `parent` - The parent to be set on the comonent.
    `factory` - The current session factory.

### getGetter

    public Getter getGetter(int i)

  Description copied from interface: `Tuplizer`
  Retrieve the getter for the specified property.

  Specified by:
    `getGetter` in interface `Tuplizer`
  Parameters:
    `i` - The property index.
  Returns:
    The property getter.

Copyright © 2001-2010 Red Hat, Inc. All Rights Reserved.