org.hibernate.usertype

Interface UserCollectionType

public interface UserCollectionType

A custom type for mapping user-written classes that implement PersistentCollection
Author:
Gavin King
See Also:
PersistentCollection

Method Summary

boolean
contains(Object collection, Object entity)
Optional operation.
Iterator
getElementsIterator(Object collection)
Return an iterator over the elements of this collection - the passed collection instance may or may not be a wrapper
Object
indexOf(Object collection, Object entity)
Optional operation.
Object
instantiate(int anticipatedSize)
Instantiate an empty instance of the "underlying" collection (not a wrapper), but with the given anticipated size (i.e.
PersistentCollection
instantiate(SessionImplementor session, CollectionPersister persister)
Instantiate an uninitialized instance of the collection wrapper
Object
replaceElements(Object original, Object target, CollectionPersister persister, Object owner, Map copyCache, SessionImplementor session)
Replace the elements of a collection with the elements of another collection
PersistentCollection
wrap(SessionImplementor session, Object collection)
Wrap an instance of a collection

Method Details

contains

public boolean contains(Object collection,
                        Object entity)
Optional operation. Does the collection contain the entity instance?

getElementsIterator

public Iterator getElementsIterator(Object collection)
Return an iterator over the elements of this collection - the passed collection instance may or may not be a wrapper

indexOf

public Object indexOf(Object collection,
                      Object entity)
Optional operation. Return the index of the entity in the collection.

instantiate

public Object instantiate(int anticipatedSize)
Instantiate an empty instance of the "underlying" collection (not a wrapper), but with the given anticipated size (i.e. accounting for initial size and perhaps load factor).
Parameters:
anticipatedSize - The anticipated size of the instaniated collection after we are done populating it. Note, may be negative to indicate that we not yet know anything about the anticipated size (i.e., when initializing from a result set row by row).

instantiate

public PersistentCollection instantiate(SessionImplementor session,
                                        CollectionPersister persister)
            throws HibernateException
Instantiate an uninitialized instance of the collection wrapper

replaceElements

public Object replaceElements(Object original,
                              Object target,
                              CollectionPersister persister,
                              Object owner,
                              Map copyCache,
                              SessionImplementor session)
            throws HibernateException
Replace the elements of a collection with the elements of another collection

wrap

public PersistentCollection wrap(SessionImplementor session,
                                 Object collection)
Wrap an instance of a collection