Package com.jalios.jcms.db
Class GenericEnumUserType
- java.lang.Object
-
- com.jalios.jcms.db.GenericEnumUserType
-
- All Implemented Interfaces:
org.hibernate.usertype.ParameterizedType,org.hibernate.usertype.UserType
public class GenericEnumUserType extends java.lang.Object implements org.hibernate.usertype.UserType, org.hibernate.usertype.ParameterizedTypeIf you need to map Java 5 Enums to Hibernate using JPA annotations this is what you are looking for.Example:
<hibernate-mapping> <typedef name="documentTypeEnum" class="com.jalios.jcms.db.GenericEnumUserType"> <param name="enumClass">com.jalios.jcmsplugin.myplugin.DocumentType</param> <!--<param name="identifierMethod">toInt</param>--> <!--default: name--> <!--<param name="valueOfMethod">fromInt</param>--> <!--default: valueOf--> </typedef> ... <property name="documentType" type="documentTypeEnum" /> <hibernate-mapping>
-
-
Constructor Summary
Constructors Constructor Description GenericEnumUserType()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.Objectassemble(java.io.Serializable cached, java.lang.Object owner)java.lang.ObjectdeepCopy(java.lang.Object value)java.io.Serializabledisassemble(java.lang.Object value)booleanequals(java.lang.Object x, java.lang.Object y)inthashCode(java.lang.Object x)booleanisMutable()java.lang.ObjectnullSafeGet(java.sql.ResultSet rs, java.lang.String[] names, java.lang.Object owner)voidnullSafeSet(java.sql.PreparedStatement st, java.lang.Object value, int index)java.lang.Objectreplace(java.lang.Object original, java.lang.Object target, java.lang.Object owner)java.lang.ClassreturnedClass()voidsetParameterValues(java.util.Properties parameters)int[]sqlTypes()
-
-
-
Method Detail
-
setParameterValues
public void setParameterValues(java.util.Properties parameters)
- Specified by:
setParameterValuesin interfaceorg.hibernate.usertype.ParameterizedType
-
returnedClass
public java.lang.Class returnedClass()
- Specified by:
returnedClassin interfaceorg.hibernate.usertype.UserType
-
nullSafeGet
public java.lang.Object nullSafeGet(java.sql.ResultSet rs, java.lang.String[] names, java.lang.Object owner) throws org.hibernate.HibernateException, java.sql.SQLException- Specified by:
nullSafeGetin interfaceorg.hibernate.usertype.UserType- Throws:
org.hibernate.HibernateExceptionjava.sql.SQLException
-
nullSafeSet
public void nullSafeSet(java.sql.PreparedStatement st, java.lang.Object value, int index) throws org.hibernate.HibernateException, java.sql.SQLException- Specified by:
nullSafeSetin interfaceorg.hibernate.usertype.UserType- Throws:
org.hibernate.HibernateExceptionjava.sql.SQLException
-
sqlTypes
public int[] sqlTypes()
- Specified by:
sqlTypesin interfaceorg.hibernate.usertype.UserType
-
assemble
public java.lang.Object assemble(java.io.Serializable cached, java.lang.Object owner) throws org.hibernate.HibernateException- Specified by:
assemblein interfaceorg.hibernate.usertype.UserType- Throws:
org.hibernate.HibernateException
-
deepCopy
public java.lang.Object deepCopy(java.lang.Object value) throws org.hibernate.HibernateException- Specified by:
deepCopyin interfaceorg.hibernate.usertype.UserType- Throws:
org.hibernate.HibernateException
-
disassemble
public java.io.Serializable disassemble(java.lang.Object value) throws org.hibernate.HibernateException- Specified by:
disassemblein interfaceorg.hibernate.usertype.UserType- Throws:
org.hibernate.HibernateException
-
equals
public boolean equals(java.lang.Object x, java.lang.Object y) throws org.hibernate.HibernateException- Specified by:
equalsin interfaceorg.hibernate.usertype.UserType- Throws:
org.hibernate.HibernateException
-
hashCode
public int hashCode(java.lang.Object x) throws org.hibernate.HibernateException- Specified by:
hashCodein interfaceorg.hibernate.usertype.UserType- Throws:
org.hibernate.HibernateException
-
isMutable
public boolean isMutable()
- Specified by:
isMutablein interfaceorg.hibernate.usertype.UserType
-
replace
public java.lang.Object replace(java.lang.Object original, java.lang.Object target, java.lang.Object owner) throws org.hibernate.HibernateException- Specified by:
replacein interfaceorg.hibernate.usertype.UserType- Throws:
org.hibernate.HibernateException
-
-