public class OneToManyPersister extends AbstractCollectionPersister
Collection persister for one-to-many associations.
batchSize, elementColumnAliases, elementColumnIsInPrimaryKey, elementColumnIsSettable, elementColumnNames, elementColumnReaders, elementColumnReaderTemplates, elementColumnWriters, elementFormulas, elementFormulaTemplates, elementIsPureFormula, elementType, hasIdentifier, hasIndex, hasWhere, identifierColumnName, indexColumnAliases, indexColumnIsGettable, indexColumnIsSettable, indexColumnNames, indexContainsFormula, indexFormulas, indexFormulaTemplates, isInverse, keyColumnAliases, keyColumnNames, qualifiedTableName, recreateBatchKey, sqlExceptionHelper, sqlWhereString| Constructor and Description |
|---|
OneToManyPersister(Collection collectionBinding,
CollectionDataAccess cacheAccessStrategy,
PersisterCreationContext creationContext) |
| Modifier and Type | Method and Description |
|---|---|
boolean |
consumesCollectionAlias()
Very, very, very ugly…
|
boolean |
consumesEntityAlias()
Very, very, very ugly…
|
protected CollectionInitializer |
createCollectionInitializer(LoadQueryInfluencers loadQueryInfluencers)
Create the <tt>OneToManyLoader</tt>
|
protected CollectionInitializer |
createSubselectInitializer(SubselectFetch subselect,
SharedSessionContractImplementor session) |
protected void |
doProcessQueuedOps(PersistentCollection collection,
Serializable id,
SharedSessionContractImplementor session) |
protected int |
doUpdateRows(Serializable id,
PersistentCollection collection,
SharedSessionContractImplementor session) |
String |
filterFragment(String alias) |
protected String |
filterFragment(String alias,
Set<String> treatAsDeclarations) |
String |
fromJoinFragment(String alias,
boolean innerJoin,
boolean includeSubclasses)
Get the from clause part of any joins
(optional operation)
|
String |
fromJoinFragment(String alias,
boolean innerJoin,
boolean includeSubclasses,
Set<String> treatAsDeclarations)
Get the from clause part of any joins
(optional operation)
|
protected String |
generateDeleteRowString()
Generate the SQL UPDATE that updates a particular row’s foreign
key to null
|
protected String |
generateDeleteString()
Generate the SQL UPDATE that updates all the foreign keys to null
|
protected String |
generateInsertRowString()
Generate the SQL UPDATE that updates a foreign key to a value
|
protected String |
generateUpdateRowString()
Generate the SQL UPDATE that inserts a collection index
|
Object |
getElementByIndex(Serializable key,
Object index,
SharedSessionContractImplementor session,
Object owner) |
org.hibernate.internal.FilterAliasGenerator |
getFilterAliasGenerator(String rootAlias) |
String |
getTableName()
The table to join to.
|
void |
insertRows(PersistentCollection collection,
Serializable id,
SharedSessionContractImplementor session)
Insert the persistent state of any new collection elements
|
boolean |
isCascadeDeleteEnabled()
Is cascade delete handled by the database-level
foreign key constraint definition?
|
boolean |
isManyToMany()
Is this a many-to-many association? Note that this is mainly
a convenience feature as the single persister does not
conatin all the information needed to handle a many-to-many
itself, as internally it is looked at as two many-to-ones.
|
boolean |
isOneToMany()
Is this a one-to-many association?
|
protected boolean |
isRowDeleteEnabled() |
protected boolean |
isRowInsertEnabled() |
void |
recreate(PersistentCollection collection,
Serializable id,
SharedSessionContractImplementor session)
(Re)create the collection’s persistent state
|
String |
selectFragment(Joinable rhs,
String rhsAlias,
String lhsAlias,
String entitySuffix,
String collectionSuffix,
boolean includeCollectionColumns)
All columns to select, when loading.
|
String |
whereJoinFragment(String alias,
boolean innerJoin,
boolean includeSubclasses)
Get the where clause part of any joins
(optional operation)
|
String |
whereJoinFragment(String alias,
boolean innerJoin,
boolean includeSubclasses,
Set<String> treatAsDeclarations)
Get the where clause part of any joins
(optional operation)
|
appendElementColumns, appendIdentifierColumns, appendIndexColumns, decrementIndexByBase, deleteRows, determineTableName, doProcessQueuedOps, elementExists, filterFragment, filterFragment, generateDetectRowByElementString, generateDetectRowByIndexString, generateSelectFragment, generateSelectRowByIndexString, generateSelectSizeString, getAppropriateInitializer, getBatchSize, getCacheAccessStrategy, getCacheEntryStructure, getCollectionMetadata, getCollectionPersister, getCollectionPropertyColumnAliases, getCollectionSpaces, getCollectionType, getDeleteAllCheckStyle, getDeleteCheckStyle, getDialect, getElementClass, getElementColumnAliases, getElementColumnNames, getElementColumnNames, getElementDefinition, getElementPersister, getElementType, getFactory, getFetchMode, getIdentifierColumnAlias, getIdentifierColumnName, getIdentifierGenerator, getIdentifierType, getIndexColumnAliases, getIndexColumnNames, getIndexColumnNames, getIndexDefinition, getIndexFormulas, getIndexType, getInitializer, getInsertCheckStyle, getKeyColumnAliases, getKeyColumnNames, getKeyType, getManyToManyFilterFragment, getManyToManyOrderByString, getMappedByProperty, getName, getNavigableRole, getOwnerEntityName, getOwnerEntityPersister, getRole, getSize, getSQLDeleteRowString, getSQLDeleteString, getSQLExceptionConverter, getSQLExceptionHelper, getSQLInsertRowString, getSQLOrderByString, getSQLUpdateRowString, getSQLWhereString, getType, getUpdateCheckStyle, hasCache, hasIndex, hasManyToManyOrdering, hasOrdering, hasOrphanDelete, hasWhere, incrementIndexByBase, indexExists, initCollectionPropertyMap, initialize, isAffectedByEnabledFilters, isArray, isCollection, isDeleteAllCallable, isDeleteCallable, isExtraLazy, isInsertCallable, isInverse, isLazy, isMutable, isPrimitiveArray, isSubselectLoadable, isUpdateCallable, isVersioned, logStaticSQL, oneToManyFilterFragment, oneToManyFilterFragment, postInstantiate, processQueuedOps, readElement, readIdentifier, readIndex, readKey, remove, selectFragment, toColumns, toColumns, toString, toType, updateRows, writeElement, writeElementToWhere, writeIdentifier, writeIndex, writeIndexToWhere, writeKeypublic OneToManyPersister(Collection collectionBinding, CollectionDataAccess cacheAccessStrategy, PersisterCreationContext creationContext) throws MappingException, CacheException
MappingExceptionCacheExceptionprotected boolean isRowDeleteEnabled()
isRowDeleteEnabled in class AbstractCollectionPersisterprotected boolean isRowInsertEnabled()
isRowInsertEnabled in class AbstractCollectionPersisterpublic boolean isCascadeDeleteEnabled()
CollectionPersisterIs cascade delete handled by the database-level foreign key constraint definition?
protected String generateDeleteString()
Generate the SQL UPDATE that updates all the foreign keys to null
generateDeleteString in class AbstractCollectionPersisterprotected String generateInsertRowString()
Generate the SQL UPDATE that updates a foreign key to a value
generateInsertRowString in class AbstractCollectionPersisterprotected String generateUpdateRowString()
Generate the SQL UPDATE that inserts a collection index
generateUpdateRowString in class AbstractCollectionPersisterprotected String generateDeleteRowString()
Generate the SQL UPDATE that updates a particular row’s foreign key to null
generateDeleteRowString in class AbstractCollectionPersisterpublic void recreate(PersistentCollection collection, Serializable id, SharedSessionContractImplementor session) throws HibernateException
CollectionPersister(Re)create the collection’s persistent state
recreate in interface CollectionPersisterrecreate in class AbstractCollectionPersisterHibernateExceptionpublic void insertRows(PersistentCollection collection, Serializable id, SharedSessionContractImplementor session) throws HibernateException
CollectionPersisterInsert the persistent state of any new collection elements
insertRows in interface CollectionPersisterinsertRows in class AbstractCollectionPersisterHibernateExceptionprotected void doProcessQueuedOps(PersistentCollection collection, Serializable id, SharedSessionContractImplementor session) throws HibernateException
doProcessQueuedOps in class AbstractCollectionPersisterHibernateExceptionpublic boolean consumesEntityAlias()
JoinableVery, very, very ugly…
public boolean consumesCollectionAlias()
JoinableVery, very, very ugly…
public boolean isOneToMany()
CollectionPersisterIs this a one-to-many association?
public boolean isManyToMany()
CollectionPersisterIs this a many-to-many association? Note that this is mainly a convenience feature as the single persister does not conatin all the information needed to handle a many-to-many itself, as internally it is looked at as two many-to-ones.
isManyToMany in interface CollectionPersisterisManyToMany in class AbstractCollectionPersisterprotected int doUpdateRows(Serializable id, PersistentCollection collection, SharedSessionContractImplementor session)
doUpdateRows in class AbstractCollectionPersisterpublic String selectFragment(Joinable rhs, String rhsAlias, String lhsAlias, String entitySuffix, String collectionSuffix, boolean includeCollectionColumns)
JoinableAll columns to select, when loading.
protected CollectionInitializer createCollectionInitializer(LoadQueryInfluencers loadQueryInfluencers) throws MappingException
Create the <tt>OneToManyLoader</tt>
createCollectionInitializer in class AbstractCollectionPersisterMappingExceptionOneToManyLoaderpublic String fromJoinFragment(String alias, boolean innerJoin, boolean includeSubclasses)
JoinableGet the from clause part of any joins (optional operation)
public String fromJoinFragment(String alias, boolean innerJoin, boolean includeSubclasses, Set<String> treatAsDeclarations)
JoinableGet the from clause part of any joins (optional operation)
public String whereJoinFragment(String alias, boolean innerJoin, boolean includeSubclasses)
JoinableGet the where clause part of any joins (optional operation)
public String whereJoinFragment(String alias, boolean innerJoin, boolean includeSubclasses, Set<String> treatAsDeclarations)
JoinableGet the where clause part of any joins (optional operation)
public String getTableName()
JoinableThe table to join to.
getTableName in interface JoinablegetTableName in class AbstractCollectionPersisterpublic String filterFragment(String alias) throws MappingException
filterFragment in class AbstractCollectionPersisterMappingExceptionprotected String filterFragment(String alias, Set<String> treatAsDeclarations) throws MappingException
filterFragment in class AbstractCollectionPersisterMappingExceptionprotected CollectionInitializer createSubselectInitializer(SubselectFetch subselect, SharedSessionContractImplementor session)
createSubselectInitializer in class AbstractCollectionPersisterpublic Object getElementByIndex(Serializable key, Object index, SharedSessionContractImplementor session, Object owner)
getElementByIndex in interface CollectionPersistergetElementByIndex in class AbstractCollectionPersisterpublic org.hibernate.internal.FilterAliasGenerator getFilterAliasGenerator(String rootAlias)
getFilterAliasGenerator in class AbstractCollectionPersisterCopyright © 2001-2018 Red Hat, Inc. All Rights Reserved.