📄 usercollectiontype.java
字号:
//$Id: UserCollectionType.java 10086 2006-07-05 18:17:27Z steve.ebersole@jboss.com $package org.hibernate.usertype;import java.util.Iterator;import java.util.Map;import org.hibernate.HibernateException;import org.hibernate.collection.PersistentCollection;import org.hibernate.engine.SessionImplementor;import org.hibernate.persister.collection.CollectionPersister;/** * A custom type for mapping user-written classes that implement <tt>PersistentCollection</tt> * * @see org.hibernate.collection.PersistentCollection * @author Gavin King */public interface UserCollectionType { /** * Instantiate an uninitialized instance of the collection wrapper */ public PersistentCollection instantiate(SessionImplementor session, CollectionPersister persister) throws HibernateException; /** * Wrap an instance of a collection */ public PersistentCollection wrap(SessionImplementor session, Object collection); /** * Return an iterator over the elements of this collection - the passed collection * instance may or may not be a wrapper */ public Iterator getElementsIterator(Object collection); /** * Optional operation. Does the collection contain the entity instance? */ public boolean contains(Object collection, Object entity); /** * Optional operation. Return the index of the entity in the collection. */ public Object indexOf(Object collection, Object entity); /** * Replace the elements of a collection with the elements of another collection */ public Object replaceElements( Object original, Object target, CollectionPersister persister, Object owner, Map copyCache, SessionImplementor session) throws HibernateException; /** * 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). * * @param 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). */ public Object instantiate(int anticipatedSize); }
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -