FileDocCategorySizeDatePackage
Tuplizer.javaAPI DocHibernate 3.2.53358Thu Jul 13 19:09:20 BST 2006org.hibernate.tuple

Tuplizer

public interface Tuplizer
A tuplizer defines the contract for things which know how to manage a particular representation of a piece of data, given that representation's {@link org.hibernate.EntityMode} (the entity-mode essentially defining which representation).

If that given piece of data is thought of as a data structure, then a tuplizer is the thing which knows how to
  • create such a data structure appropriately
  • extract values from and inject values into such a data structure

For example, a given piece of data might be represented as a POJO class. Here, it's representation and entity-mode is POJO. Well a tuplizer for POJO entity-modes would know how to
  • create the data structure by calling the POJO's constructor
  • extract and inject values through getters/setter, or by direct field access, etc

That same piece of data might also be represented as a DOM structure, using the tuplizer associated with the DOM4J entity-mode, which would generate instances of {@link org.dom4j.Element} as the data structure and know how to access the values as either nested {@link org.dom4j.Element}s or as {@link org.dom4j.Attribute}s.
see
org.hibernate.tuple.entity.EntityTuplizer
see
org.hibernate.tuple.component.ComponentTuplizer
author
Steve Ebersole

Fields Summary
Constructors Summary
Methods Summary
public java.lang.ClassgetMappedClass()
Return the pojo class managed by this tuplizer.

Need to determine how to best handle this for the Tuplizers for EntityModes other than POJO.

todo : be really nice to not have this here since it is essentially pojo specific...

return
The persistent class.

public java.lang.ObjectgetPropertyValue(java.lang.Object entity, int i)
Extract the value of a particular property from the given entity.

param
entity The entity from which to extract the property value.
param
i The index of the property for which to extract the value.
return
The current value of the given property on the given entity.
throws
HibernateException

public java.lang.Object[]getPropertyValues(java.lang.Object entity)
Extract the current values contained on the given entity.

param
entity The entity from which to extract values.
return
The current property values.
throws
HibernateException

public java.lang.Objectinstantiate()
Generate a new, empty entity.

return
The new, empty entity instance.
throws
HibernateException

public booleanisInstance(java.lang.Object object)
Is the given object considered an instance of the the entity (acconting for entity-mode) managed by this tuplizer.

param
object The object to be checked.
return
True if the object is considered as an instance of this entity within the given mode.

public voidsetPropertyValues(java.lang.Object entity, java.lang.Object[] values)
Inject the given values into the given entity.

param
entity The entity.
param
values The values to be injected.
throws
HibernateException