Package org.hibernate.type
Class ArrayType
- java.lang.Object
- org.hibernate.type.AbstractType
- org.hibernate.type.CollectionType
- org.hibernate.type.ArrayType
- All Implemented Interfaces:
Serializable,AssociationType,Type
public classArrayTypeextendsCollectionType
A type for persistent arrays.- See Also:
- Serialized Form
Field Summary
Fields inherited from class org.hibernate.type.CollectionType
UNFETCHED_COLLECTION
Fields inherited from class org.hibernate.type.AbstractType
LEGACY_DEFAULT_SIZE,LEGACY_DICTATED_SIZE
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description CollectionClassificationgetCollectionClassification()Iterator<?>getElementsIterator(Object collection)Not defined for collections of primitive typeClass<?>getReturnedClass()The class handled by this type.booleanhasHolder()ObjectindexOf(Object array,Object element)protected booleaninitializeImmediately()Objectinstantiate(int anticipatedSize)Instantiate an empty instance of the "underlying" collection (not a wrapper), but with the given anticipated size (i.e.PersistentCollection<?>instantiate(SharedSessionContractImplementor session,CollectionPersister persister,Object key)Instantiate an uninitialized collection wrapper or holder.ObjectinstantiateResult(Object original)Instantiate a new "underlying" collection exhibiting the same capacity characteristics and the passed "original".booleanisArrayType()ObjectreplaceElements(Object original,Object target,Object owner,Map copyCache,SharedSessionContractImplementor session)Replace the elements of a collection with the elements of another collection.StringtoLoggableString(Object value,SessionFactoryImplementor factory)Generate a representation of the given value for logging purposes.PersistentCollection<?>wrap(SharedSessionContractImplementor session,Object array)Wrap the naked collection instance in a wrapper, or instantiate a holder.Methods inherited from class org.hibernate.type.CollectionType
assemble,compare,compare,contains,deepCopy,disassemble,disassemble,getAssociatedEntityName,getAssociatedJoinable,getCollection,getColumnSpan,getElementsIterator,getElementType,getForeignKeyDirection,getHashCode,getIdOfOwnerOrNull,getKeyOfOwner,getLHSPropertyName,getName,getRHSUniqueKeyPropertyName,getRole,getSqlTypeCodes,isAlwaysDirtyChecked,isAssociationType,isCollectionType,isDirty,isDirty,isEqual,isInverse,isModified,isMutable,nullSafeSet,nullSafeSet,renderLoggableString,replace,toColumnNullness,toString,useLHSPrimaryKey
Methods inherited from class org.hibernate.type.AbstractType
beforeAssemble,getHashCode,isAnyType,isComponentType,isEntityType,isEqual,isSame,replace
Methods inherited from class java.lang.Object
clone,equals,finalize,getClass,hashCode,notify,notifyAll,wait,wait,wait
Methods inherited from interface org.hibernate.type.Type
beforeAssemble,getHashCode,getReturnedClassName,getTypeForEqualsHashCode,isAnyType,isComponentType,isEntityType,isEqual,isSame,replace
Method Detail
getReturnedClass
public Class<?> getReturnedClass()
Description copied from interface:TypeThe class handled by this type.- Returns:
- The Java class handled by this type.
getCollectionClassification
public CollectionClassification getCollectionClassification()
- Specified by:
getCollectionClassificationin classCollectionType
instantiate
public PersistentCollection<?> instantiate(SharedSessionContractImplementor session,CollectionPersister persister,Object key) throwsHibernateException
Description copied from class:CollectionTypeInstantiate an uninitialized collection wrapper or holder. Callers MUST add the holder to the persistence context!- Specified by:
instantiatein classCollectionType- Parameters:
session- The session from which the request is originating.persister- The underlying collection persister (metadata)key- The owner key.- Returns:
- The instantiated collection.
- Throws:
HibernateException
getElementsIterator
public Iterator<?> getElementsIterator(Object collection)
Not defined for collections of primitive type- Overrides:
getElementsIteratorin classCollectionType- Parameters:
collection- The collection to be iterated- Returns:
- The element iterator
wrap
public PersistentCollection<?> wrap(SharedSessionContractImplementor session,Object array)
Description copied from class:CollectionTypeWrap the naked collection instance in a wrapper, or instantiate a holder. CallersMUST add the holder to the persistence context!- Specified by:
wrapin classCollectionType- Parameters:
session- The session from which the request is originating.array- The bare collection to be wrapped.- Returns:
- The wrapped collection.
isArrayType
public boolean isArrayType()
- Overrides:
isArrayTypein classCollectionType
toLoggableString
public String toLoggableString(Object value,SessionFactoryImplementor factory) throwsHibernateException
Description copied from interface:TypeGenerate a representation of the given value for logging purposes.- Specified by:
toLoggableStringin interfaceType- Overrides:
toLoggableStringin classCollectionType- Parameters:
value- The value to be loggedfactory- The session factory- Returns:
- The loggable representation
- Throws:
HibernateException- An error from Hibernate
instantiateResult
public Object instantiateResult(Object original)
Description copied from class:CollectionTypeInstantiate a new "underlying" collection exhibiting the same capacity characteristics and the passed "original".- Overrides:
instantiateResultin classCollectionType- Parameters:
original- The original collection.- Returns:
- The newly instantiated collection.
replaceElements
public Object replaceElements(Object original,Object target,Object owner,Map copyCache,SharedSessionContractImplementor session) throwsHibernateException
Description copied from class:CollectionTypeReplace the elements of a collection with the elements of another collection.- Overrides:
replaceElementsin classCollectionType- Parameters:
original- The 'source' of the replacement elements (where we copy from)target- The target of the replacement elements (where we copy to)owner- The owner of the collection being mergedcopyCache- The map of elements already replaced.session- The session from which the merge event originated.- Returns:
- The merged collection.
- Throws:
HibernateException
instantiate
public Object instantiate(int anticipatedSize)
Description copied from class:CollectionTypeInstantiate an empty instance of the "underlying" collection (not a wrapper), but with the given anticipated size (i.e. accounting for initial capacity and perhaps load factor).- Specified by:
instantiatein classCollectionType- Parameters:
anticipatedSize- The anticipated size of the instantiated collection after we are done populating it.- Returns:
- A newly instantiated collection to be wrapped.
indexOf
public Object indexOf(Object array,Object element)
- Overrides:
indexOfin classCollectionType
initializeImmediately
protected boolean initializeImmediately()
- Overrides:
initializeImmediatelyin classCollectionType
hasHolder
public boolean hasHolder()
- Overrides:
hasHolderin classCollectionType