Package org.hibernate.internal
Class SessionFactoryImpl.SessionBuilderImpl<T extends SessionBuilder>
- java.lang.Object
-
- org.hibernate.internal.SessionFactoryImpl.SessionBuilderImpl<T>
-
- All Implemented Interfaces:
SessionBuilderImplementor<T>
,SessionCreationOptions
,SessionBuilder<T>
- Enclosing class:
- SessionFactoryImpl
public static class SessionFactoryImpl.SessionBuilderImpl<T extends SessionBuilder> extends Object implements SessionBuilderImplementor<T>, SessionCreationOptions
-
-
Constructor Summary
Constructors Constructor Description SessionBuilderImpl(SessionFactoryImpl sessionFactory)
-
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 connectionHandlingMode)
Signifies that the connection release mode from the original session should be used to create the new session.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 SessionConnection
getConnection()
List<SessionEventListener>
getCustomSessionEventListener()
ExceptionMapper
getExceptionMapper()
FlushMode
getInitialSessionFlushMode()
Interceptor
getInterceptor()
TimeZone
getJdbcTimeZone()
PhysicalConnectionHandlingMode
getPhysicalConnectionHandlingMode()
StatementInspector
getStatementInspector()
String
getTenantIdentifier()
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.boolean
shouldAutoClear()
boolean
shouldAutoClose()
boolean
shouldAutoJoinTransactions()
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
-
SessionBuilderImpl
public SessionBuilderImpl(SessionFactoryImpl sessionFactory)
-
-
Method Detail
-
getExceptionMapper
public ExceptionMapper getExceptionMapper()
- Specified by:
getExceptionMapper
in interfaceSessionCreationOptions
-
shouldAutoJoinTransactions
public boolean shouldAutoJoinTransactions()
- Specified by:
shouldAutoJoinTransactions
in interfaceSessionCreationOptions
-
getInitialSessionFlushMode
public FlushMode getInitialSessionFlushMode()
- Specified by:
getInitialSessionFlushMode
in interfaceSessionCreationOptions
-
shouldAutoClose
public boolean shouldAutoClose()
- Specified by:
shouldAutoClose
in interfaceSessionCreationOptions
-
shouldAutoClear
public boolean shouldAutoClear()
- Specified by:
shouldAutoClear
in interfaceSessionCreationOptions
-
getConnection
public Connection getConnection()
- Specified by:
getConnection
in interfaceSessionCreationOptions
-
getInterceptor
public Interceptor getInterceptor()
- Specified by:
getInterceptor
in interfaceSessionCreationOptions
-
getStatementInspector
public StatementInspector getStatementInspector()
- Specified by:
getStatementInspector
in interfaceSessionCreationOptions
-
getPhysicalConnectionHandlingMode
public PhysicalConnectionHandlingMode getPhysicalConnectionHandlingMode()
- Specified by:
getPhysicalConnectionHandlingMode
in interfaceSessionCreationOptions
-
getTenantIdentifier
public String getTenantIdentifier()
- Specified by:
getTenantIdentifier
in interfaceSessionCreationOptions
-
getJdbcTimeZone
public TimeZone getJdbcTimeZone()
- Specified by:
getJdbcTimeZone
in interfaceSessionCreationOptions
-
getCustomSessionEventListener
public List<SessionEventListener> getCustomSessionEventListener()
- Specified by:
getCustomSessionEventListener
in interfaceSessionCreationOptions
- Returns:
- the full list of SessionEventListener if this was customized, or null if this Session is being created with the default list.
-
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
-
connectionHandlingMode
public T connectionHandlingMode(PhysicalConnectionHandlingMode connectionHandlingMode)
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:
connectionHandlingMode
- The connection handling mode 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
-
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
-
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>
-
-