ar.com.jiji.kaya.hibernate
Class EnumUserType

java.lang.Object
  extended by ar.com.jiji.kaya.hibernate.EnumUserType
All Implemented Interfaces:
org.hibernate.usertype.EnhancedUserType, org.hibernate.usertype.ParameterizedType, org.hibernate.usertype.UserType

public class EnumUserType
extends java.lang.Object
implements org.hibernate.usertype.EnhancedUserType, org.hibernate.usertype.ParameterizedType

Para persistir un enum del 5.0 con Hibernate. Copiado de http://www.hibernate.org/272.html Para mapear el property que sea un enum usar:

    <property name='suit'>
      <type name="EnumUserType">
        <param name="enumClassName">com.company.project.Suit</param>
      </type>
    </property>
 
O tambien:
   <typedef name="suit" class='EnumUserType'>
       <param name="enumClassName">com.company.project.Suit</param>
   </typedef>
  
   <class ...>
     <property name='suit' type='suit'/>
   </class>
 

Author:
Gavin King

Constructor Summary
EnumUserType()
           
 
Method Summary
 java.lang.Object assemble(java.io.Serializable cached, java.lang.Object owner)
           
 java.lang.Object deepCopy(java.lang.Object value)
           
 java.io.Serializable disassemble(java.lang.Object value)
           
 boolean equals(java.lang.Object x, java.lang.Object y)
           
 java.lang.Object fromXMLString(java.lang.String xmlValue)
           
 int hashCode(java.lang.Object x)
           
 boolean isMutable()
           
 java.lang.Object nullSafeGet(java.sql.ResultSet rs, java.lang.String[] names, java.lang.Object owner)
           
 void nullSafeSet(java.sql.PreparedStatement st, java.lang.Object value, int index)
           
 java.lang.String objectToSQLString(java.lang.Object value)
           
 java.lang.Object replace(java.lang.Object original, java.lang.Object target, java.lang.Object owner)
           
 java.lang.Class returnedClass()
           
 void setParameterValues(java.util.Properties parameters)
           
 int[] sqlTypes()
           
 java.lang.String toXMLString(java.lang.Object value)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

EnumUserType

public EnumUserType()
Method Detail

setParameterValues

public void setParameterValues(java.util.Properties parameters)
Specified by:
setParameterValues in interface org.hibernate.usertype.ParameterizedType

assemble

public java.lang.Object assemble(java.io.Serializable cached,
                                 java.lang.Object owner)
                          throws org.hibernate.HibernateException
Specified by:
assemble in interface org.hibernate.usertype.UserType
Throws:
org.hibernate.HibernateException

deepCopy

public java.lang.Object deepCopy(java.lang.Object value)
                          throws org.hibernate.HibernateException
Specified by:
deepCopy in interface org.hibernate.usertype.UserType
Throws:
org.hibernate.HibernateException

disassemble

public java.io.Serializable disassemble(java.lang.Object value)
                                 throws org.hibernate.HibernateException
Specified by:
disassemble in interface org.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:
equals in interface org.hibernate.usertype.UserType
Throws:
org.hibernate.HibernateException

hashCode

public int hashCode(java.lang.Object x)
             throws org.hibernate.HibernateException
Specified by:
hashCode in interface org.hibernate.usertype.UserType
Throws:
org.hibernate.HibernateException

isMutable

public boolean isMutable()
Specified by:
isMutable in interface org.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:
nullSafeGet in interface org.hibernate.usertype.UserType
Throws:
org.hibernate.HibernateException
java.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:
nullSafeSet in interface org.hibernate.usertype.UserType
Throws:
org.hibernate.HibernateException
java.sql.SQLException

replace

public java.lang.Object replace(java.lang.Object original,
                                java.lang.Object target,
                                java.lang.Object owner)
                         throws org.hibernate.HibernateException
Specified by:
replace in interface org.hibernate.usertype.UserType
Throws:
org.hibernate.HibernateException

returnedClass

public java.lang.Class returnedClass()
Specified by:
returnedClass in interface org.hibernate.usertype.UserType

sqlTypes

public int[] sqlTypes()
Specified by:
sqlTypes in interface org.hibernate.usertype.UserType

fromXMLString

public java.lang.Object fromXMLString(java.lang.String xmlValue)
Specified by:
fromXMLString in interface org.hibernate.usertype.EnhancedUserType

objectToSQLString

public java.lang.String objectToSQLString(java.lang.Object value)
Specified by:
objectToSQLString in interface org.hibernate.usertype.EnhancedUserType

toXMLString

public java.lang.String toXMLString(java.lang.Object value)
Specified by:
toXMLString in interface org.hibernate.usertype.EnhancedUserType


Copyright © 2006 Kaya. All Rights Reserved.