edu.nrao.sss.dao
Class BaseEnumConverter<E extends Enum<E>>

java.lang.Object
  extended by edu.nrao.sss.dao.BaseEnumConverter<E>
All Implemented Interfaces:
org.hibernate.usertype.UserType
Direct Known Subclasses:
AlterationStatusConverter, AntennaSelectionMethodConverter, AntennaSpecifierConverter, AntennaWrapConverter, ArcUnitsConverter, BandwidthCodeConverter, BrightnessDistributionConverter, CelestialCoordinateSystemConverter, CorrelatorModeConverter, DistanceUnitsConverter, EpochConverter, EventSetStatusConverter, EventStatusConverter, FluxDensityUnitsConverter, FrequencyUnitsConverter, JustificationFileTypeConverter, ObservingTypeConverter, PolarizationTypeConverter, PositionTypeConverter, ProjectTypeConverter, ProposalStatusConverter, ProposalTypeConverter, ReceiverBandConverter, ScanIntentConverter, ScanModeConverter, ScanTimeTypeConverter, SchedulingTypeConverter, ScientificPriorityConverter, ScientificTypeConverter, ServiceCalibrationTimingConverter, StokesParameterConverter, SupportTypeConverter, TelescopeConfigurationConverter, TelescopeTypeConverter, TimeUnitsConverter, TippingOrderConverter, VelocityConventionConverter, VelocityFrameConverter

public class BaseEnumConverter<E extends Enum<E>>
extends Object
implements org.hibernate.usertype.UserType

This is a base class that implements Hibernate's UserType. The class must be subclassed in order to be used as a UserType. To create a UserType that will convert between a VARCHAR and your java enumeration, say MyEnum, do the following:


 public class MyEnumConverter extends BaseEnumConverter
 {
        public MyEnumConverter()
        {
                super(my.package.MyEnum.class);
        }
 }
 

MyEnumConverter will be able to automatically convert types in MyEnum to and from database VARCHAR's.


Constructor Summary
protected BaseEnumConverter(Class<E> c)
           
 
Method Summary
 Object assemble(Serializable cached, Object owner)
           
 Object deepCopy(Object value)
           
 Serializable disassemble(Object value)
           
 boolean equals(Object x, Object y)
           
 int hashCode(Object x)
           
 boolean isMutable()
           
 Object nullSafeGet(ResultSet resultSet, String[] names, Object owner)
           
 void nullSafeSet(PreparedStatement preparedStatement, Object value, int index)
           
 Object replace(Object original, Object target, Object owner)
           
 Class<?> returnedClass()
           
 int[] sqlTypes()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

BaseEnumConverter

protected BaseEnumConverter(Class<E> c)
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

nullSafeGet

public Object nullSafeGet(ResultSet resultSet,
                          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 preparedStatement,
                        Object value,
                        int index)
                 throws org.hibernate.HibernateException,
                        SQLException
Specified by:
nullSafeSet in interface org.hibernate.usertype.UserType
Throws:
org.hibernate.HibernateException
SQLException

deepCopy

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

isMutable

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

assemble

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

disassemble

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

replace

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

hashCode

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

equals

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


Copyright © 2009. All Rights Reserved.