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.
See Also:
  • Field Details

    • 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 Details

    • AbstractComponentTuplizer

      protected AbstractComponentTuplizer(Component component)
  • Method Details

    • 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.