Class OrdinalCodeEnumValueConverter<E extends net.binis.codegen.objects.base.enumeration.CodeEnum>

java.lang.Object
net.binis.codegen.hibernate.OrdinalCodeEnumValueConverter<E>
All Implemented Interfaces:
Serializable, CodeEnumValueConverter<E,Number>, org.hibernate.type.descriptor.converter.spi.BasicValueConverter<E,Number>

public class OrdinalCodeEnumValueConverter<E extends net.binis.codegen.objects.base.enumeration.CodeEnum> extends Object implements CodeEnumValueConverter<E,Number>, Serializable
BasicValueConverter handling the conversion of an enum based on JPA EnumType.ORDINAL strategy (storing the ordinal)
Author:
Steve Ebersole
See Also:
  • Constructor Details

    • OrdinalCodeEnumValueConverter

      public OrdinalCodeEnumValueConverter(CodeEnumJavaType<E> enumJavaType, org.hibernate.type.descriptor.jdbc.JdbcType jdbcType, org.hibernate.type.descriptor.java.JavaType<Number> relationalJavaType)
  • Method Details

    • toDomainValue

      public E toDomainValue(Number relationalForm)
      Specified by:
      toDomainValue in interface org.hibernate.type.descriptor.converter.spi.BasicValueConverter<E extends net.binis.codegen.objects.base.enumeration.CodeEnum,Number>
    • toRelationalValue

      public Number toRelationalValue(E domainForm)
      Specified by:
      toRelationalValue in interface org.hibernate.type.descriptor.converter.spi.BasicValueConverter<E extends net.binis.codegen.objects.base.enumeration.CodeEnum,Number>
    • getJdbcTypeCode

      public int getJdbcTypeCode()
      Specified by:
      getJdbcTypeCode in interface CodeEnumValueConverter<E extends net.binis.codegen.objects.base.enumeration.CodeEnum,Number>
    • getDomainJavaType

      public CodeEnumJavaType<E> getDomainJavaType()
      Specified by:
      getDomainJavaType in interface org.hibernate.type.descriptor.converter.spi.BasicValueConverter<E extends net.binis.codegen.objects.base.enumeration.CodeEnum,Number>
      Specified by:
      getDomainJavaType in interface CodeEnumValueConverter<E extends net.binis.codegen.objects.base.enumeration.CodeEnum,Number>
    • getRelationalJavaType

      public org.hibernate.type.descriptor.java.JavaType<Number> getRelationalJavaType()
      Specified by:
      getRelationalJavaType in interface org.hibernate.type.descriptor.converter.spi.BasicValueConverter<E extends net.binis.codegen.objects.base.enumeration.CodeEnum,Number>
    • toSqlLiteral

      public String toSqlLiteral(Object value)
      Specified by:
      toSqlLiteral in interface CodeEnumValueConverter<E extends net.binis.codegen.objects.base.enumeration.CodeEnum,Number>
    • writeValue

      public void writeValue(PreparedStatement statement, E value, int position, org.hibernate.engine.spi.SharedSessionContractImplementor session) throws SQLException
      Specified by:
      writeValue in interface CodeEnumValueConverter<E extends net.binis.codegen.objects.base.enumeration.CodeEnum,Number>
      Throws:
      SQLException