public class BasicCollectionPersister extends AbstractCollectionPersister
Collection persister for collections of values and many-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 |
---|
BasicCollectionPersister(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>CollectionLoader</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 |
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 DELETE that deletes a particular row
|
protected String |
generateDeleteString()
Generate the SQL DELETE that deletes all rows
|
protected String |
generateInsertRowString()
Generate the SQL INSERT that creates a new row
|
protected String |
generateUpdateRowString()
Generate the SQL UPDATE that updates a row
|
org.hibernate.internal.FilterAliasGenerator |
getFilterAliasGenerator(String rootAlias) |
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?
|
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, filterFragment, filterFragment, generateDetectRowByElementString, generateDetectRowByIndexString, generateSelectFragment, generateSelectRowByIndexString, generateSelectSizeString, getAppropriateInitializer, getBatchSize, getCacheAccessStrategy, getCacheEntryStructure, getCollectionMetadata, getCollectionPersister, getCollectionPropertyColumnAliases, getCollectionSpaces, getCollectionType, getDeleteAllCheckStyle, getDeleteCheckStyle, getDialect, getElementByIndex, 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, getTableName, getType, getUpdateCheckStyle, hasCache, hasIndex, hasManyToManyOrdering, hasOrdering, hasOrphanDelete, hasWhere, incrementIndexByBase, indexExists, initCollectionPropertyMap, initialize, insertRows, isAffectedByEnabledFilters, isArray, isCollection, isDeleteAllCallable, isDeleteCallable, isExtraLazy, isInsertCallable, isInverse, isLazy, isMutable, isPrimitiveArray, isRowDeleteEnabled, isRowInsertEnabled, isSubselectLoadable, isUpdateCallable, isVersioned, logStaticSQL, oneToManyFilterFragment, oneToManyFilterFragment, postInstantiate, processQueuedOps, readElement, readIdentifier, readIndex, readKey, recreate, remove, selectFragment, toColumns, toColumns, toString, toType, updateRows, writeElement, writeElementToWhere, writeIdentifier, writeIndex, writeIndexToWhere, writeKey
public BasicCollectionPersister(Collection collectionBinding, CollectionDataAccess cacheAccessStrategy, PersisterCreationContext creationContext) throws MappingException, CacheException
MappingException
CacheException
public boolean isCascadeDeleteEnabled()
CollectionPersister
Is cascade delete handled by the database-level foreign key constraint definition?
protected String generateDeleteString()
Generate the SQL DELETE that deletes all rows
generateDeleteString
in class AbstractCollectionPersister
protected String generateInsertRowString()
Generate the SQL INSERT that creates a new row
generateInsertRowString
in class AbstractCollectionPersister
protected String generateUpdateRowString()
Generate the SQL UPDATE that updates a row
generateUpdateRowString
in class AbstractCollectionPersister
protected void doProcessQueuedOps(PersistentCollection collection, Serializable id, SharedSessionContractImplementor session)
doProcessQueuedOps
in class AbstractCollectionPersister
protected String generateDeleteRowString()
Generate the SQL DELETE that deletes a particular row
generateDeleteRowString
in class AbstractCollectionPersister
public boolean consumesEntityAlias()
Joinable
Very, very, very ugly…
public boolean consumesCollectionAlias()
Joinable
Very, very, very ugly…
public boolean isOneToMany()
CollectionPersister
Is this a one-to-many association?
public boolean isManyToMany()
CollectionPersister
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.
isManyToMany
in interface CollectionPersister
isManyToMany
in class AbstractCollectionPersister
protected int doUpdateRows(Serializable id, PersistentCollection collection, SharedSessionContractImplementor session) throws HibernateException
doUpdateRows
in class AbstractCollectionPersister
HibernateException
public String selectFragment(Joinable rhs, String rhsAlias, String lhsAlias, String entitySuffix, String collectionSuffix, boolean includeCollectionColumns)
Joinable
All columns to select, when loading.
protected CollectionInitializer createCollectionInitializer(LoadQueryInfluencers loadQueryInfluencers) throws MappingException
Create the <tt>CollectionLoader</tt>
createCollectionInitializer
in class AbstractCollectionPersister
MappingException
BasicCollectionLoader
public String fromJoinFragment(String alias, boolean innerJoin, boolean includeSubclasses)
Joinable
Get the from clause part of any joins (optional operation)
public String fromJoinFragment(String alias, boolean innerJoin, boolean includeSubclasses, Set<String> treatAsDeclarations)
Joinable
Get the from clause part of any joins (optional operation)
public String whereJoinFragment(String alias, boolean innerJoin, boolean includeSubclasses)
Joinable
Get the where clause part of any joins (optional operation)
public String whereJoinFragment(String alias, boolean innerJoin, boolean includeSubclasses, Set<String> treatAsDeclarations)
Joinable
Get the where clause part of any joins (optional operation)
protected CollectionInitializer createSubselectInitializer(SubselectFetch subselect, SharedSessionContractImplementor session)
createSubselectInitializer
in class AbstractCollectionPersister
public org.hibernate.internal.FilterAliasGenerator getFilterAliasGenerator(String rootAlias)
getFilterAliasGenerator
in class AbstractCollectionPersister
Copyright © 2001-2018 Red Hat, Inc. All Rights Reserved.