org.hibernate.ogm.persister
Class OgmCollectionPersister

java.lang.Object
  extended by org.hibernate.persister.collection.AbstractCollectionPersister
      extended by org.hibernate.ogm.persister.OgmCollectionPersister
All Implemented Interfaces:
CollectionMetadata, CollectionPhysicalModel, CollectionPersister, QueryableCollection, SQLLoadableCollection, Joinable, PropertyMapping

public class OgmCollectionPersister
extends AbstractCollectionPersister
implements CollectionPhysicalModel

CollectionPersister storing the collection in a grid

Author:
Emmanuel Bernard

Field Summary
 
Fields inherited from class org.hibernate.persister.collection.AbstractCollectionPersister
batchSize, elementColumnAliases, elementColumnIsInPrimaryKey, elementColumnIsSettable, elementColumnNames, elementColumnReaders, elementColumnReaderTemplates, elementColumnWriters, elementFormulas, elementFormulaTemplates, elementIsPureFormula, elementType, hasIdentifier, hasIndex, hasWhere, identifierColumnName, indexColumnAliases, indexColumnIsSettable, indexColumnNames, indexContainsFormula, indexFormulas, indexFormulaTemplates, keyColumnAliases, keyColumnNames, qualifiedTableName, sqlWhereString
 
Constructor Summary
OgmCollectionPersister(Collection collection, CollectionRegionAccessStrategy cacheAccessStrategy, Configuration cfg, SessionFactoryImplementor factory)
           
 
Method Summary
 boolean consumesCollectionAlias()
           
 boolean consumesEntityAlias()
           
protected  CollectionInitializer createCollectionInitializer(LoadQueryInfluencers loadQueryInfluencers)
           
protected  CollectionInitializer createSubselectInitializer(SubselectFetch subselect, SessionImplementor session)
           
 void deleteRows(PersistentCollection collection, Serializable id, SessionImplementor session)
           
protected  int doUpdateRows(Serializable key, PersistentCollection collection, SessionImplementor session)
           
 String fromJoinFragment(String alias, boolean innerJoin, boolean includeSubclasses)
           
protected  String generateDeleteRowString()
           
protected  String generateDeleteString()
           
protected  String generateInsertRowString()
           
protected  String generateUpdateRowString()
           
protected  CollectionInitializer getAppropriateInitializer(Serializable key, SessionImplementor session)
           
 GridType getElementGridType()
           
 GridType getKeyGridType()
           
 int getSize(Serializable key, SessionImplementor session)
           
 void insertRows(PersistentCollection collection, Serializable id, SessionImplementor session)
           
 boolean isCascadeDeleteEnabled()
           
 boolean isManyToMany()
           
 boolean isOneToMany()
           
protected  void logStaticSQL()
           
 void postInstantiate()
           
 Object readElement(ResultSet rs, Object owner, String[] aliases, SessionImplementor session)
           
 Object readIdentifier(ResultSet rs, String alias, SessionImplementor session)
           
 Object readIndex(ResultSet rs, String[] aliases, SessionImplementor session)
           
 Object readKey(ResultSet rs, String[] aliases, SessionImplementor session)
           
 void recreate(PersistentCollection collection, Serializable id, SessionImplementor session)
           
 void remove(Serializable id, SessionImplementor session)
           
 String selectFragment(Joinable rhs, String rhsAlias, String lhsAlias, String currentEntitySuffix, String currentCollectionSuffix, boolean includeCollectionColumns)
           
 String whereJoinFragment(String alias, boolean innerJoin, boolean includeSubclasses)
           
 
Methods inherited from class org.hibernate.persister.collection.AbstractCollectionPersister
appendElementColumns, appendIdentifierColumns, appendIndexColumns, decrementIndexByBase, elementExists, filterFragment, filterFragment, generateDetectRowByElementString, generateDetectRowByIndexString, generateSelectFragment, generateSelectRowByIndexString, generateSelectSizeString, getCacheAccessStrategy, getCacheEntryStructure, getCollectionMetadata, getCollectionPropertyColumnAliases, getCollectionSpaces, getCollectionType, getDeleteAllCheckStyle, getDeleteCheckStyle, getDialect, getElementByIndex, getElementClass, getElementColumnAliases, getElementColumnNames, getElementColumnNames, getElementNodeName, getElementPersister, getElementType, getFactory, getFetchMode, getIdentifierColumnAlias, getIdentifierColumnName, getIdentifierGenerator, getIdentifierType, getIndexColumnAliases, getIndexColumnNames, getIndexColumnNames, getIndexFormulas, getIndexNodeName, getIndexType, getInitializer, getInsertCheckStyle, getKeyColumnAliases, getKeyColumnNames, getKeyType, getManyToManyFilterFragment, getManyToManyOrderByString, getName, getNodeName, getOwnerEntityName, getOwnerEntityPersister, getRole, getSQLDeleteRowString, getSQLDeleteString, getSQLExceptionConverter, getSQLInsertRowString, getSQLOrderByString, getSQLUpdateRowString, getSQLWhereString, getTableName, getType, getUpdateCheckStyle, hasCache, hasIndex, hasManyToManyOrdering, hasOrdering, hasOrphanDelete, hasWhere, incrementIndexByBase, indexExists, initCollectionPropertyMap, initialize, isAffectedByEnabledFilters, isArray, isCollection, isDeleteAllCallable, isDeleteCallable, isExtraLazy, isInsertCallable, isInverse, isLazy, isMutable, isPrimitiveArray, isRowDeleteEnabled, isRowInsertEnabled, isSubselectLoadable, isUpdateCallable, isVersioned, oneToManyFilterFragment, selectFragment, toColumns, toColumns, toString, toType, updateRows, writeElement, writeElementToWhere, writeIdentifier, writeIndex, writeIndexToWhere, writeKey
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.hibernate.ogm.persister.CollectionPhysicalModel
getElementColumnNames, getIdentifierColumnName, getIndexColumnNames, getKeyColumnNames, getTableName
 
Methods inherited from interface org.hibernate.persister.collection.CollectionPersister
elementExists, getCacheAccessStrategy, getCacheEntryStructure, getCollectionMetadata, getCollectionSpaces, getCollectionType, getElementByIndex, getElementClass, getElementColumnAliases, getElementNodeName, getElementType, getFactory, getIdentifierColumnAlias, getIdentifierGenerator, getIdentifierType, getIndexColumnAliases, getIndexNodeName, getIndexType, getKeyColumnAliases, getKeyType, getManyToManyFilterFragment, getNodeName, getOwnerEntityPersister, getRole, hasCache, hasIndex, hasManyToManyOrdering, hasOrdering, hasOrphanDelete, indexExists, initialize, isAffectedByEnabledFilters, isArray, isExtraLazy, isInverse, isLazy, isMutable, isPrimitiveArray, isVersioned, updateRows
 

Constructor Detail

OgmCollectionPersister

public OgmCollectionPersister(Collection collection,
                              CollectionRegionAccessStrategy cacheAccessStrategy,
                              Configuration cfg,
                              SessionFactoryImplementor factory)
                       throws MappingException,
                              CacheException
Throws:
MappingException
CacheException
Method Detail

readKey

public Object readKey(ResultSet rs,
                      String[] aliases,
                      SessionImplementor session)
               throws HibernateException,
                      SQLException
Specified by:
readKey in interface CollectionPersister
Overrides:
readKey in class AbstractCollectionPersister
Throws:
HibernateException
SQLException

readElement

public Object readElement(ResultSet rs,
                          Object owner,
                          String[] aliases,
                          SessionImplementor session)
                   throws HibernateException,
                          SQLException
Specified by:
readElement in interface CollectionPersister
Overrides:
readElement in class AbstractCollectionPersister
Throws:
HibernateException
SQLException

readIdentifier

public Object readIdentifier(ResultSet rs,
                             String alias,
                             SessionImplementor session)
                      throws HibernateException,
                             SQLException
Specified by:
readIdentifier in interface CollectionPersister
Overrides:
readIdentifier in class AbstractCollectionPersister
Throws:
HibernateException
SQLException

readIndex

public Object readIndex(ResultSet rs,
                        String[] aliases,
                        SessionImplementor session)
                 throws HibernateException,
                        SQLException
Specified by:
readIndex in interface CollectionPersister
Overrides:
readIndex in class AbstractCollectionPersister
Throws:
HibernateException
SQLException

createSubselectInitializer

protected CollectionInitializer createSubselectInitializer(SubselectFetch subselect,
                                                           SessionImplementor session)
Specified by:
createSubselectInitializer in class AbstractCollectionPersister

createCollectionInitializer

protected CollectionInitializer createCollectionInitializer(LoadQueryInfluencers loadQueryInfluencers)
                                                     throws MappingException
Specified by:
createCollectionInitializer in class AbstractCollectionPersister
Throws:
MappingException

getKeyGridType

public GridType getKeyGridType()
Specified by:
getKeyGridType in interface CollectionPhysicalModel

getElementGridType

public GridType getElementGridType()
Specified by:
getElementGridType in interface CollectionPhysicalModel

isOneToMany

public boolean isOneToMany()
Specified by:
isOneToMany in interface CollectionPersister

isManyToMany

public boolean isManyToMany()
Specified by:
isManyToMany in interface CollectionPersister
Specified by:
isManyToMany in class AbstractCollectionPersister

isCascadeDeleteEnabled

public boolean isCascadeDeleteEnabled()
Specified by:
isCascadeDeleteEnabled in interface CollectionPersister

generateDeleteString

protected String generateDeleteString()
Specified by:
generateDeleteString in class AbstractCollectionPersister

generateDeleteRowString

protected String generateDeleteRowString()
Specified by:
generateDeleteRowString in class AbstractCollectionPersister

generateUpdateRowString

protected String generateUpdateRowString()
Specified by:
generateUpdateRowString in class AbstractCollectionPersister

generateInsertRowString

protected String generateInsertRowString()
Specified by:
generateInsertRowString in class AbstractCollectionPersister

doUpdateRows

protected int doUpdateRows(Serializable key,
                           PersistentCollection collection,
                           SessionImplementor session)
                    throws HibernateException
Specified by:
doUpdateRows in class AbstractCollectionPersister
Throws:
HibernateException

getSize

public int getSize(Serializable key,
                   SessionImplementor session)
Specified by:
getSize in interface CollectionPersister
Overrides:
getSize in class AbstractCollectionPersister

deleteRows

public void deleteRows(PersistentCollection collection,
                       Serializable id,
                       SessionImplementor session)
                throws HibernateException
Specified by:
deleteRows in interface CollectionPersister
Overrides:
deleteRows in class AbstractCollectionPersister
Throws:
HibernateException

insertRows

public void insertRows(PersistentCollection collection,
                       Serializable id,
                       SessionImplementor session)
                throws HibernateException
Specified by:
insertRows in interface CollectionPersister
Overrides:
insertRows in class AbstractCollectionPersister
Throws:
HibernateException

recreate

public void recreate(PersistentCollection collection,
                     Serializable id,
                     SessionImplementor session)
              throws HibernateException
Specified by:
recreate in interface CollectionPersister
Overrides:
recreate in class AbstractCollectionPersister
Throws:
HibernateException

remove

public void remove(Serializable id,
                   SessionImplementor session)
            throws HibernateException
Specified by:
remove in interface CollectionPersister
Overrides:
remove in class AbstractCollectionPersister
Throws:
HibernateException

selectFragment

public String selectFragment(Joinable rhs,
                             String rhsAlias,
                             String lhsAlias,
                             String currentEntitySuffix,
                             String currentCollectionSuffix,
                             boolean includeCollectionColumns)
Specified by:
selectFragment in interface Joinable

whereJoinFragment

public String whereJoinFragment(String alias,
                                boolean innerJoin,
                                boolean includeSubclasses)
Specified by:
whereJoinFragment in interface Joinable

fromJoinFragment

public String fromJoinFragment(String alias,
                               boolean innerJoin,
                               boolean includeSubclasses)
Specified by:
fromJoinFragment in interface Joinable

consumesEntityAlias

public boolean consumesEntityAlias()
Specified by:
consumesEntityAlias in interface Joinable

consumesCollectionAlias

public boolean consumesCollectionAlias()
Specified by:
consumesCollectionAlias in interface Joinable

logStaticSQL

protected void logStaticSQL()
Overrides:
logStaticSQL in class AbstractCollectionPersister

postInstantiate

public void postInstantiate()
                     throws MappingException
Specified by:
postInstantiate in interface CollectionPersister
Overrides:
postInstantiate in class AbstractCollectionPersister
Throws:
MappingException

getAppropriateInitializer

protected CollectionInitializer getAppropriateInitializer(Serializable key,
                                                          SessionImplementor session)
Overrides:
getAppropriateInitializer in class AbstractCollectionPersister


Copyright © 2010-2011 Red Hat Middleware, LLC, Emmanuel Bernard and various contributors. All Rights Reserved