Package com.mysql.cj
Interface Session
- All Known Implementing Classes:
CoreSession,MysqlxSession,NativeSession
public interface Session
Session exposes logical level which user API uses internally to call Protocol methods.
It's a higher-level abstraction than MySQL server session (ServerSession). Protocol and ServerSession methods
should never be used directly from user API.-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static interfaceSession.SessionEventListener -
Method Summary
Modifier and Type Method Description voidaddListener(Session.SessionEventListener l)Add listener for this session status changes.voidchangeUser(java.lang.String userName, java.lang.String password, java.lang.String database)Re-authenticates as the given user and passwordvoidforceClose()Clobbers the physical network connection and marks this session as closed.DataStoreMetadatagetDataStoreMetadata()ExceptionInterceptorgetExceptionInterceptor()HostInfogetHostInfo()java.lang.StringgetIdentifierQuoteString()LoggetLog()Returns the log mechanism that should be used to log information from/for this Session.<M extends Message>
MessageBuilder<M>getMessageBuilder()java.lang.StringgetProcessHost()ProfilerEventHandlergetProfilerEventHandler()Returns the current ProfilerEventHandler or initializes a new one if none exists.PropertySetgetPropertySet()java.lang.StringgetQueryTimingUnits()java.net.SocketAddressgetRemoteSocketAddress()ServerSessiongetServerSession()longgetThreadId()booleanisClosed()booleanisSetNeededForAutoCommitMode(boolean autoCommitFlag)booleanisSSLEstablished()default <M extends Message, R extends QueryResult>
Rquery(M message, ResultBuilder<R> resultBuilder)Synchronously query database.default <M extends Message, R, RES>
RESquery(M message, java.util.function.Predicate<Row> rowFilter, java.util.function.Function<Row,R> rowMapper, java.util.stream.Collector<R,?,RES> collector)Synchronously query database with applying rows filtering and mapping.default <M extends Message, R extends QueryResult>
java.util.concurrent.CompletableFuture<R>queryAsync(M message, ResultBuilder<R> resultBuilder)Asynchronously query database.voidquit()Log-off of the MySQL server and close the socket.voidremoveListener(Session.SessionEventListener l)Remove session listener.voidsetExceptionInterceptor(ExceptionInterceptor exceptionInterceptor)booleanversionMeetsMinimum(int major, int minor, int subminor)Does the version of the MySQL server we are connected to meet the given minimums?
-
Method Details
-
getPropertySet
PropertySet getPropertySet() -
getMessageBuilder
-
changeUser
void changeUser(java.lang.String userName, java.lang.String password, java.lang.String database)Re-authenticates as the given user and password- Parameters:
userName- DB user namepassword- DB user passworddatabase- database name
-
getExceptionInterceptor
ExceptionInterceptor getExceptionInterceptor() -
setExceptionInterceptor
-
quit
void quit()Log-off of the MySQL server and close the socket. -
forceClose
void forceClose()Clobbers the physical network connection and marks this session as closed. -
versionMeetsMinimum
boolean versionMeetsMinimum(int major, int minor, int subminor)Does the version of the MySQL server we are connected to meet the given minimums?- Parameters:
major- major version numberminor- minor version numbersubminor- sub-minor version number- Returns:
- true if current server version equal or higher than provided one
-
getThreadId
long getThreadId() -
isSetNeededForAutoCommitMode
boolean isSetNeededForAutoCommitMode(boolean autoCommitFlag) -
getLog
Log getLog()Returns the log mechanism that should be used to log information from/for this Session.- Returns:
- the Log instance to use for logging messages.
-
getProfilerEventHandler
ProfilerEventHandler getProfilerEventHandler()Returns the current ProfilerEventHandler or initializes a new one if none exists.- Returns:
- the
ProfilerEventHandlerobject.
-
getHostInfo
HostInfo getHostInfo() -
getQueryTimingUnits
java.lang.String getQueryTimingUnits() -
getServerSession
ServerSession getServerSession() -
isSSLEstablished
boolean isSSLEstablished() -
getRemoteSocketAddress
java.net.SocketAddress getRemoteSocketAddress() -
getProcessHost
java.lang.String getProcessHost() -
addListener
Add listener for this session status changes.- Parameters:
l-Session.SessionEventListenerinstance.
-
removeListener
Remove session listener.- Parameters:
l-Session.SessionEventListenerinstance.
-
isClosed
boolean isClosed() -
getIdentifierQuoteString
java.lang.String getIdentifierQuoteString() -
getDataStoreMetadata
DataStoreMetadata getDataStoreMetadata() -
query
default <M extends Message, R, RES> RES query(M message, java.util.function.Predicate<Row> rowFilter, java.util.function.Function<Row,R> rowMapper, java.util.stream.Collector<R,?,RES> collector)Synchronously query database with applying rows filtering and mapping.- Type Parameters:
M- Message typeR- Row typeRES- Result type- Parameters:
message- query messagerowFilter- row filter functionrowMapper- row map functioncollector- result collector- Returns:
- List of rows
-
query
default <M extends Message, R extends QueryResult> R query(M message, ResultBuilder<R> resultBuilder)Synchronously query database.- Type Parameters:
M- Message typeR- Result type- Parameters:
message- query messageresultBuilder- ResultBuilder instance- Returns:
QueryResultobject
-
queryAsync
default <M extends Message, R extends QueryResult> java.util.concurrent.CompletableFuture<R> queryAsync(M message, ResultBuilder<R> resultBuilder)Asynchronously query database.- Type Parameters:
M- Message typeR- Result type- Parameters:
message- query messageresultBuilder- ResultBuilder instance- Returns:
- CompletableFuture providing a
QueryResultobject
-