Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.hibernate.internal
Class SessionImpl

    java.lang.Object
      org.hibernate.internal.AbstractSessionImpl
          org.hibernate.internal.SessionImpl

All Implemented Interfaces:
  Serializable, LobCreationContext, SessionImplementor, TransactionContext, EventSource, Session, SharedSessionContract

    public final class SessionImpl

extends AbstractSessionImpl
implements EventSource

Concrete implementation of a Session. Exposes two interfaces:

- `Session` to the application
- `SessionImplementor` to other Hibernate components (SPI)

This class is not thread-safe.

See Also:
  Serialized Form

Nested Class Summary

Nested classes/interfaces inherited from interface org.hibernate.engine.jdbc.LobCreationContext
`LobCreationContext.Callback<T>`

Nested classes/interfaces inherited from interface org.hibernate.Session
`Session.LockRequest`

Field Summary

Fields inherited from class org.hibernate.internal.AbstractSessionImpl
`factory`

Method Summary
`void` | `afterOperation(boolean success)` Check if there is a Hibernate or JTA transaction in progress and, if there is not, flush if necessary, make sure the connection has been committed (if it is not in autocommit mode) and run the after completion processing
`void` | `afterScrollOperation()`
`void` | `afterTransactionBegin(TransactionImplementor hibernateTransaction)`
`void` | `afterTransactionCompletion(TransactionImplementor hibernateTransaction, boolean successful)`
`void` | `applyNonFlushedChanges(NonFlushedChanges nonFlushedChanges)` Apply non-flushed changes from a different session to this session.
`protected boolean` | `autoFlushIfRequired(Set querySpaces)` detect in-memory changes, determine if the changes are to tables named in the query and, if so, complete execution the flush
`void` | `beforeTransactionCompletion(TransactionImplementor hibernateTransaction)`
`Transaction` | `beginTransaction()` Begin a unit of work and return the associated `Transaction` object.
`String` | `bestGuessEntityName(Object object)` The best guess entity name for an entity not in an association
`Session.LockRequest` | `buildLockRequest(LockOptions lockOptions)` Build a LockRequest that specifies the LockMode, pessimistic lock timeout and lock scope.
`org.hibernate.internal.SessionImpl.IdentifierLoadAccessImpl` | `byId(Class entityClass)` Create an `IdentifierLoadAccess` instance to retrieve the specified entity by primary key.
`org.hibernate.internal.SessionImpl.IdentifierLoadAccessImpl` | `byId(String entityName)` Create an `IdentifierLoadAccess` instance to retrieve the specified entity type by primary key.
`NaturalIdLoadAccess` | `byNaturalId(Class entityClass)` Create an `NaturalIdLoadAccess` instance to retrieve the specified entity by its natural id.
`NaturalIdLoadAccess` | `byNaturalId(String entityName)` Create an `NaturalIdLoadAccess` instance to retrieve the specified entity by its natural id.
`SimpleNaturalIdLoadAccess` | `bySimpleNaturalId(Class entityClass)` Create an `SimpleNaturalIdLoadAccess` instance to retrieve the specified entity by its simple (single attribute) natural id.
`SimpleNaturalIdLoadAccess` | `bySimpleNaturalId(String entityName)` Create an `SimpleNaturalIdLoadAccess` instance to retrieve the specified entity by its natural id.
`void` | `cancelQuery()` Cancel the execution of the current query.
`void` | `clear()` Completely clear the session.
`Connection` | `close()` End the session by releasing the JDBC connection and cleaning up.
`Connection` | `connection()`
`boolean` | `contains(Object object)` Check if this instance is associated with this `Session`.
`Criteria` | `createCriteria(Class persistentClass)` Create `Criteria` instance for the given class (entity or subclasses/implementors)
`Criteria` | `createCriteria(Class persistentClass, String alias)` Create `Criteria` instance for the given class (entity or subclasses/implementors), using a specific alias.
`Criteria` | `createCriteria(String entityName)` Create `Criteria` instance for the given entity name.
`Criteria` | `createCriteria(String entityName, String alias)` Create `Criteria` instance for the given entity name, using a specific alias.
`Query` | `createFilter(Object collection, String queryString)` Create a `Query` instance for the given collection and filter string.
`Query` | `createQuery(String queryString)` Create a `Query` instance for the given HQL query string.
`SQLQuery` | `createSQLQuery(String sql)` Create a `SQLQuery` instance for the given SQL query string.
`void` | `delete(Object object)` Delete a persistent object
`void` | `delete(String entityName, Object object)` Delete a persistent object (by explicit entity name)
`void` | `delete(String entityName, Object object, boolean isCascadeDeleteEnabled, Set transientEntities)` Delete a persistent object
`void` | `disableFetchProfile(String name)` Disable a particular fetch profile on this session.
`void` | `disableFilter(String filterName)` Disable the named filter for the current session.
`void` | `disableTransactionAutoJoin()` Disable automatic transaction joining.
`Connection` | `disconnect()` Disconnect the session from its underlying JDBC connection.
`
`<T> T`
` | `doReturningWork(ReturningWork<T> work)` Controller for allowing users to perform JDBC related work using the Connection managed by this Session.
`void` | `doWork(Work work)` Controller for allowing users to perform JDBC related work using the Connection managed by this Session.
`void` | `enableFetchProfile(String name)` Enable a particular fetch profile on this session.
`Filter` | `enableFilter(String filterName)` Enable the named filter for this current session.
`void` | `evict(Object object)` remove any hard references to the entity that are held by the infrastructure (references held by application or other persistant instances are okay)
`int` | `executeNativeUpdate(NativeSQLQuerySpecification nativeQuerySpecification, QueryParameters queryParameters)` Execute a native SQL update or delete query
`int` | `executeUpdate(String query, QueryParameters queryParameters)` Execute a HQL update or delete query
`void` | `flush()` Force this session to flush.
`void` | `forceFlush(EntityEntry entityEntry)` Force an immediate flush
`Object` | `get(Class entityClass, Serializable id)` Return the persistent instance of the given entity class with the given identifier, or null if there is no such persistent instance.
`Object` | `get(Class entityClass, Serializable id, LockMode lockMode)` Return the persistent instance of the given entity class with the given identifier, or null if there is no such persistent instance.
`Object` | `get(Class entityClass, Serializable id, LockOptions lockOptions)` Return the persistent instance of the given entity class with the given identifier, or null if there is no such persistent instance.
`Object` | `get(String entityName, Serializable id)` Return the persistent instance of the given named entity with the given identifier, or null if there is no such persistent instance.
`Object` | `get(String entityName, Serializable id, LockMode lockMode)` Return the persistent instance of the given entity class with the given identifier, or null if there is no such persistent instance.
`Object` | `get(String entityName, Serializable id, LockOptions lockOptions)` Return the persistent instance of the given entity class with the given identifier, or null if there is no such persistent instance.
`ActionQueue` | `getActionQueue()` Get the ActionQueue for this session
`CacheMode` | `getCacheMode()` Get the current cache mode.
`ConnectionReleaseMode` | `getConnectionReleaseMode()` Get the mode for releasing JDBC connection in effect for ths context.
`Serializable` | `getContextEntityIdentifier(Object object)` Get the id value for an object that is actually associated with the session.
`LockMode` | `getCurrentLockMode(Object object)` Determine the current lock mode of the given object.
`int` | `getDontFlushFromFind()`
`Filter` | `getEnabledFilter(String filterName)` Retrieve a currently enabled filter by name.
`Map` | `getEnabledFilters()` Return the currently enabled filters.
`String` | `getEntityName(Object object)` Return the entity name for a persistent entity
`EntityPersister` | `getEntityPersister(String entityName, Object object)` Get the `EntityPersister` for any instance
`Object` | `getEntityUsingInterceptor(EntityKey key)` Get the entity instance associated with the given `Key`, calling the Interceptor if necessary
`String` | `getFetchProfile()` Get the internal fetch profile currently associated with this session.
`Type` | `getFilterParameterType(String filterParameterName)` Retreive the type for a given filter parrameter.
`Object` | `getFilterParameterValue(String filterParameterName)` Retreive the currently set value for a filter parameter.
`FlushMode` | `getFlushMode()` Get the current flush mode for this session.
`Serializable` | `getIdentifier(Object object)` Return the identifier value of the given entity as associated with this session.
`Interceptor` | `getInterceptor()` Retrieves the interceptor currently in use by this event source.
`LoadQueryInfluencers` | `getLoadQueryInfluencers()` Get the load query influencers associated with this session.
`LobHelper` | `getLobHelper()` Retrieve this session's helper/delegate for creating LOB instances.
`Query` | `getNamedQuery(String queryName)` Create a `Query` instance for the named query string defined in the metadata.
`NonFlushedChanges` | `getNonFlushedChanges()` Return changes to this session and its child sessions that have not been flushed yet.
`PersistenceContext` | `getPersistenceContext()` Get the persistence context for this session
`SessionFactoryImplementor` | `getSessionFactory()` Get the session factory which created this session.
`SessionStatistics` | `getStatistics()` Get the statistics for this session.
`long` | `getTimestamp()` System time before the start of the transaction
`Transaction` | `getTransaction()` Get the `Transaction` instance associated with this session.
`TransactionCoordinator` | `getTransactionCoordinator()` Retrieve access to the session's transaction coordinator.
`TypeHelper` | `getTypeHelper()` Convenience access to the `TypeHelper` associated with this session's `SessionFactory`.
`String` | `guessEntityName(Object object)` The guessed entity name for an entity not in an association
`Object` | `immediateLoad(String entityName, Serializable id)` Load the data for the object with the specified id into a newly created object.
`void` | `initializeCollection(PersistentCollection collection, boolean writing)` Initialize the collection (if not already initialized)
`Object` | `instantiate(EntityPersister persister, Serializable id)` give the interceptor an opportunity to override the default instantiation
`Object` | `instantiate(String entityName, Serializable id)` Instantiate the entity class, initializing with the given identifier
`Object` | `internalLoad(String entityName, Serializable id, boolean eager, boolean nullable)` Load an instance without checking if it was deleted.
`boolean` | `isAutoCloseSessionEnabled()` Should session automatically be closed after transaction completion in this context?
`boolean` | `isConnected()` Check if the session is currently connected.
`boolean` | `isDefaultReadOnly()` Will entities and proxies that are loaded into this session be made read-only by default? To determine the read-only/modifiable setting for a particular entity or proxy:
`boolean` | `isDirty()` Does this session contain any changes which must be synchronized with the database? In other words, would any DML operations be executed if we flushed this session?
`boolean` | `isEventSource()`
`boolean` | `isFetchProfileEnabled(String name)` Is a particular fetch profile enabled on this session?
`boolean` | `isFlushBeforeCompletionEnabled()` Should before transaction completion processing perform a flush when initiated from JTA synchronization for this context?
`boolean` | `isFlushModeNever()` Should flushes only happen manually for this context?
`boolean` | `isOpen()` Check if the session is still open.
`boolean` | `isReadOnly(Object entityOrProxy)` Is the specified entity or proxy read-only? To get the default read-only/modifiable setting used for entities and proxies that are loaded into the session:
`boolean` | `isTransactionInProgress()` Does this `Session` have an active Hibernate transaction or is there a JTA transaction in progress?
`Iterator` | `iterate(String query, QueryParameters queryParameters)` Execute an `iterate()` query
`Iterator` | `iterateFilter(Object collection, String filter, QueryParameters queryParameters)` Iterate a filter
`List` | `list(CriteriaImpl criteria)` Execute a criteria query
`List` | `list(String query, QueryParameters queryParameters)` Execute a `find()` query
`List` | `listCustomQuery(CustomQuery customQuery, QueryParameters queryParameters)` Execute an SQL Query
`List` | `listFilter(Object collection, String filter, QueryParameters queryParameters)` Execute a filter
`Object` | `load(Class entityClass, Serializable id)` Return the persistent instance of the given entity class with the given identifier, assuming that the instance exists.
`Object` | `load(Class entityClass, Serializable id, LockMode lockMode)` Return the persistent instance of the given entity class with the given identifier, obtaining the specified lock mode, assuming the instance exists.
`Object` | `load(Class entityClass, Serializable id, LockOptions lockOptions)` Return the persistent instance of the given entity class with the given identifier, obtaining the specified lock mode, assuming the instance exists.
`void` | `load(Object object, Serializable id)` Read the persistent state associated with the given identifier into the given transient instance.
`Object` | `load(String entityName, Serializable id)` Return the persistent instance of the given entity class with the given identifier, assuming that the instance exists.
`Object` | `load(String entityName, Serializable id, LockMode lockMode)` Return the persistent instance of the given entity class with the given identifier, obtaining the specified lock mode, assuming the instance exists.
`Object` | `load(String entityName, Serializable id, LockOptions lockOptions)` Return the persistent instance of the given entity class with the given identifier, obtaining the specified lock mode, assuming the instance exists.
`void` | `lock(Object object, LockMode lockMode)` Obtain the specified lock level upon the given object.
`void` | `lock(String entityName, Object object, LockMode lockMode)` Obtain the specified lock level upon the given object.
`void` | `managedClose()` Perform a managed close.
`void` | `managedFlush()` Perform a managed flush.
`Object` | `merge(Object object)` Copy the state of the given object onto the persistent object with the same identifier.
`Object` | `merge(String entityName, Object object)` Copy the state of the given object onto the persistent object with the same identifier.
`void` | `merge(String entityName, Object object, Map copiedAlready)` Cascade merge an entity instance
`String` | `onPrepareStatement(String sql)`
`void` | `persist(Object object)` Make a transient instance persistent.
`void` | `persist(String entityName, Object object)` Make a transient instance persistent.
`void` | `persist(String entityName, Object object, Map copiedAlready)` Cascade persist an entity instance
`void` | `persistOnFlush(Object object)`
`void` | `persistOnFlush(String entityName, Object object)`
`void` | `persistOnFlush(String entityName, Object object, Map copiedAlready)` Cascade persist an entity instance during the flush process
`void` | `reconnect(Connection conn)` Reconnect to the given JDBC connection.
`void` | `refresh(Object object)` Re-read the state of the given instance from the underlying database.
`void` | `refresh(Object object, LockMode lockMode)` Re-read the state of the given instance from the underlying database, with the given `LockMode`.
`void` | `refresh(Object object, LockOptions lockOptions)` Re-read the state of the given instance from the underlying database, with the given `LockMode`.
`void` | `refresh(Object object, Map refreshedAlready)` Cascade refresh an entity instance
`void` | `refresh(String entityName, Object object)` Re-read the state of the given instance from the underlying database.
`void` | `refresh(String entityName, Object object, LockOptions lockOptions)` Re-read the state of the given instance from the underlying database, with the given `LockMode`.
`void` | `replicate(Object obj, ReplicationMode replicationMode)` Persist the state of the given detached instance, reusing the current identifier value.
`void` | `replicate(String entityName, Object obj, ReplicationMode replicationMode)` Persist the state of the given detached instance, reusing the current identifier value.
`Serializable` | `save(Object obj)` Persist the given transient instance, first assigning a generated identifier.
`Serializable` | `save(String entityName, Object object)` Persist the given transient instance, first assigning a generated identifier.
`void` | `saveOrUpdate(Object object)` Either `Session.save(Object)` or `Session.update(Object)` the given instance, depending upon resolution of the unsaved-value checks (see the manual for discussion of unsaved-value checking).
`void` | `saveOrUpdate(String entityName, Object obj)` Either `Session.save(String, Object)` or `Session.update(String, Object)` the given instance, depending upon resolution of the unsaved-value checks (see the manual for discussion of unsaved-value checking).
`ScrollableResults` | `scroll(CriteriaImpl criteria, ScrollMode scrollMode)` Execute a criteria query
`ScrollableResults` | `scroll(String query, QueryParameters queryParameters)` Execute a `scroll()` query
`ScrollableResults` | `scrollCustomQuery(CustomQuery customQuery, QueryParameters queryParameters)` Execute an SQL Query
`SharedSessionBuilder` | `sessionWithOptions()` Obtain a `Session` builder with the ability to grab certain information from this session.
`void` | `setAutoClear(boolean enabled)` Enable/disable automatic cache clearing from after transaction completion (for EJB3)
`void` | `setCacheMode(CacheMode cacheMode)` Set the cache mode.
`void` | `setDefaultReadOnly(boolean defaultReadOnly)` Change the default for entities and proxies loaded into this session from modifiable to read-only mode, or from modifiable to read-only mode.
`void` | `setFetchProfile(String fetchProfile)` Set the current internal fetch profile for this session.
`void` | `setFlushMode(FlushMode flushMode)` Set the flush mode for this session.
`void` | `setReadOnly(Object entity, boolean readOnly)` Set an unmodified persistent object to read-only mode, or a read-only object to modifiable mode.
`boolean` | `shouldAutoClose()` Should JTA synchronization processing perform a automatic close (call to `TransactionContext.managedClose()` for this context?
`boolean` | `shouldAutoJoinTransaction()` Should transactions be auto joined? Generally this is only a concern for CMT transactions.
`String` | `toString()`
`void` | `update(Object obj)` Update the persistent instance with the identifier of the given detached instance.
`void` | `update(String entityName, Object object)` Update the persistent instance with the identifier of the given detached instance.

Methods inherited from class org.hibernate.internal.AbstractSessionImpl
`errorIfClosed, execute, generateCacheKey, generateEntityKey, getFactory, getHQLQueryPlan, getJdbcConnectionAccess, getNamedSQLQuery, getNativeSQLQueryPlan, getTenantIdentifier, getTransactionEnvironment, isClosed, list, scroll, setClosed`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Methods inherited from interface org.hibernate.engine.spi.SessionImplementor
`generateCacheKey, generateEntityKey, getFactory, getJdbcConnectionAccess, getNamedSQLQuery, getTenantIdentifier, isClosed, list, scroll`

Methods inherited from interface org.hibernate.engine.jdbc.LobCreationContext
`execute`

Methods inherited from interface org.hibernate.SharedSessionContract
`getTenantIdentifier`

Method Detail

### sessionWithOptions

    public SharedSessionBuilder sessionWithOptions()

  Description copied from interface: `Session`
  Obtain a `Session` builder with the ability to grab certain information from this session.

  Specified by:
    `sessionWithOptions` in interface `Session`
  Returns:
    The session builder

### clear

    public void clear()

  Description copied from interface: `Session`
  Completely clear the session. Evict all loaded instances and cancel all pending saves, updates and deletions. Do not close open iterators or instances of `ScrollableResults`.

  Specified by:
    `clear` in interface `Session`

### getTimestamp

    public long getTimestamp()

  Description copied from interface: `SessionImplementor`
  System time before the start of the transaction

  Specified by:
    `getTimestamp` in interface `SessionImplementor`

### close

    public Connection close()
                     throws HibernateException

  Description copied from interface: `Session`
  End the session by releasing the JDBC connection and cleaning up. It is not strictly necessary to close the session but you must at least `Session.disconnect()` it.

  Specified by:
    `close` in interface `Session`
  Returns:
    the connection provided by the application or null.
  Throws:
    `HibernateException` - Indicates problems cleaning up.

### getConnectionReleaseMode

    public ConnectionReleaseMode getConnectionReleaseMode()

  Description copied from interface: `TransactionContext`
  Get the mode for releasing JDBC connection in effect for ths context.

  Specified by:
    `getConnectionReleaseMode` in interface `TransactionContext`
  Returns:
    The connection release mode.

### shouldAutoJoinTransaction

    public boolean shouldAutoJoinTransaction()

  Description copied from interface: `TransactionContext`
  Should transactions be auto joined? Generally this is only a concern for CMT transactions. The default should be to auto join. JPA defines an explicit operation for joining a CMT transaction.

  Specified by:
    `shouldAutoJoinTransaction` in interface `TransactionContext`
  Returns:
    Should we automatically join transactions

### isAutoCloseSessionEnabled

    public boolean isAutoCloseSessionEnabled()

  Description copied from interface: `TransactionContext`
  Should session automatically be closed after transaction completion in this context?

  Specified by:
    `isAutoCloseSessionEnabled` in interface `TransactionContext`
  Returns:
    true/false appropriately.

### isOpen

    public boolean isOpen()

  Description copied from interface: `Session`
  Check if the session is still open.

  Specified by:
    `isOpen` in interface `SessionImplementor`
  Specified by:
    `isOpen` in interface `Session`
  Returns:
    boolean

### isFlushModeNever

    public boolean isFlushModeNever()

  Description copied from interface: `TransactionContext`
  Should flushes only happen manually for this context?

  Specified by:
    `isFlushModeNever` in interface `TransactionContext`
  Returns:
    true/false appropriately.

### isFlushBeforeCompletionEnabled

    public boolean isFlushBeforeCompletionEnabled()

  Description copied from interface: `TransactionContext`
  Should before transaction completion processing perform a flush when initiated from JTA synchronization for this context?

  Specified by:
    `isFlushBeforeCompletionEnabled` in interface `TransactionContext`
  Returns:
    true/false appropriately.

### managedFlush

    public void managedFlush()

  Description copied from interface: `TransactionContext`
  Perform a managed flush.

  Specified by:
    `managedFlush` in interface `TransactionContext`

### getNonFlushedChanges

    public NonFlushedChanges getNonFlushedChanges()
                                           throws HibernateException

  Return changes to this session and its child sessions that have not been flushed yet.

  Specified by:
    `getNonFlushedChanges` in interface `SessionImplementor`
  Returns:
    The non-flushed changes.
  Throws:
    `HibernateException`

### applyNonFlushedChanges

    public void applyNonFlushedChanges(NonFlushedChanges nonFlushedChanges)
                                throws HibernateException

  Apply non-flushed changes from a different session to this session. It is assumed that this SessionImpl is "clean" (e.g., has no non-flushed changes, no cached entities, no cached collections, no queued actions). The specified NonFlushedChanges object cannot be bound to any session.

  Specified by:
    `applyNonFlushedChanges` in interface `SessionImplementor`
  Parameters:
    `nonFlushedChanges` - the non-flushed changes
  Throws:
    `HibernateException`

### shouldAutoClose

    public boolean shouldAutoClose()

  Description copied from interface: `TransactionContext`
  Should JTA synchronization processing perform a automatic close (call to `TransactionContext.managedClose()` for this context?

  Specified by:
    `shouldAutoClose` in interface `TransactionContext`
  Returns:
    true/false appropriately.

### managedClose

    public void managedClose()

  Description copied from interface: `TransactionContext`
  Perform a managed close.

  Specified by:
    `managedClose` in interface `TransactionContext`

### connection

    public Connection connection()
                          throws HibernateException

  Specified by:
    `connection` in interface `SessionImplementor`
  Throws:
    `HibernateException`

### isConnected

    public boolean isConnected()

  Description copied from interface: `Session`
  Check if the session is currently connected.

  Specified by:
    `isConnected` in interface `SessionImplementor`
  Specified by:
    `isConnected` in interface `Session`
  Returns:
    boolean

### isTransactionInProgress

    public boolean isTransactionInProgress()

  Description copied from interface: `SessionImplementor`
  Does this `Session` have an active Hibernate transaction or is there a JTA transaction in progress?

  Specified by:
    `isTransactionInProgress` in interface `SessionImplementor`

### disconnect

    public Connection disconnect()
                          throws HibernateException

  Description copied from interface: `Session`
  Disconnect the session from its underlying JDBC connection. This is intended for use in cases where the application has supplied the JDBC connection to the session and which require long-sessions (aka, conversations).

  It is considered an error to call this method on a session which was not opened by supplying the JDBC connection and an exception will be thrown.

  For non-user-supplied scenarios, normal transaction management already handles disconnection and reconnection automatically.

  Specified by:
    `disconnect` in interface `Session`
  Returns:
    the application-supplied connection or `null`
  Throws:
    `HibernateException`
  See Also:
    `Session.reconnect(Connection)`

### reconnect

    public void reconnect(Connection conn)
                   throws HibernateException

  Description copied from interface: `Session`
  Reconnect to the given JDBC connection.

  Specified by:
    `reconnect` in interface `Session`
  Parameters:
    `conn` - a JDBC connection
  Throws:
    `HibernateException`
  See Also:
    `Session.disconnect()`

### setAutoClear

    public void setAutoClear(boolean enabled)

  Description copied from interface: `SessionImplementor`
  Enable/disable automatic cache clearing from after transaction completion (for EJB3)

  Specified by:
    `setAutoClear` in interface `SessionImplementor`

### disableTransactionAutoJoin

    public void disableTransactionAutoJoin()

  Description copied from interface: `SessionImplementor`
  Disable automatic transaction joining. The really only has any effect for CMT transactions. The default Hibernate behavior is to auto join any active JTA transaction (register `Synchronization`). JPA however defines an explicit join transaction operation. See javax.persistence.EntityManager#joinTransaction

  Specified by:
    `disableTransactionAutoJoin` in interface `SessionImplementor`

### afterOperation

    public void afterOperation(boolean success)

  Check if there is a Hibernate or JTA transaction in progress and, if there is not, flush if necessary, make sure the connection has been committed (if it is not in autocommit mode) and run the after completion processing

  Parameters:
    `success` - Was the operation a success

### afterTransactionBegin

    public void afterTransactionBegin(TransactionImplementor hibernateTransaction)

  Specified by:
    `afterTransactionBegin` in interface `TransactionContext`

### beforeTransactionCompletion

    public void beforeTransactionCompletion(TransactionImplementor hibernateTransaction)

  Specified by:
    `beforeTransactionCompletion` in interface `TransactionContext`

### afterTransactionCompletion

    public void afterTransactionCompletion(TransactionImplementor hibernateTransaction,
                                           boolean successful)

  Specified by:
    `afterTransactionCompletion` in interface `TransactionContext`

### onPrepareStatement

    public String onPrepareStatement(String sql)

  Specified by:
    `onPrepareStatement` in interface `TransactionContext`

### getCurrentLockMode

    public LockMode getCurrentLockMode(Object object)
                                throws HibernateException

  Description copied from interface: `Session`
  Determine the current lock mode of the given object.

  Specified by:
    `getCurrentLockMode` in interface `Session`
  Parameters:
    `object` - a persistent instance
  Returns:
    the current lock mode
  Throws:
    `HibernateException`

### getEntityUsingInterceptor

    public Object getEntityUsingInterceptor(EntityKey key)
                                     throws HibernateException

  Description copied from interface: `SessionImplementor`
  Get the entity instance associated with the given `Key`, calling the Interceptor if necessary

  Specified by:
    `getEntityUsingInterceptor` in interface `SessionImplementor`
  Throws:
    `HibernateException`

### saveOrUpdate

    public void saveOrUpdate(Object object)
                      throws HibernateException

  Description copied from interface: `Session`
  Either `Session.save(Object)` or `Session.update(Object)` the given instance, depending upon resolution of the unsaved-value checks (see the manual for discussion of unsaved-value checking).

  This operation cascades to associated instances if the association is mapped with `cascade="save-update"`

  Specified by:
    `saveOrUpdate` in interface `Session`
  Parameters:
    `object` - a transient or detached instance containing new or updated state
  Throws:
    `HibernateException`
  See Also:
    `Session.save(java.lang.Object)`, `Session.update(Object object)`

### saveOrUpdate

    public void saveOrUpdate(String entityName,
                             Object obj)
                      throws HibernateException

  Description copied from interface: `Session`
  Either `Session.save(String, Object)` or `Session.update(String, Object)` the given instance, depending upon resolution of the unsaved-value checks (see the manual for discussion of unsaved-value checking).

  This operation cascades to associated instances if the association is mapped with `cascade="save-update"`

  Specified by:
    `saveOrUpdate` in interface `Session`
  Parameters:
    `entityName` - The entity name
    `obj` - a transient or detached instance containing new or updated state
  Throws:
    `HibernateException`
  See Also:
    `Session.save(String,Object)`, `Session.update(String,Object)`

### save

    public Serializable save(Object obj)
                      throws HibernateException

  Description copied from interface: `Session`
  Persist the given transient instance, first assigning a generated identifier. (Or using the current value of the identifier property if the `assigned` generator is used.) This operation cascades to associated instances if the association is mapped with `cascade="save-update"`

  Specified by:
    `save` in interface `Session`
  Parameters:
    `obj` - a transient instance of a persistent class
  Returns:
    the generated identifier
  Throws:
    `HibernateException`

### save

    public Serializable save(String entityName,
                             Object object)
                      throws HibernateException

  Description copied from interface: `Session`
  Persist the given transient instance, first assigning a generated identifier. (Or using the current value of the identifier property if the `assigned` generator is used.) This operation cascades to associated instances if the association is mapped with `cascade="save-update"`

  Specified by:
    `save` in interface `Session`
  Parameters:
    `entityName` - The entity name
    `object` - a transient instance of a persistent class
  Returns:
    the generated identifier
  Throws:
    `HibernateException`

### update

    public void update(Object obj)
                throws HibernateException

  Description copied from interface: `Session`
  Update the persistent instance with the identifier of the given detached instance. If there is a persistent instance with the same identifier, an exception is thrown. This operation cascades to associated instances if the association is mapped with `cascade="save-update"`

  Specified by:
    `update` in interface `Session`
  Parameters:
    `obj` - a detached instance containing updated state
  Throws:
    `HibernateException`

### update

    public void update(String entityName,
                       Object object)
                throws HibernateException

  Description copied from interface: `Session`
  Update the persistent instance with the identifier of the given detached instance. If there is a persistent instance with the same identifier, an exception is thrown. This operation cascades to associated instances if the association is mapped with `cascade="save-update"`

  Specified by:
    `update` in interface `Session`
  Parameters:
    `entityName` - The entity name
    `object` - a detached instance containing updated state
  Throws:
    `HibernateException`

### lock

    public void lock(String entityName,
                     Object object,
                     LockMode lockMode)
              throws HibernateException

  Description copied from interface: `Session`
  Obtain the specified lock level upon the given object. This may be used to perform a version check (`LockMode.OPTIMISTIC`), to upgrade to a pessimistic lock (`LockMode.PESSIMISTIC_WRITE`), or to simply reassociate a transient instance with a session (`LockMode.NONE`). This operation cascades to associated instances if the association is mapped with `cascade="lock"`.

  Specified by:
    `lock` in interface `Session`
    `object` - a persistent or transient instance
    `lockMode` - the lock level
  Throws:
    `HibernateException`

### buildLockRequest

    public Session.LockRequest buildLockRequest(LockOptions lockOptions)

  Description copied from interface: `Session`
  Build a LockRequest that specifies the LockMode, pessimistic lock timeout and lock scope. timeout and scope is ignored for optimistic locking. After building the LockRequest, call LockRequest.lock to perform the requested locking.

  Example usage: `session.buildLockRequest().setLockMode(LockMode.PESSIMISTIC_WRITE).setTimeOut(60000).lock(entity);`

  Specified by:
    `buildLockRequest` in interface `Session`
  Parameters:
    `lockOptions` - contains the lock level
  Returns:
    a lockRequest that can be used to lock the passed object.

### lock

    public void lock(Object object,
                     LockMode lockMode)
              throws HibernateException

  Description copied from interface: `Session`
  Obtain the specified lock level upon the given object. This may be used to perform a version check (`LockMode.READ`), to upgrade to a pessimistic lock (`LockMode.PESSIMISTIC_WRITE`), or to simply reassociate a transient instance with a session (`LockMode.NONE`). This operation cascades to associated instances if the association is mapped with `cascade="lock"`.

  Specified by:
    `lock` in interface `Session`
  Parameters:
    `object` - a persistent or transient instance
    `lockMode` - the lock level
  Throws:
    `HibernateException`

### persist

    public void persist(String entityName,
                        Object object)
                 throws HibernateException

  Description copied from interface: `Session`
  Make a transient instance persistent. This operation cascades to associated instances if the association is mapped with `cascade="persist"`

  The semantics of this method are defined by JSR-220.

  Specified by:
    `persist` in interface `Session`
  Parameters:
    `entityName` - The entity name
    `object` - a transient instance to be made persistent
  Throws:
    `HibernateException`

### persist

    public void persist(Object object)
                 throws HibernateException

  Description copied from interface: `Session`
  Make a transient instance persistent. This operation cascades to associated instances if the association is mapped with `cascade="persist"`

  The semantics of this method are defined by JSR-220.

  Specified by:
    `persist` in interface `Session`
  Parameters:
    `object` - a transient instance to be made persistent
  Throws:
    `HibernateException`

### persist

    public void persist(String entityName,
                        Object object,
                        Map copiedAlready)
                 throws HibernateException

  Description copied from interface: `EventSource`
  Cascade persist an entity instance

  Specified by:
    `persist` in interface `EventSource`
  Throws:
    `HibernateException`

### persistOnFlush

    public void persistOnFlush(String entityName,
                               Object object)
                        throws HibernateException

  Throws:
    `HibernateException`

### persistOnFlush

    public void persistOnFlush(Object object)
                        throws HibernateException

  Throws:
    `HibernateException`

### persistOnFlush

    public void persistOnFlush(String entityName,
                               Object object,
                               Map copiedAlready)
                        throws HibernateException

  Description copied from interface: `EventSource`
  Cascade persist an entity instance during the flush process

  Specified by:
    `persistOnFlush` in interface `EventSource`
  Throws:
    `HibernateException`

### merge

    public Object merge(String entityName,
                        Object object)
                 throws HibernateException

  Description copied from interface: `Session`
  Copy the state of the given object onto the persistent object with the same identifier. If there is no persistent instance currently associated with the session, it will be loaded. Return the persistent instance. If the given instance is unsaved, save a copy of and return it as a newly persistent instance. The given instance does not become associated with the session. This operation cascades to associated instances if the association is mapped with `cascade="merge"`

  The semantics of this method are defined by JSR-220.

  Specified by:
    `merge` in interface `Session`
  Parameters:
    `entityName` - The entity name
    `object` - a detached instance with state to be copied
  Returns:
    an updated persistent instance
  Throws:
    `HibernateException`

### merge

    public Object merge(Object object)
                 throws HibernateException

  Description copied from interface: `Session`
  Copy the state of the given object onto the persistent object with the same identifier. If there is no persistent instance currently associated with the session, it will be loaded. Return the persistent instance. If the given instance is unsaved, save a copy of and return it as a newly persistent instance. The given instance does not become associated with the session. This operation cascades to associated instances if the association is mapped with `cascade="merge"`

  The semantics of this method are defined by JSR-220.

  Specified by:
    `merge` in interface `Session`
  Parameters:
    `object` - a detached instance with state to be copied
  Returns:
    an updated persistent instance
  Throws:
    `HibernateException`

### merge

    public void merge(String entityName,
                      Object object,
                      Map copiedAlready)
               throws HibernateException

  Description copied from interface: `EventSource`
  Cascade merge an entity instance

  Specified by:
    `merge` in interface `EventSource`
  Throws:
    `HibernateException`

### delete

    public void delete(Object object)
                throws HibernateException

  Delete a persistent object

  Specified by:
    `delete` in interface `Session`
  Parameters:
    `object` - the instance to be removed
  Throws:
    `HibernateException`

### delete

    public void delete(String entityName,
                       Object object)
                throws HibernateException

  Delete a persistent object (by explicit entity name)

  Specified by:
    `delete` in interface `Session`
  Parameters:
    `entityName` - The entity name for the instance to be removed.
    `object` - the instance to be removed
  Throws:
    `HibernateException`

### delete

    public void delete(String entityName,
                       Object object,
                       boolean isCascadeDeleteEnabled,
                       Set transientEntities)
                throws HibernateException

  Delete a persistent object

  Specified by:
    `delete` in interface `EventSource`
  Throws:
    `HibernateException`

### load

    public void load(Object object,
                     Serializable id)
              throws HibernateException

  Description copied from interface: `Session`
  Read the persistent state associated with the given identifier into the given transient instance.

  Specified by:
    `load` in interface `Session`
  Parameters:
    `object` - an "empty" instance of the persistent class
    `id` - a valid identifier of an existing persistent instance of the class
  Throws:
    `HibernateException`

### load

    public Object load(Class entityClass,
                       Serializable id)
                throws HibernateException

  Description copied from interface: `Session`
  Return the persistent instance of the given entity class with the given identifier, assuming that the instance exists. This method might return a proxied instance that is initialized on-demand, when a non-identifier method is accessed.
  You should not use this method to determine if an instance exists (use `get()` instead). Use this only to retrieve an instance that you assume exists, where non-existence would be an actual error.

  Specified by:
    `load` in interface `Session`
  Parameters:
    `entityClass` - a persistent class
    `id` - a valid identifier of an existing persistent instance of the class
  Returns:
    the persistent instance or proxy
  Throws:
    `HibernateException`

### load

    public Object load(String entityName,
                       Serializable id)
                throws HibernateException

  Description copied from interface: `Session`
  Return the persistent instance of the given entity class with the given identifier, assuming that the instance exists. This method might return a proxied instance that is initialized on-demand, when a non-identifier method is accessed.
  You should not use this method to determine if an instance exists (use `get()` instead). Use this only to retrieve an instance that you assume exists, where non-existence would be an actual error.

  Specified by:
    `load` in interface `Session`
  Parameters:
    `entityName` - a persistent class
    `id` - a valid identifier of an existing persistent instance of the class
  Returns:
    the persistent instance or proxy
  Throws:
    `HibernateException`

### get

    public Object get(Class entityClass,
                      Serializable id)
               throws HibernateException

  Description copied from interface: `Session`
  Return the persistent instance of the given entity class with the given identifier, or null if there is no such persistent instance. (If the instance is already associated with the session, return that instance. This method never returns an uninitialized instance.)

  Specified by:
    `get` in interface `Session`
  Parameters:
    `entityClass` - a persistent class
    `id` - an identifier
  Returns:
    a persistent instance or null
  Throws:
    `HibernateException`

### get

    public Object get(String entityName,
                      Serializable id)
               throws HibernateException

  Description copied from interface: `Session`
  Return the persistent instance of the given named entity with the given identifier, or null if there is no such persistent instance. (If the instance is already associated with the session, return that instance. This method never returns an uninitialized instance.)

  Specified by:
    `get` in interface `Session`
  Parameters:
    `entityName` - the entity name
    `id` - an identifier
  Returns:
    a persistent instance or null
  Throws:
    `HibernateException`

### immediateLoad

    public Object immediateLoad(String entityName,
                                Serializable id)
                         throws HibernateException

  Load the data for the object with the specified id into a newly created object. This is only called when lazily initializing a proxy. Do NOT return a proxy.

  Specified by:
    `immediateLoad` in interface `SessionImplementor`
  Throws:
    `HibernateException`

### internalLoad

    public Object internalLoad(String entityName,
                               Serializable id,
                               boolean eager,
                               boolean nullable)
                        throws HibernateException

  Description copied from interface: `SessionImplementor`
  Load an instance without checking if it was deleted. When `nullable` is disabled this method may create a new proxy or return an existing proxy; if it does not exist, throw an exception. When `nullable` is enabled, the method does not create new proxies (but might return an existing proxy); if it does not exist, return `null`. When `eager` is enabled, the object is eagerly fetched

  Specified by:
    `internalLoad` in interface `SessionImplementor`
  Throws:
    `HibernateException`

### load

    public Object load(Class entityClass,
                       Serializable id,
                       LockMode lockMode)
                throws HibernateException

  Description copied from interface: `Session`
  Return the persistent instance of the given entity class with the given identifier, obtaining the specified lock mode, assuming the instance exists.

  Specified by:
    `load` in interface `Session`
  Parameters:
    `entityClass` - a persistent class
    `id` - a valid identifier of an existing persistent instance of the class
    `lockMode` - the lock level
  Returns:
    the persistent instance or proxy
  Throws:
    `HibernateException`

### load

    public Object load(Class entityClass,
                       Serializable id,
                       LockOptions lockOptions)
                throws HibernateException

  Description copied from interface: `Session`
  Return the persistent instance of the given entity class with the given identifier, obtaining the specified lock mode, assuming the instance exists.

  Specified by:
    `load` in interface `Session`
  Parameters:
    `entityClass` - a persistent class
    `id` - a valid identifier of an existing persistent instance of the class
    `lockOptions` - contains the lock level
  Returns:
    the persistent instance or proxy
  Throws:
    `HibernateException`

### load

    public Object load(String entityName,
                       Serializable id,
                       LockMode lockMode)
                throws HibernateException

  Description copied from interface: `Session`
  Return the persistent instance of the given entity class with the given identifier, obtaining the specified lock mode, assuming the instance exists.

  Specified by:
    `load` in interface `Session`
  Parameters:
    `entityName` - a persistent class
    `id` - a valid identifier of an existing persistent instance of the class
    `lockMode` - the lock level
  Returns:
    the persistent instance or proxy
  Throws:
    `HibernateException`

### load

    public Object load(String entityName,
                       Serializable id,
                       LockOptions lockOptions)
                throws HibernateException

  Description copied from interface: `Session`
  Return the persistent instance of the given entity class with the given identifier, obtaining the specified lock mode, assuming the instance exists.

  Specified by:
    `load` in interface `Session`
  Parameters:
    `entityName` - a persistent class
    `id` - a valid identifier of an existing persistent instance of the class
    `lockOptions` - contains the lock level
  Returns:
    the persistent instance or proxy
  Throws:
    `HibernateException`

### get

    public Object get(Class entityClass,
                      Serializable id,
                      LockMode lockMode)
               throws HibernateException

  Description copied from interface: `Session`
  Return the persistent instance of the given entity class with the given identifier, or null if there is no such persistent instance. (If the instance is already associated with the session, return that instance. This method never returns an uninitialized instance.) Obtain the specified lock mode if the instance exists.

  Specified by:
    `get` in interface `Session`
  Parameters:
    `entityClass` - a persistent class
    `id` - an identifier
    `lockMode` - the lock mode
  Returns:
    a persistent instance or null
  Throws:
    `HibernateException`

### get

    public Object get(Class entityClass,
                      Serializable id,
                      LockOptions lockOptions)
               throws HibernateException

  Description copied from interface: `Session`
  Return the persistent instance of the given entity class with the given identifier, or null if there is no such persistent instance. (If the instance is already associated with the session, return that instance. This method never returns an uninitialized instance.) Obtain the specified lock mode if the instance exists.

  Specified by:
    `get` in interface `Session`
  Parameters:
    `entityClass` - a persistent class
    `id` - an identifier
    `lockOptions` - the lock mode
  Returns:
    a persistent instance or null
  Throws:
    `HibernateException`

### get

    public Object get(String entityName,
                      Serializable id,
                      LockMode lockMode)
               throws HibernateException

  Description copied from interface: `Session`
  Return the persistent instance of the given entity class with the given identifier, or null if there is no such persistent instance. (If the instance is already associated with the session, return that instance. This method never returns an uninitialized instance.) Obtain the specified lock mode if the instance exists.

  Specified by:
    `get` in interface `Session`
  Parameters:
    `entityName` - the entity name
    `id` - an identifier
    `lockMode` - the lock mode
  Returns:
    a persistent instance or null
  Throws:
    `HibernateException`

### get

    public Object get(String entityName,
                      Serializable id,
                      LockOptions lockOptions)
               throws HibernateException

  Description copied from interface: `Session`
  Return the persistent instance of the given entity class with the given identifier, or null if there is no such persistent instance. (If the instance is already associated with the session, return that instance. This method never returns an uninitialized instance.) Obtain the specified lock mode if the instance exists.

  Specified by:
    `get` in interface `Session`
  Parameters:
    `entityName` - the entity name
    `id` - an identifier
    `lockOptions` - contains the lock mode
  Returns:
    a persistent instance or null
  Throws:
    `HibernateException`

### byId

    public org.hibernate.internal.SessionImpl.IdentifierLoadAccessImpl byId(String entityName)

  Description copied from interface: `Session`
  Create an `IdentifierLoadAccess` instance to retrieve the specified entity type by primary key.

  Specified by:
    `byId` in interface `Session`
  Parameters:
    `entityName` - The entity name of the entity type to be retrieved
  Returns:
    load delegate for loading the specified entity type by primary key

### byId

    public org.hibernate.internal.SessionImpl.IdentifierLoadAccessImpl byId(Class entityClass)

  Description copied from interface: `Session`
  Create an `IdentifierLoadAccess` instance to retrieve the specified entity by primary key.

  Specified by:
    `byId` in interface `Session`
  Parameters:
    `entityClass` - The entity type to be retrieved
  Returns:
    load delegate for loading the specified entity type by primary key

### byNaturalId

    public NaturalIdLoadAccess byNaturalId(String entityName)

  Description copied from interface: `Session`
  Create an `NaturalIdLoadAccess` instance to retrieve the specified entity by its natural id.

  Specified by:
    `byNaturalId` in interface `Session`
  Parameters:
    `entityName` - The entity name of the entity type to be retrieved
  Returns:
    load delegate for loading the specified entity type by natural id

### byNaturalId

    public NaturalIdLoadAccess byNaturalId(Class entityClass)

  Description copied from interface: `Session`
  Create an `NaturalIdLoadAccess` instance to retrieve the specified entity by its natural id.

  Specified by:
    `byNaturalId` in interface `Session`
  Parameters:
    `entityClass` - The entity type to be retrieved
  Returns:
    load delegate for loading the specified entity type by natural id

### bySimpleNaturalId

    public SimpleNaturalIdLoadAccess bySimpleNaturalId(String entityName)

  Description copied from interface: `Session`
  Create an `SimpleNaturalIdLoadAccess` instance to retrieve the specified entity by its natural id.

  Specified by:
    `bySimpleNaturalId` in interface `Session`
  Parameters:
    `entityName` - The entity name of the entity type to be retrieved
  Returns:
    load delegate for loading the specified entity type by natural id

### bySimpleNaturalId

    public SimpleNaturalIdLoadAccess bySimpleNaturalId(Class entityClass)

  Description copied from interface: `Session`
  Create an `SimpleNaturalIdLoadAccess` instance to retrieve the specified entity by its simple (single attribute) natural id.

  Specified by:
    `bySimpleNaturalId` in interface `Session`
  Parameters:
    `entityClass` - The entity type to be retrieved
  Returns:
    load delegate for loading the specified entity type by natural id

### refresh

    public void refresh(Object object)
                 throws HibernateException

  Description copied from interface: `Session`
  Re-read the state of the given instance from the underlying database. It is inadvisable to use this to implement long-running sessions that span many business tasks. This method is, however, useful in certain special circumstances. For example
  - where a database trigger alters the object state upon insert or update
  - after executing direct SQL (eg. a mass update) in the same session
  - after inserting a `Blob` or `Clob`

  Specified by:
    `refresh` in interface `Session`
  Parameters:
    `object` - a persistent or detached instance
  Throws:
    `HibernateException`

### refresh

    public void refresh(String entityName,
                        Object object)
                 throws HibernateException

  Description copied from interface: `Session`
  Re-read the state of the given instance from the underlying database. It is inadvisable to use this to implement long-running sessions that span many business tasks. This method is, however, useful in certain special circumstances. For example
  - where a database trigger alters the object state upon insert or update
  - after executing direct SQL (eg. a mass update) in the same session
  - after inserting a `Blob` or `Clob`

  Specified by:
    `refresh` in interface `Session`
  Parameters:
    `entityName` - a persistent class
    `object` - a persistent or detached instance
  Throws:
    `HibernateException`

### refresh

    public void refresh(Object object,
                        LockMode lockMode)
                 throws HibernateException

  Description copied from interface: `Session`
  Re-read the state of the given instance from the underlying database, with the given `LockMode`. It is inadvisable to use this to implement long-running sessions that span many business tasks. This method is, however, useful in certain special circumstances.

  Specified by:
    `refresh` in interface `Session`
  Parameters:
    `object` - a persistent or detached instance
    `lockMode` - the lock mode to use
  Throws:
    `HibernateException`

### refresh

    public void refresh(Object object,
                        LockOptions lockOptions)
                 throws HibernateException

  Description copied from interface: `Session`
  Re-read the state of the given instance from the underlying database, with the given `LockMode`. It is inadvisable to use this to implement long-running sessions that span many business tasks. This method is, however, useful in certain special circumstances.

  Specified by:
    `refresh` in interface `Session`
  Parameters:
    `object` - a persistent or detached instance
    `lockOptions` - contains the lock mode to use
  Throws:
    `HibernateException`

### refresh

    public void refresh(String entityName,
                        Object object,
                        LockOptions lockOptions)
                 throws HibernateException

  Description copied from interface: `Session`
  Re-read the state of the given instance from the underlying database, with the given `LockMode`. It is inadvisable to use this to implement long-running sessions that span many business tasks. This method is, however, useful in certain special circumstances.

  Specified by:
    `refresh` in interface `Session`
  Parameters:
    `entityName` - a persistent class
    `object` - a persistent or detached instance
    `lockOptions` - contains the lock mode to use
  Throws:
    `HibernateException`

### refresh

    public void refresh(Object object,
                        Map refreshedAlready)
                 throws HibernateException

  Description copied from interface: `EventSource`
  Cascade refresh an entity instance

  Specified by:
    `refresh` in interface `EventSource`
  Throws:
    `HibernateException`

### replicate

    public void replicate(Object obj,
                          ReplicationMode replicationMode)
                   throws HibernateException

  Description copied from interface: `Session`
  Persist the state of the given detached instance, reusing the current identifier value. This operation cascades to associated instances if the association is mapped with `cascade="replicate"`

  Specified by:
    `replicate` in interface `Session`
  Parameters:
    `obj` - a detached instance of a persistent class
    `replicationMode` - The replication mode to use
  Throws:
    `HibernateException`

### replicate

    public void replicate(String entityName,
                          Object obj,
                          ReplicationMode replicationMode)
                   throws HibernateException

  Description copied from interface: `Session`
  Persist the state of the given detached instance, reusing the current identifier value. This operation cascades to associated instances if the association is mapped with `cascade="replicate"`

  Specified by:
    `replicate` in interface `Session`
  Parameters:
    `entityName` - The entity name
    `obj` - a detached instance of a persistent class
    `replicationMode` - The replication mode to use
  Throws:
    `HibernateException`

### evict

    public void evict(Object object)
               throws HibernateException

  remove any hard references to the entity that are held by the infrastructure (references held by application or other persistant instances are okay)

  Specified by:
    `evict` in interface `Session`
  Parameters:
    `object` - a persistent instance
  Throws:
    `HibernateException`

### autoFlushIfRequired

    protected boolean autoFlushIfRequired(Set querySpaces)
                                   throws HibernateException

  detect in-memory changes, determine if the changes are to tables named in the query and, if so, complete execution the flush

  Throws:
    `HibernateException`

### isDirty

    public boolean isDirty()
                    throws HibernateException

  Description copied from interface: `Session`
  Does this session contain any changes which must be synchronized with the database? In other words, would any DML operations be executed if we flushed this session?

  Specified by:
    `isDirty` in interface `Session`
  Returns:
    True if the session contains pending changes; false otherwise.
  Throws:
    `HibernateException` - could not perform dirtying checking

### flush

    public void flush()
               throws HibernateException

  Description copied from interface: `Session`
  Force this session to flush. Must be called at the end of a unit of work, before committing the transaction and closing the session (depending on `Session.setFlushMode(FlushMode)`, `Transaction.commit()` calls this method).

  Flushing is the process of synchronizing the underlying persistent store with persistable state held in memory.

  Specified by:
    `flush` in interface `SessionImplementor`
  Specified by:
    `flush` in interface `Session`
  Throws:
    `HibernateException` - Indicates problems flushing the session or talking to the database.

### forceFlush

    public void forceFlush(EntityEntry entityEntry)
                    throws HibernateException

  Description copied from interface: `EventSource`
  Force an immediate flush

  Specified by:
    `forceFlush` in interface `EventSource`
  Throws:
    `HibernateException`

### list

    public List list(String query,
                     QueryParameters queryParameters)
              throws HibernateException

  Description copied from interface: `SessionImplementor`
  Execute a `find()` query

  Specified by:
    `list` in interface `SessionImplementor`
  Throws:
    `HibernateException`

### executeUpdate

    public int executeUpdate(String query,
                             QueryParameters queryParameters)
                      throws HibernateException

  Description copied from interface: `SessionImplementor`
  Execute a HQL update or delete query

  Specified by:
    `executeUpdate` in interface `SessionImplementor`
  Throws:
    `HibernateException`

### executeNativeUpdate

    public int executeNativeUpdate(NativeSQLQuerySpecification nativeQuerySpecification,
                                   QueryParameters queryParameters)
                            throws HibernateException

  Description copied from interface: `SessionImplementor`
  Execute a native SQL update or delete query

  Specified by:
    `executeNativeUpdate` in interface `SessionImplementor`
  Throws:
    `HibernateException`

### iterate

    public Iterator iterate(String query,
                            QueryParameters queryParameters)
                     throws HibernateException

  Description copied from interface: `SessionImplementor`
  Execute an `iterate()` query

  Specified by:
    `iterate` in interface `SessionImplementor`
  Throws:
    `HibernateException`

### scroll

    public ScrollableResults scroll(String query,
                                    QueryParameters queryParameters)
                             throws HibernateException

  Description copied from interface: `SessionImplementor`
  Execute a `scroll()` query

  Specified by:
    `scroll` in interface `SessionImplementor`
  Throws:
    `HibernateException`

### createFilter

    public Query createFilter(Object collection,
                              String queryString)

  Description copied from interface: `Session`
  Create a `Query` instance for the given collection and filter string. Contains an implicit `FROM` element named `this` which refers to the defined table for the collection elements, as well as an implicit `WHERE` restriction for this particular collection instance's key value.

  Specified by:
    `createFilter` in interface `Session`
  Parameters:
    `collection` - a persistent collection
    `queryString` - a Hibernate query fragment.
  Returns:
    The query instance for manipulation and execution

### getNamedQuery

    public Query getNamedQuery(String queryName)
                        throws MappingException

  Description copied from interface: `SharedSessionContract`
  Create a `Query` instance for the named query string defined in the metadata.

  Specified by:
    `getNamedQuery` in interface `SessionImplementor`
  Specified by:
    `getNamedQuery` in interface `SharedSessionContract`
  Overrides:
    `getNamedQuery` in class `AbstractSessionImpl`
  Parameters:
    `queryName` - the name of a query defined externally
  Returns:
    The query instance for manipulation and execution
  Throws:
    `MappingException`

### instantiate

    public Object instantiate(String entityName,
                              Serializable id)
                       throws HibernateException

  Description copied from interface: `SessionImplementor`
  Instantiate the entity class, initializing with the given identifier

  Specified by:
    `instantiate` in interface `SessionImplementor`
  Throws:
    `HibernateException`

### instantiate

    public Object instantiate(EntityPersister persister,
                              Serializable id)
                       throws HibernateException

  give the interceptor an opportunity to override the default instantiation

  Specified by:
    `instantiate` in interface `EventSource`
  Throws:
    `HibernateException`

### setFlushMode

    public void setFlushMode(FlushMode flushMode)

  Description copied from interface: `Session`
  Set the flush mode for this session.

  The flush mode determines the points at which the session is flushed. Flushing is the process of synchronizing the underlying persistent store with persistable state held in memory.

  For a logically "read only" session, it is reasonable to set the session's flush mode to `FlushMode.MANUAL` at the start of the session (in order to achieve some extra performance).

  Specified by:
    `setFlushMode` in interface `SessionImplementor`
  Specified by:
    `setFlushMode` in interface `Session`
  Parameters:
    `flushMode` - the new flush mode
  See Also:
    `FlushMode`

### getFlushMode

    public FlushMode getFlushMode()

  Description copied from interface: `Session`
  Get the current flush mode for this session.

  Specified by:
    `getFlushMode` in interface `SessionImplementor`
  Specified by:
    `getFlushMode` in interface `Session`
  Returns:
    The flush mode

### getCacheMode

    public CacheMode getCacheMode()

  Description copied from interface: `Session`
  Get the current cache mode.

  Specified by:
    `getCacheMode` in interface `SessionImplementor`
  Specified by:
    `getCacheMode` in interface `Session`
  Returns:
    The current cache mode.

### setCacheMode

    public void setCacheMode(CacheMode cacheMode)

  Description copied from interface: `Session`
  Set the cache mode.

  Cache mode determines the manner in which this session can interact with the second level cache.

  Specified by:
    `setCacheMode` in interface `SessionImplementor`
  Specified by:
    `setCacheMode` in interface `Session`
  Parameters:
    `cacheMode` - The new cache mode.

### getTransaction

    public Transaction getTransaction()
                               throws HibernateException

  Description copied from interface: `SharedSessionContract`
  Get the `Transaction` instance associated with this session. The concrete type of the returned `Transaction` object is determined by the `hibernate.transaction_factory` property.

  Specified by:
    `getTransaction` in interface `SharedSessionContract`
  Returns:
    a Transaction instance
  Throws:
    `HibernateException`

### beginTransaction

    public Transaction beginTransaction()
                                 throws HibernateException

  Description copied from interface: `SharedSessionContract`
  Begin a unit of work and return the associated `Transaction` object. If a new underlying transaction is required, begin the transaction. Otherwise continue the new work in the context of the existing underlying transaction.

  Specified by:
    `beginTransaction` in interface `SharedSessionContract`
  Returns:
    a Transaction instance
  Throws:
    `HibernateException`
  See Also:
    `SharedSessionContract.getTransaction()`

### getEntityPersister

    public EntityPersister getEntityPersister(String entityName,
                                              Object object)

  Description copied from interface: `SessionImplementor`
  Get the `EntityPersister` for any instance

  Specified by:
    `getEntityPersister` in interface `SessionImplementor`
  Parameters:
    `entityName` - optional entity name
    `object` - the entity instance

### getIdentifier

    public Serializable getIdentifier(Object object)
                               throws HibernateException

  Description copied from interface: `Session`
  Return the identifier value of the given entity as associated with this session. An exception is thrown if the given entity instance is transient or detached in relation to this session.

  Specified by:
    `getIdentifier` in interface `Session`
  Parameters:
    `object` - a persistent instance
  Returns:
    the identifier
  Throws:
    `TransientObjectException` - if the instance is transient or associated with a different session
    `HibernateException`

### getContextEntityIdentifier

    public Serializable getContextEntityIdentifier(Object object)

  Get the id value for an object that is actually associated with the session. This is a bit stricter than getEntityIdentifierIfNotUnsaved().

  Specified by:
    `getContextEntityIdentifier` in interface `SessionImplementor`

### listFilter

    public List listFilter(Object collection,
                           String filter,
                           QueryParameters queryParameters)
                    throws HibernateException

  Description copied from interface: `SessionImplementor`
  Execute a filter

  Specified by:
    `listFilter` in interface `SessionImplementor`
  Throws:
    `HibernateException`

### iterateFilter

    public Iterator iterateFilter(Object collection,
                                  String filter,
                                  QueryParameters queryParameters)
                           throws HibernateException

  Description copied from interface: `SessionImplementor`
  Iterate a filter

  Specified by:
    `iterateFilter` in interface `SessionImplementor`
  Throws:
    `HibernateException`

### createCriteria

    public Criteria createCriteria(Class persistentClass,
                                   String alias)

  Description copied from interface: `SharedSessionContract`
  Create `Criteria` instance for the given class (entity or subclasses/implementors), using a specific alias.

  Specified by:
    `createCriteria` in interface `SharedSessionContract`
  Parameters:
    `persistentClass` - The class, which is an entity, or has entity subclasses/implementors
    `alias` - The alias to use
  Returns:
    The criteria instance for manipulation and execution

### createCriteria

    public Criteria createCriteria(String entityName,
                                   String alias)

  Description copied from interface: `SharedSessionContract`
  Create `Criteria` instance for the given entity name, using a specific alias.

  Specified by:
    `createCriteria` in interface `SharedSessionContract`
  Parameters:
    `entityName` - The entity name
    `alias` - The alias to use
  Returns:
    The criteria instance for manipulation and execution

### createCriteria

    public Criteria createCriteria(Class persistentClass)

  Description copied from interface: `SharedSessionContract`
  Create `Criteria` instance for the given class (entity or subclasses/implementors)

  Specified by:
    `createCriteria` in interface `SharedSessionContract`
  Parameters:
    `persistentClass` - The class, which is an entity, or has entity subclasses/implementors
  Returns:
    The criteria instance for manipulation and execution

### createCriteria

    public Criteria createCriteria(String entityName)

  Description copied from interface: `SharedSessionContract`
  Create `Criteria` instance for the given entity name.

  Specified by:
    `createCriteria` in interface `SharedSessionContract`
  Parameters:
    `entityName` - The entity name
  Returns:
    The criteria instance for manipulation and execution

### scroll

    public ScrollableResults scroll(CriteriaImpl criteria,
                                    ScrollMode scrollMode)

  Description copied from interface: `SessionImplementor`
  Execute a criteria query

  Specified by:
    `scroll` in interface `SessionImplementor`

### list

    public List list(CriteriaImpl criteria)
              throws HibernateException

  Description copied from interface: `SessionImplementor`
  Execute a criteria query

  Specified by:
    `list` in interface `SessionImplementor`
  Throws:
    `HibernateException`

### contains

    public boolean contains(Object object)

  Description copied from interface: `Session`
  Check if this instance is associated with this `Session`.

  Specified by:
    `contains` in interface `Session`
  Parameters:
    `object` - an instance of a persistent class
  Returns:
    true if the given instance is associated with this `Session`

### createQuery

    public Query createQuery(String queryString)

  Description copied from interface: `SharedSessionContract`
  Create a `Query` instance for the given HQL query string.

  Specified by:
    `createQuery` in interface `SharedSessionContract`
  Overrides:
    `createQuery` in class `AbstractSessionImpl`
  Parameters:
    `queryString` - The HQL query
  Returns:
    The query instance for manipulation and execution

### createSQLQuery

    public SQLQuery createSQLQuery(String sql)

  Description copied from interface: `SharedSessionContract`
  Create a `SQLQuery` instance for the given SQL query string.

  Specified by:
    `createSQLQuery` in interface `SharedSessionContract`
  Overrides:
    `createSQLQuery` in class `AbstractSessionImpl`
  Parameters:
    `sql` - The SQL query
  Returns:
    The query instance for manipulation and execution

### scrollCustomQuery

    public ScrollableResults scrollCustomQuery(CustomQuery customQuery,
                                               QueryParameters queryParameters)
                                        throws HibernateException

  Description copied from interface: `SessionImplementor`
  Execute an SQL Query

  Specified by:
    `scrollCustomQuery` in interface `SessionImplementor`
  Throws:
    `HibernateException`

### listCustomQuery

    public List listCustomQuery(CustomQuery customQuery,
                                QueryParameters queryParameters)
                         throws HibernateException

  Description copied from interface: `SessionImplementor`
  Execute an SQL Query

  Specified by:
    `listCustomQuery` in interface `SessionImplementor`
  Throws:
    `HibernateException`

### getSessionFactory

    public SessionFactoryImplementor getSessionFactory()

  Description copied from interface: `Session`
  Get the session factory which created this session.

  Specified by:
    `getSessionFactory` in interface `Session`
  Returns:
    The session factory.
  See Also:
    `SessionFactory`

### initializeCollection

    public void initializeCollection(PersistentCollection collection,
                                     boolean writing)
                              throws HibernateException

  Description copied from interface: `SessionImplementor`
  Initialize the collection (if not already initialized)

  Specified by:
    `initializeCollection` in interface `SessionImplementor`
  Throws:
    `HibernateException`

### bestGuessEntityName

    public String bestGuessEntityName(Object object)

  Description copied from interface: `SessionImplementor`
  The best guess entity name for an entity not in an association

  Specified by:
    `bestGuessEntityName` in interface `SessionImplementor`

### getEntityName

    public String getEntityName(Object object)

  Description copied from interface: `Session`
  Return the entity name for a persistent entity

  Specified by:
    `getEntityName` in interface `Session`
  Parameters:
    `object` - a persistent entity
  Returns:
    the entity name

### guessEntityName

    public String guessEntityName(Object object)
                           throws HibernateException

  Description copied from interface: `SessionImplementor`
  The guessed entity name for an entity not in an association

  Specified by:
    `guessEntityName` in interface `SessionImplementor`
  Throws:
    `HibernateException`

### cancelQuery

    public void cancelQuery()
                     throws HibernateException

  Description copied from interface: `Session`
  Cancel the execution of the current query.

  This is the sole method on session which may be safely called from another thread.

  Specified by:
    `cancelQuery` in interface `Session`
  Throws:
    `HibernateException` - There was a problem canceling the query

### getInterceptor

    public Interceptor getInterceptor()

  Description copied from interface: `SessionImplementor`
  Retrieves the interceptor currently in use by this event source.

  Specified by:
    `getInterceptor` in interface `SessionImplementor`
  Returns:
    The interceptor.

### getDontFlushFromFind

    public int getDontFlushFromFind()

  Specified by:
    `getDontFlushFromFind` in interface `SessionImplementor`

### toString

    public String toString()

  Overrides:
    `toString` in class `Object`

### getActionQueue

    public ActionQueue getActionQueue()

  Description copied from interface: `EventSource`
  Get the ActionQueue for this session

  Specified by:
    `getActionQueue` in interface `EventSource`

### getPersistenceContext

    public PersistenceContext getPersistenceContext()

  Description copied from interface: `SessionImplementor`
  Get the persistence context for this session

  Specified by:
    `getPersistenceContext` in interface `SessionImplementor`

### getStatistics

    public SessionStatistics getStatistics()

  Description copied from interface: `Session`
  Get the statistics for this session.

  Specified by:
    `getStatistics` in interface `Session`
  Returns:
    The session statistics being collected for this session

### isEventSource

    public boolean isEventSource()

  Specified by:
    `isEventSource` in interface `SessionImplementor`

### isDefaultReadOnly

    public boolean isDefaultReadOnly()

  Will entities and proxies that are loaded into this session be made read-only by default? To determine the read-only/modifiable setting for a particular entity or proxy:

  Specified by:
    `isDefaultReadOnly` in interface `Session`
  Returns:
    true, loaded entities/proxies will be made read-only by default; false, loaded entities/proxies will be made modifiable by default.
  See Also:
    `Session.isReadOnly(Object)`

### setDefaultReadOnly

    public void setDefaultReadOnly(boolean defaultReadOnly)

  Change the default for entities and proxies loaded into this session from modifiable to read-only mode, or from modifiable to read-only mode. Read-only entities are not dirty-checked and snapshots of persistent state are not maintained. Read-only entities can be modified, but changes are not persisted. When a proxy is initialized, the loaded entity will have the same read-only/modifiable setting as the uninitialized proxy has, regardless of the session's current setting. To change the read-only/modifiable setting for a particular entity or proxy that is already in this session:

  Specified by:
    `setDefaultReadOnly` in interface `Session`
  Parameters:
    `defaultReadOnly` - true, the default for loaded entities/proxies is read-only; false, the default for loaded entities/proxies is modifiable
  See Also:
    `To override this session's read-only/modifiable setting for entities and proxies loaded by a Query:`, `Query.setReadOnly(boolean)`

### isReadOnly

    public boolean isReadOnly(Object entityOrProxy)

  Description copied from interface: `Session`
  Is the specified entity or proxy read-only? To get the default read-only/modifiable setting used for entities and proxies that are loaded into the session:

  Specified by:
    `isReadOnly` in interface `Session`
  Parameters:
    `entityOrProxy` - an entity or HibernateProxy
  Returns:
    `true` if the entity or proxy is read-only, `false` if the entity or proxy is modifiable.
  See Also:
    `Session.isDefaultReadOnly()`

### setReadOnly

    public void setReadOnly(Object entity,
                            boolean readOnly)

  Description copied from interface: `Session`
  Set an unmodified persistent object to read-only mode, or a read-only object to modifiable mode. In read-only mode, no snapshot is maintained, the instance is never dirty checked, and changes are not persisted. If the entity or proxy already has the specified read-only/modifiable setting, then this method does nothing. To set the default read-only/modifiable setting used for entities and proxies that are loaded into the session:

  Specified by:
    `setReadOnly` in interface `Session`
  Parameters:
    `entity` - an entity or HibernateProxy
    `readOnly` - `true` if the entity or proxy should be made read-only; `false` if the entity or proxy should be made modifiable
  See Also:
    `To override this session's read-only/modifiable setting for entities and proxies loaded by a Query:`, `Query.setReadOnly(boolean)`

### doWork

    public void doWork(Work work)
                throws HibernateException

  Description copied from interface: `Session`
  Controller for allowing users to perform JDBC related work using the Connection managed by this Session.

  Specified by:
    `doWork` in interface `Session`
  Parameters:
    `work` - The work to be performed.
  Throws:
    `HibernateException` - Generally indicates wrapped `SQLException`

### doReturningWork

    public <T> T doReturningWork(ReturningWork<T> work)
                      throws HibernateException

  Description copied from interface: `Session`
  Controller for allowing users to perform JDBC related work using the Connection managed by this Session. After execution returns the result of the `ReturningWork.execute(java.sql.Connection)` call.

  Specified by:
    `doReturningWork` in interface `Session`
  Parameters:
    `work` - The work to be performed.
  Returns:
    the result from calling `ReturningWork.execute(java.sql.Connection)`.
  Throws:
    `HibernateException` - Generally indicates wrapped `SQLException`

### afterScrollOperation

    public void afterScrollOperation()

  Specified by:
    `afterScrollOperation` in interface `SessionImplementor`

### getTransactionCoordinator

    public TransactionCoordinator getTransactionCoordinator()

  Description copied from interface: `SessionImplementor`
  Retrieve access to the session's transaction coordinator.

  Specified by:
    `getTransactionCoordinator` in interface `SessionImplementor`
  Returns:
    The transaction coordinator.

### getLoadQueryInfluencers

    public LoadQueryInfluencers getLoadQueryInfluencers()

  Description copied from interface: `SessionImplementor`
  Get the load query influencers associated with this session.

  Specified by:
    `getLoadQueryInfluencers` in interface `SessionImplementor`
  Returns:
    the load query influencers associated with this session; should never be null.

### getEnabledFilter

    public Filter getEnabledFilter(String filterName)

  Retrieve a currently enabled filter by name.

  Specified by:
    `getEnabledFilter` in interface `Session`
  Parameters:
    `filterName` - The name of the filter to be retrieved.
  Returns:
    The Filter instance representing the enabled filter.

### enableFilter

    public Filter enableFilter(String filterName)

  Enable the named filter for this current session.

  Specified by:
    `enableFilter` in interface `Session`
  Parameters:
    `filterName` - The name of the filter to be enabled.
  Returns:
    The Filter instance representing the enabled filter.

### disableFilter

    public void disableFilter(String filterName)

  Disable the named filter for the current session.

  Specified by:
    `disableFilter` in interface `Session`
  Parameters:
    `filterName` - The name of the filter to be disabled.

### getFilterParameterValue

    public Object getFilterParameterValue(String filterParameterName)

  Retreive the currently set value for a filter parameter.

  Specified by:
    `getFilterParameterValue` in interface `SessionImplementor`
  Parameters:
    `filterParameterName` - The filter parameter name in the format {FILTER_NAME.PARAMETER_NAME}.
  Returns:
    The filter parameter value.

### getFilterParameterType

    public Type getFilterParameterType(String filterParameterName)

  Retreive the type for a given filter parrameter.

  Specified by:
    `getFilterParameterType` in interface `SessionImplementor`
  Parameters:
    `filterParameterName` - The filter parameter name in the format {FILTER_NAME.PARAMETER_NAME}.
  Returns:
    The filter param type

### getEnabledFilters

    public Map getEnabledFilters()

  Return the currently enabled filters. The filter map is keyed by filter name, with values corresponding to the `FilterImpl` instance.

  Specified by:
    `getEnabledFilters` in interface `SessionImplementor`
  Returns:
    The currently enabled filters.

### getFetchProfile

    public String getFetchProfile()

  Get the internal fetch profile currently associated with this session.

  Specified by:
    `getFetchProfile` in interface `SessionImplementor`
  Returns:
    The current internal fetch profile, or null if none currently associated.

### setFetchProfile

    public void setFetchProfile(String fetchProfile)

  Set the current internal fetch profile for this session.

  Specified by:
    `setFetchProfile` in interface `SessionImplementor`
  Parameters:
    `fetchProfile` - The internal fetch profile name to use

### isFetchProfileEnabled

    public boolean isFetchProfileEnabled(String name)
                                  throws UnknownProfileException

  Description copied from interface: `Session`
  Is a particular fetch profile enabled on this session?

  Specified by:
    `isFetchProfileEnabled` in interface `Session`
  Parameters:
    `name` - The name of the profile to be checked.
  Returns:
    True if fetch profile is enabled; false if not.
  Throws:
    `UnknownProfileException` - Indicates that the given name does not match any known profile names
  See Also:
    `for discussion of this feature`

### enableFetchProfile

    public void enableFetchProfile(String name)
                            throws UnknownProfileException

  Description copied from interface: `Session`
  Enable a particular fetch profile on this session. No-op if requested profile is already enabled.

  Specified by:
    `enableFetchProfile` in interface `Session`
  Parameters:
    `name` - The name of the fetch profile to be enabled.
  Throws:
    `UnknownProfileException` - Indicates that the given name does not match any known profile names
  See Also:
    `for discussion of this feature`

### disableFetchProfile

    public void disableFetchProfile(String name)
                             throws UnknownProfileException

  Description copied from interface: `Session`
  Disable a particular fetch profile on this session. No-op if requested profile is already disabled.

  Specified by:
    `disableFetchProfile` in interface `Session`
  Parameters:
    `name` - The name of the fetch profile to be disabled.
  Throws:
    `UnknownProfileException` - Indicates that the given name does not match any known profile names
  See Also:
    `for discussion of this feature`

### getTypeHelper

    public TypeHelper getTypeHelper()

  Convenience access to the `TypeHelper` associated with this session's `SessionFactory`.

  Equivalent to calling `Session.getSessionFactory()`.`getTypeHelper()`

  Specified by:
    `getTypeHelper` in interface `Session`
  Returns:
    The `TypeHelper` associated with this session's `SessionFactory`

### getLobHelper

    public LobHelper getLobHelper()

  Description copied from interface: `Session`
  Retrieve this session's helper/delegate for creating LOB instances.

  Specified by:
    `getLobHelper` in interface `Session`
  Returns:
    This session's LOB helper

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2001-2012 Red Hat, Inc. All Rights Reserved.