com.vladmihalcea.hibernate.type.array
Class EnumArrayType

java.lang.Object
  extended by org.hibernate.type.AbstractStandardBasicType<T>
      extended by org.hibernate.type.AbstractSingleColumnStandardBasicType<T>
          extended by com.vladmihalcea.hibernate.type.AbstractHibernateType<T>
              extended by com.vladmihalcea.hibernate.type.array.internal.AbstractArrayType<Enum[]>
                  extended by com.vladmihalcea.hibernate.type.array.EnumArrayType
All Implemented Interfaces:
Serializable, org.hibernate.type.BasicType, org.hibernate.type.ProcedureParameterExtractionAware<Enum[]>, org.hibernate.type.SingleColumnType<Enum[]>, org.hibernate.type.StringRepresentableType<Enum[]>, org.hibernate.type.Type, org.hibernate.type.XmlRepresentableType<Enum[]>, org.hibernate.usertype.DynamicParameterizedType, org.hibernate.usertype.ParameterizedType

public class EnumArrayType
extends AbstractArrayType<Enum[]>

Maps an Enum[] array on a database ARRAY type. Multidimensional arrays are supported as well, as explained in this article.

The SQL_ARRAY_TYPE parameter is used to define the enum type name in the database.

For more details about how to use it, check out this article on vladmihalcea.com.

Author:
Nazir El-Kayssi, Vlad Mihalcea
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from interface org.hibernate.usertype.DynamicParameterizedType
org.hibernate.usertype.DynamicParameterizedType.ParameterType
 
Field Summary
static EnumArrayType INSTANCE
           
 
Fields inherited from class com.vladmihalcea.hibernate.type.array.internal.AbstractArrayType
SQL_ARRAY_TYPE
 
Fields inherited from interface org.hibernate.usertype.DynamicParameterizedType
ACCESS_TYPE, ENTITY, IS_DYNAMIC, IS_PRIMARY_KEY, PARAMETER_TYPE, PROPERTY, RETURNED_CLASS, XPROPERTY
 
Constructor Summary
EnumArrayType()
           
EnumArrayType(Configuration configuration)
           
 
Method Summary
 String getName()
           
 void setParameterValues(Properties parameters)
           
 
Methods inherited from class com.vladmihalcea.hibernate.type.AbstractHibernateType
getConfiguration
 
Methods inherited from class org.hibernate.type.AbstractSingleColumnStandardBasicType
nullSafeSet, sqlType
 
Methods inherited from class org.hibernate.type.AbstractStandardBasicType
assemble, beforeAssemble, canDoExtraction, compare, deepCopy, deepCopy, defaultSizes, dictatedSizes, disassemble, extract, extract, fromString, fromStringValue, fromXMLNode, fromXMLString, get, getColumnSpan, getDefaultSize, getDictatedSize, getHashCode, getHashCode, getJavaTypeDescriptor, getMutabilityPlan, getRegistrationKeys, getReplacement, getReturnedClass, getSemiResolvedType, getSqlTypeDescriptor, hydrate, isAnyType, isAssociationType, isCollectionType, isComponentType, isDirty, isDirty, isDirty, isEntityType, isEqual, isEqual, isModified, isMutable, isSame, isXMLElement, nullSafeGet, nullSafeGet, nullSafeGet, nullSafeGet, nullSafeSet, nullSafeSet, registerUnderJavaType, remapSqlTypeDescriptor, replace, replace, resolve, semiResolve, set, setJavaTypeDescriptor, setSqlTypeDescriptor, setToXMLNode, sqlTypes, toColumnNullness, toLoggableString, toString, toXMLString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.hibernate.type.SingleColumnType
fromStringValue, get, nullSafeGet, set, toString
 
Methods inherited from interface org.hibernate.type.Type
assemble, beforeAssemble, compare, deepCopy, defaultSizes, dictatedSizes, disassemble, fromXMLNode, getColumnSpan, getHashCode, getHashCode, getReturnedClass, getSemiResolvedType, hydrate, isAnyType, isAssociationType, isCollectionType, isComponentType, isDirty, isDirty, isEntityType, isEqual, isEqual, isModified, isMutable, isSame, isXMLElement, nullSafeGet, nullSafeGet, nullSafeSet, replace, replace, resolve, semiResolve, setToXMLNode, sqlTypes, toColumnNullness, toLoggableString
 

Field Detail

INSTANCE

public static final EnumArrayType INSTANCE
Constructor Detail

EnumArrayType

public EnumArrayType()

EnumArrayType

public EnumArrayType(Configuration configuration)
Method Detail

getName

public String getName()

setParameterValues

public void setParameterValues(Properties parameters)
Specified by:
setParameterValues in interface org.hibernate.usertype.ParameterizedType
Overrides:
setParameterValues in class AbstractArrayType<Enum[]>


Copyright © 2022. All rights reserved.