Package org.hibernate.engine.spi
Class AbstractDelegatingSessionBuilder<T extends SessionBuilder>
- java.lang.Object
-
- org.hibernate.engine.spi.AbstractDelegatingSessionBuilder<T>
-
- All Implemented Interfaces:
SessionBuilder<T>
- Direct Known Subclasses:
AbstractDelegatingSessionBuilderImplementor
public abstract class AbstractDelegatingSessionBuilder<T extends SessionBuilder> extends Object implements SessionBuilder<T>
Base class forSessionBuilder
implementations that wish to implement only parts of that contract themselves while forwarding other method invocations to a delegate instance.
-
-
Constructor Summary
Constructors Constructor Description AbstractDelegatingSessionBuilder(SessionBuilder delegate)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description T
autoClear(boolean autoClear)
Should the session be automatically cleared on a failed transaction?T
autoClose(boolean autoClose)
Should the session be automatically closed after transaction completion?T
autoJoinTransactions(boolean autoJoinTransactions)
Should the session built automatically join in any ongoing JTA transactions.T
clearEventListeners()
Remove all listeners intended for the built session currently held here, including any auto-apply ones; in other words, start with a clean slate.T
connection(Connection connection)
Adds a specific connection to the session options.T
connectionHandlingMode(PhysicalConnectionHandlingMode mode)
Signifies that the connection release mode from the original session should be used to create the new session.protected SessionBuilder
delegate()
T
eventListeners(SessionEventListener... listeners)
Add one or moreSessionEventListener
instances to the list of listeners for the new session to be built.T
flushMode(FlushMode flushMode)
Specify the initial FlushMode to use for the opened Sessionprotected T
getThis()
T
interceptor(Interceptor interceptor)
Adds a specific interceptor to the session options.T
jdbcTimeZone(TimeZone timeZone)
T
noInterceptor()
Signifies that noInterceptor
should be used.Session
openSession()
Opens a session with the specified options.T
statementInspector(StatementInspector statementInspector)
Applies the givenStatementInspector
to the session.T
tenantIdentifier(String tenantIdentifier)
Define the tenant identifier to be associated with the opened session.
-
-
-
Constructor Detail
-
AbstractDelegatingSessionBuilder
public AbstractDelegatingSessionBuilder(SessionBuilder delegate)
-
-
Method Detail
-
getThis
protected T getThis()
-
delegate
protected SessionBuilder delegate()
-
openSession
public Session openSession()
Description copied from interface:SessionBuilder
Opens a session with the specified options.- Specified by:
openSession
in interfaceSessionBuilder<T extends SessionBuilder>
- Returns:
- The session
-
interceptor
public T interceptor(Interceptor interceptor)
Description copied from interface:SessionBuilder
Adds a specific interceptor to the session options.- Specified by:
interceptor
in interfaceSessionBuilder<T extends SessionBuilder>
- Parameters:
interceptor
- The interceptor to use.- Returns:
this
, for method chaining
-
noInterceptor
public T noInterceptor()
Description copied from interface:SessionBuilder
Signifies that noInterceptor
should be used. By default, if noInterceptor
is explicitly specified, theInterceptor
associated with theSessionFactory
is inherited by the newSession
. CallingSessionBuilder.interceptor(Interceptor)
with null has the same effect.- Specified by:
noInterceptor
in interfaceSessionBuilder<T extends SessionBuilder>
- Returns:
this
, for method chaining
-
statementInspector
public T statementInspector(StatementInspector statementInspector)
Description copied from interface:SessionBuilder
Applies the givenStatementInspector
to the session.- Specified by:
statementInspector
in interfaceSessionBuilder<T extends SessionBuilder>
- Parameters:
statementInspector
- The StatementInspector to use.- Returns:
this
, for method chaining
-
connection
public T connection(Connection connection)
Description copied from interface:SessionBuilder
Adds a specific connection to the session options.- Specified by:
connection
in interfaceSessionBuilder<T extends SessionBuilder>
- Parameters:
connection
- The connection to use.- Returns:
this
, for method chaining
-
autoJoinTransactions
public T autoJoinTransactions(boolean autoJoinTransactions)
Description copied from interface:SessionBuilder
Should the session built automatically join in any ongoing JTA transactions.- Specified by:
autoJoinTransactions
in interfaceSessionBuilder<T extends SessionBuilder>
- Parameters:
autoJoinTransactions
- Should JTA transactions be automatically joined- Returns:
this
, for method chaining- See Also:
SynchronizationType.SYNCHRONIZED
-
autoClose
public T autoClose(boolean autoClose)
Description copied from interface:SessionBuilder
Should the session be automatically closed after transaction completion?- Specified by:
autoClose
in interfaceSessionBuilder<T extends SessionBuilder>
- Parameters:
autoClose
- Should the session be automatically closed- Returns:
this
, for method chaining- See Also:
PersistenceContextType
-
tenantIdentifier
public T tenantIdentifier(String tenantIdentifier)
Description copied from interface:SessionBuilder
Define the tenant identifier to be associated with the opened session.- Specified by:
tenantIdentifier
in interfaceSessionBuilder<T extends SessionBuilder>
- Parameters:
tenantIdentifier
- The tenant identifier.- Returns:
this
, for method chaining
-
eventListeners
public T eventListeners(SessionEventListener... listeners)
Description copied from interface:SessionBuilder
Add one or moreSessionEventListener
instances to the list of listeners for the new session to be built.- Specified by:
eventListeners
in interfaceSessionBuilder<T extends SessionBuilder>
- Parameters:
listeners
- The listeners to incorporate into the built Session- Returns:
this
, for method chaining
-
clearEventListeners
public T clearEventListeners()
Description copied from interface:SessionBuilder
Remove all listeners intended for the built session currently held here, including any auto-apply ones; in other words, start with a clean slate.this
, for method chaining- Specified by:
clearEventListeners
in interfaceSessionBuilder<T extends SessionBuilder>
-
jdbcTimeZone
public T jdbcTimeZone(TimeZone timeZone)
- Specified by:
jdbcTimeZone
in interfaceSessionBuilder<T extends SessionBuilder>
-
connectionHandlingMode
public T connectionHandlingMode(PhysicalConnectionHandlingMode mode)
Description copied from interface:SessionBuilder
Signifies that the connection release mode from the original session should be used to create the new session.- Specified by:
connectionHandlingMode
in interfaceSessionBuilder<T extends SessionBuilder>
- Parameters:
mode
- The connection handling mode to use.- Returns:
this
, for method chaining
-
autoClear
public T autoClear(boolean autoClear)
Description copied from interface:SessionBuilder
Should the session be automatically cleared on a failed transaction?- Specified by:
autoClear
in interfaceSessionBuilder<T extends SessionBuilder>
- Parameters:
autoClear
- Whether the Session should be automatically cleared- Returns:
this
, for method chaining
-
flushMode
public T flushMode(FlushMode flushMode)
Description copied from interface:SessionBuilder
Specify the initial FlushMode to use for the opened Session- Specified by:
flushMode
in interfaceSessionBuilder<T extends SessionBuilder>
- Parameters:
flushMode
- The initial FlushMode to use for the opened Session- Returns:
this
, for method chaining- See Also:
PersistenceContextType
-
-