com.atlassian.crowd.util.persistence.hibernate
Class EmptyStringUserType

java.lang.Object
  extended by com.atlassian.crowd.util.persistence.hibernate.EmptyStringUserType
All Implemented Interfaces:
org.hibernate.usertype.UserType

public class EmptyStringUserType
extends Object
implements org.hibernate.usertype.UserType

This class will convert NULL values retrieved from the database into EMPTY_STRING. This is required since Oracle treats EMPTY_STRING as NULL. (http://download-west.oracle.com/docs/cd/B12037_01/server.101/b10759/sql_elements005.htm) This class will not change how values are stored into the database. Code was based on: https://www.hibernate.org/169.html (2nd example)


Constructor Summary
EmptyStringUserType()
           
 
Method Summary
 Object assemble(Serializable arg0, Object arg1)
           
 Object deepCopy(Object x)
           
 Serializable disassemble(Object value)
           
 boolean equals(Object x, Object y)
           
 int hashCode(Object arg0)
           
 boolean isMutable()
           
 Object nullSafeGet(ResultSet rs, String[] names, Object owner)
           
 void nullSafeSet(PreparedStatement st, Object value, int index)
           
 Object replace(Object arg0, Object arg1, Object arg2)
           
 Class returnedClass()
           
 int[] sqlTypes()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

EmptyStringUserType

public EmptyStringUserType()
Method Detail

sqlTypes

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

returnedClass

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

equals

public boolean equals(Object x,
                      Object y)
Specified by:
equals in interface org.hibernate.usertype.UserType

deepCopy

public Object deepCopy(Object x)
Specified by:
deepCopy in interface org.hibernate.usertype.UserType

isMutable

public boolean isMutable()
Specified by:
isMutable in interface org.hibernate.usertype.UserType

nullSafeGet

public Object nullSafeGet(ResultSet rs,
                          String[] names,
                          Object owner)
                   throws org.hibernate.HibernateException,
                          SQLException
Specified by:
nullSafeGet in interface org.hibernate.usertype.UserType
Throws:
org.hibernate.HibernateException
SQLException

nullSafeSet

public void nullSafeSet(PreparedStatement st,
                        Object value,
                        int index)
                 throws org.hibernate.HibernateException,
                        SQLException
Specified by:
nullSafeSet in interface org.hibernate.usertype.UserType
Throws:
org.hibernate.HibernateException
SQLException

assemble

public Object assemble(Serializable arg0,
                       Object arg1)
                throws org.hibernate.HibernateException
Specified by:
assemble in interface org.hibernate.usertype.UserType
Throws:
org.hibernate.HibernateException

disassemble

public Serializable disassemble(Object value)
Specified by:
disassemble in interface org.hibernate.usertype.UserType

hashCode

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

replace

public Object replace(Object arg0,
                      Object arg1,
                      Object arg2)
               throws org.hibernate.HibernateException
Specified by:
replace in interface org.hibernate.usertype.UserType
Throws:
org.hibernate.HibernateException


Copyright © 2012 Atlassian. All Rights Reserved.