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 forSessionBuilderimplementations 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 TautoClear(boolean autoClear)Should the session be automatically cleared on a failed transaction?TautoClose(boolean autoClose)Should the session be automatically closed after transaction completion?TautoJoinTransactions(boolean autoJoinTransactions)Should the session built automatically join in any ongoing JTA transactions.TclearEventListeners()Remove all listeners intended for the built session currently held here, including any auto-apply ones; in other words, start with a clean slate.Tconnection(Connection connection)Adds a specific connection to the session options.TconnectionHandlingMode(PhysicalConnectionHandlingMode mode)Signifies that the connection release mode from the original session should be used to create the new session.protected SessionBuilderdelegate()TeventListeners(SessionEventListener... listeners)Add one or moreSessionEventListenerinstances to the list of listeners for the new session to be built.TflushMode(FlushMode flushMode)Specify the initial FlushMode to use for the opened Sessionprotected TgetThis()Tinterceptor(Interceptor interceptor)Adds a specific interceptor to the session options.TjdbcTimeZone(TimeZone timeZone)TnoInterceptor()Signifies that noInterceptorshould be used.SessionopenSession()Opens a session with the specified options.TstatementInspector(StatementInspector statementInspector)Applies the givenStatementInspectorto the session.TtenantIdentifier(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:SessionBuilderOpens a session with the specified options.- Specified by:
openSessionin interfaceSessionBuilder<T extends SessionBuilder>- Returns:
- The session
-
interceptor
public T interceptor(Interceptor interceptor)
Description copied from interface:SessionBuilderAdds a specific interceptor to the session options.- Specified by:
interceptorin interfaceSessionBuilder<T extends SessionBuilder>- Parameters:
interceptor- The interceptor to use.- Returns:
this, for method chaining
-
noInterceptor
public T noInterceptor()
Description copied from interface:SessionBuilderSignifies that noInterceptorshould be used. By default, if noInterceptoris explicitly specified, theInterceptorassociated with theSessionFactoryis inherited by the newSession. CallingSessionBuilder.interceptor(Interceptor)with null has the same effect.- Specified by:
noInterceptorin interfaceSessionBuilder<T extends SessionBuilder>- Returns:
this, for method chaining
-
statementInspector
public T statementInspector(StatementInspector statementInspector)
Description copied from interface:SessionBuilderApplies the givenStatementInspectorto the session.- Specified by:
statementInspectorin 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:SessionBuilderAdds a specific connection to the session options.- Specified by:
connectionin 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:SessionBuilderShould the session built automatically join in any ongoing JTA transactions.- Specified by:
autoJoinTransactionsin 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:SessionBuilderShould the session be automatically closed after transaction completion?- Specified by:
autoClosein 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:SessionBuilderDefine the tenant identifier to be associated with the opened session.- Specified by:
tenantIdentifierin interfaceSessionBuilder<T extends SessionBuilder>- Parameters:
tenantIdentifier- The tenant identifier.- Returns:
this, for method chaining
-
eventListeners
public T eventListeners(SessionEventListener... listeners)
Description copied from interface:SessionBuilderAdd one or moreSessionEventListenerinstances to the list of listeners for the new session to be built.- Specified by:
eventListenersin 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:SessionBuilderRemove 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:
clearEventListenersin interfaceSessionBuilder<T extends SessionBuilder>
-
jdbcTimeZone
public T jdbcTimeZone(TimeZone timeZone)
- Specified by:
jdbcTimeZonein interfaceSessionBuilder<T extends SessionBuilder>
-
connectionHandlingMode
public T connectionHandlingMode(PhysicalConnectionHandlingMode mode)
Description copied from interface:SessionBuilderSignifies that the connection release mode from the original session should be used to create the new session.- Specified by:
connectionHandlingModein 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:SessionBuilderShould the session be automatically cleared on a failed transaction?- Specified by:
autoClearin 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:SessionBuilderSpecify the initial FlushMode to use for the opened Session- Specified by:
flushModein interfaceSessionBuilder<T extends SessionBuilder>- Parameters:
flushMode- The initial FlushMode to use for the opened Session- Returns:
this, for method chaining- See Also:
PersistenceContextType
-
-