public class PersistentArrayHolder extends AbstractPersistentCollection
AbstractPersistentCollection.AbstractValueDelayedOperation, AbstractPersistentCollection.DelayedOperation, AbstractPersistentCollection.IteratorProxy, AbstractPersistentCollection.LazyInitializationWork<T>, AbstractPersistentCollection.ListIteratorProxy, AbstractPersistentCollection.ListProxy, AbstractPersistentCollection.SetProxy, AbstractPersistentCollection.ValueDelayedOperation
Modifier and Type | Field and Description |
---|---|
protected java.lang.Object |
array |
UNKNOWN
Constructor and Description |
---|
PersistentArrayHolder(SessionImplementor session,
CollectionPersister persister)
Constructs a PersistentCollection instance for holding an array.
|
PersistentArrayHolder(SessionImplementor session,
java.lang.Object array)
Constructs a PersistentCollection instance for holding an array.
|
Modifier and Type | Method and Description |
---|---|
void |
beforeInitialize(CollectionPersister persister,
int anticipatedSize)
Called before any elements are read into the collection,
allowing appropriate initializations to occur.
|
void |
beginRead()
Called just before reading any rows from the JDBC result set
|
java.io.Serializable |
disassemble(CollectionPersister persister)
Disassemble the collection to get it ready for the cache
|
java.util.Iterator |
elements()
Get an iterator over the array elements
|
boolean |
empty()
Is the collection empty? (don't try to initialize the collection)
|
boolean |
endRead()
Called after reading all rows from the JDBC result set
|
java.util.Iterator |
entries(CollectionPersister persister)
Iterate all collection entries, during update of the database
|
boolean |
entryExists(java.lang.Object entry,
int i)
Does the given element/entry exist in the collection?
|
boolean |
equalsSnapshot(CollectionPersister persister)
Does the current state exactly match the snapshot?
|
java.lang.Object |
getArray() |
java.util.Iterator |
getDeletes(CollectionPersister persister,
boolean indexIsFormula)
Get all the elements that need deleting
|
java.lang.Object |
getElement(java.lang.Object entry)
Get the value of the given collection entry.
|
java.lang.Object |
getIndex(java.lang.Object entry,
int i,
CollectionPersister persister)
Get the index of the given collection entry
|
java.util.Collection |
getOrphans(java.io.Serializable snapshot,
java.lang.String entityName)
get all "orphaned" elements
|
java.io.Serializable |
getSnapshot(CollectionPersister persister)
Return a new snapshot of the current state of the collection
|
java.lang.Object |
getSnapshotElement(java.lang.Object entry,
int i)
Get the snapshot value of the given collection entry
|
java.lang.Object |
getValue()
Return the user-visible collection (or array) instance
|
void |
initializeFromCache(CollectionPersister persister,
java.io.Serializable disassembled,
java.lang.Object owner)
Read the state of the collection from a disassembled cached value
|
boolean |
isDirectlyAccessible()
Could the application possibly have a direct reference to
the underlying collection implementation?
|
boolean |
isSnapshotEmpty(java.io.Serializable snapshot)
Is the snapshot empty?
|
boolean |
isWrapper(java.lang.Object collection)
Is this the wrapper for the given collection instance?
|
boolean |
needsInserting(java.lang.Object entry,
int i,
Type elemType)
Do we need to insert this element?
|
boolean |
needsUpdating(java.lang.Object entry,
int i,
Type elemType)
Do we need to update this element?
|
java.lang.Object |
readFrom(java.sql.ResultSet rs,
CollectionPersister persister,
CollectionAliases descriptor,
java.lang.Object owner)
Read a row from the JDBC result set
|
afterInitialize, afterRowInsert, clearDirty, dirty, forceInitialization, getCachedSize, getIdentifier, getKey, getOrphans, getOwner, getQueuedOrphans, getRole, getSession, getSnapshot, getStoredSnapshot, hasQueuedOperations, identityRemove, initialize, isClearQueueEnabled, isConnectedToSession, isDirty, isInitialized, isInverseCollection, isInverseCollectionNoOrphanDelete, isInverseOneToManyOrNoOrphanDelete, isOperationQueueEnabled, isPutQueueEnabled, isRowUpdatePossible, isUnreferenced, needsRecreate, performQueuedOperations, postAction, preInsert, prepareForPossibleLoadingOutsideTransaction, queuedAdditionIterator, queueOperation, read, readElementByIndex, readElementExistence, readIndexExistence, readSize, replaceQueuedOperationValues, setCurrentSession, setDirectlyAccessible, setInitialized, setOwner, setSnapshot, unsetSession, wasInitialized, write
public PersistentArrayHolder(SessionImplementor session, java.lang.Object array)
session
- The sessionarray
- The array (the persistent "collection").public PersistentArrayHolder(SessionImplementor session, CollectionPersister persister)
session
- The sessionpersister
- The persister for the arraypublic java.io.Serializable getSnapshot(CollectionPersister persister) throws HibernateException
PersistentCollection
persister
- The collection persisterHibernateException
public boolean isSnapshotEmpty(java.io.Serializable snapshot)
PersistentCollection
snapshot
- The snapshot to checktrue
if the given snapshot is emptypublic java.util.Collection getOrphans(java.io.Serializable snapshot, java.lang.String entityName) throws HibernateException
PersistentCollection
getOrphans
in interface PersistentCollection
getOrphans
in class AbstractPersistentCollection
snapshot
- The snapshot stateentityName
- The name of the entity that are the elements of the collectionHibernateException
public java.lang.Object getArray()
public boolean isWrapper(java.lang.Object collection)
PersistentCollection
collection
- The collection to check whether this is wrapping ittrue
if this is a wrapper around that given collection instance.public boolean equalsSnapshot(CollectionPersister persister) throws HibernateException
PersistentCollection
persister
- The collection persistertrue
if the current state and the snapshot state match.HibernateException
public java.util.Iterator elements()
public boolean empty()
PersistentCollection
empty
in interface PersistentCollection
empty
in class AbstractPersistentCollection
false
if the collection is non-empty; true
otherwise.public java.lang.Object readFrom(java.sql.ResultSet rs, CollectionPersister persister, CollectionAliases descriptor, java.lang.Object owner) throws HibernateException, java.sql.SQLException
PersistentCollection
rs
- The JDBC ResultSetpersister
- The collection roledescriptor
- The aliases used for the columns making up the collectionowner
- The collection ownerHibernateException
- Generally indicates a problem resolving data read from the ResultSetjava.sql.SQLException
- Indicates a problem accessing the ResultSetpublic java.util.Iterator entries(CollectionPersister persister)
PersistentCollection
persister
- The collection persister.public void beginRead()
PersistentCollection
beginRead
in interface PersistentCollection
beginRead
in class AbstractPersistentCollection
public boolean endRead()
PersistentCollection
endRead
in interface PersistentCollection
endRead
in class AbstractPersistentCollection
public void beforeInitialize(CollectionPersister persister, int anticipatedSize)
PersistentCollection
persister
- The underlying collection persister.anticipatedSize
- The anticipated size of the collection after initialization is complete.public boolean isDirectlyAccessible()
PersistentCollection
isDirectlyAccessible
in interface PersistentCollection
isDirectlyAccessible
in class AbstractPersistentCollection
true
indicates that the application might have access to the underlying collection/array.public void initializeFromCache(CollectionPersister persister, java.io.Serializable disassembled, java.lang.Object owner) throws HibernateException
PersistentCollection
persister
- The collection persisterdisassembled
- The disassembled cached stateowner
- The collection ownerHibernateException
public java.io.Serializable disassemble(CollectionPersister persister) throws HibernateException
PersistentCollection
persister
- The collection persisterHibernateException
public java.lang.Object getValue()
PersistentCollection
getValue
in interface PersistentCollection
getValue
in class AbstractPersistentCollection
public java.util.Iterator getDeletes(CollectionPersister persister, boolean indexIsFormula) throws HibernateException
PersistentCollection
persister
- The collection persisterindexIsFormula
- For indexed collections, tells whether the index is a formula (calculated value) mappingHibernateException
public boolean needsInserting(java.lang.Object entry, int i, Type elemType) throws HibernateException
PersistentCollection
entry
- The collection element to checki
- The index (for indexed collections)elemType
- The type for the elementtrue
if the element needs insertingHibernateException
public boolean needsUpdating(java.lang.Object entry, int i, Type elemType) throws HibernateException
PersistentCollection
entry
- The collection element to checki
- The index (for indexed collections)elemType
- The type for the elementtrue
if the element needs updatingHibernateException
public java.lang.Object getIndex(java.lang.Object entry, int i, CollectionPersister persister)
PersistentCollection
entry
- The collection entry/elementi
- The assumed indexpersister
- it was more elegant before we added this...public java.lang.Object getElement(java.lang.Object entry)
PersistentCollection
entry
- The object instance for which to get the collection element instance.public java.lang.Object getSnapshotElement(java.lang.Object entry, int i)
PersistentCollection
entry
- The entryi
- The indexpublic boolean entryExists(java.lang.Object entry, int i)
PersistentCollection
entry
- The object to check if it exists as a collection elementi
- Unusedtrue
if the given entry is a collection elementCopyright © 2001-2018 Red Hat, Inc. All Rights Reserved.