Package com.mysql.cj.protocol
Interface ServerSession
- All Known Implementing Classes:
NativeServerSession
,XServerSession
public interface ServerSession
Keeps the effective states of server/session variables,
contains methods for initial retrieving of these states and for their actualization.
-
Field Summary
Fields Modifier and Type Field Description static java.lang.String
LOCAL_CHARACTER_SET_RESULTS
static int
TRANSACTION_COMPLETED
Old SERVER_STATUS_IN_TRANS state was 1 and current one is 0.static int
TRANSACTION_IN_PROGRESS
There was no change between old and current SERVER_STATUS_IN_TRANS state and it is 1.static int
TRANSACTION_NOT_STARTED
There was no change between old and current SERVER_STATUS_IN_TRANS state and it is 0.static int
TRANSACTION_STARTED
Old SERVER_STATUS_IN_TRANS state was 0 and current one is 1. -
Method Summary
Modifier and Type Method Description boolean
characterSetNamesMatches(java.lang.String mysqlEncodingName)
void
configureCharacterSets()
boolean
cursorExists()
Server will only open a cursor and set this flag if it can, otherwise it punts and goes back to mysql_store_results() behavior.ServerCapabilities
getCapabilities()
java.lang.String
getCharacterSetMetadata()
java.lang.String
getCharacterSetResultsOnServer()
long
getClientParam()
java.util.TimeZone
getDefaultTimeZone()
The default time zone used to marshall date/time values to/from the server.java.lang.String
getEncodingForIndex(int collationIndex)
Returns the Java character encoding name for the given MySQL server collation indexjava.lang.String
getErrorMessageEncoding()
int
getMaxBytesPerChar(java.lang.Integer charsetIndex, java.lang.String javaCharsetName)
int
getMaxBytesPerChar(java.lang.String javaCharsetName)
int
getMetadataCollationIndex()
int
getOldStatusFlags()
java.lang.String
getServerDefaultCharset()
int
getServerDefaultCollationIndex()
java.lang.String
getServerVariable(java.lang.String name)
int
getServerVariable(java.lang.String variableName, int fallbackValue)
java.util.Map<java.lang.String,java.lang.String>
getServerVariables()
ServerVersion
getServerVersion()
Get the version of the MySQL server we are talking to.java.util.TimeZone
getSessionTimeZone()
int
getStatusFlags()
long
getThreadId()
int
getTransactionState()
boolean
hasLongColumnInfo()
boolean
hasMoreResults()
boolean
inTransactionOnServer()
boolean
isAutocommit()
boolean
isAutoCommit()
boolean
isEOFDeprecated()
boolean
isLastRowSent()
boolean
isLowerCaseTableNames()
Is the server configured to use lower-case table names only?boolean
isNoBackslashEscapesSet()
boolean
isQueryCacheEnabled()
boolean
isServerTruncatesFracSecs()
boolean
isVersion(ServerVersion version)
Is the version of the MySQL server we are connected to the given version?boolean
noGoodIndexUsed()
boolean
noIndexUsed()
boolean
queryWasSlow()
void
setAutoCommit(boolean autoCommit)
void
setCapabilities(ServerCapabilities capabilities)
void
setCharacterSetMetadata(java.lang.String characterSetMetadata)
void
setCharacterSetResultsOnServer(java.lang.String characterSetResultsOnServer)
void
setClientParam(long clientParam)
void
setErrorMessageEncoding(java.lang.String errorMessageEncoding)
void
setMetadataCollationIndex(int metadataCollationIndex)
void
setOldStatusFlags(int statusFlags)
void
setServerDefaultCollationIndex(int serverDefaultCollationIndex)
Stores collation index which server provided in handshake greeting packet.void
setServerVariables(java.util.Map<java.lang.String,java.lang.String> serverVariables)
void
setSessionTimeZone(java.util.TimeZone sessionTimeZone)
void
setStatusFlags(int statusFlags)
Sets new server status (from response) without saving it's old statevoid
setStatusFlags(int statusFlags, boolean saveOldStatusFlags)
Sets new server status (from response)void
setThreadId(long threadId)
boolean
storesLowerCaseTableNames()
boolean
useAnsiQuotedIdentifiers()
boolean
useMultiResults()
-
Field Details
-
TRANSACTION_NOT_STARTED
static final int TRANSACTION_NOT_STARTEDThere was no change between old and current SERVER_STATUS_IN_TRANS state and it is 0.- See Also:
- Constant Field Values
-
TRANSACTION_IN_PROGRESS
static final int TRANSACTION_IN_PROGRESSThere was no change between old and current SERVER_STATUS_IN_TRANS state and it is 1.- See Also:
- Constant Field Values
-
TRANSACTION_STARTED
static final int TRANSACTION_STARTEDOld SERVER_STATUS_IN_TRANS state was 0 and current one is 1.- See Also:
- Constant Field Values
-
TRANSACTION_COMPLETED
static final int TRANSACTION_COMPLETEDOld SERVER_STATUS_IN_TRANS state was 1 and current one is 0.- See Also:
- Constant Field Values
-
LOCAL_CHARACTER_SET_RESULTS
static final java.lang.String LOCAL_CHARACTER_SET_RESULTS- See Also:
- Constant Field Values
-
-
Method Details
-
getCapabilities
ServerCapabilities getCapabilities() -
setCapabilities
-
getStatusFlags
int getStatusFlags() -
setStatusFlags
void setStatusFlags(int statusFlags)Sets new server status (from response) without saving it's old state- Parameters:
statusFlags
- server status flags
-
setStatusFlags
void setStatusFlags(int statusFlags, boolean saveOldStatusFlags)Sets new server status (from response)- Parameters:
statusFlags
- new server status flagssaveOldStatusFlags
- true if old server status flags should be preserved
-
getOldStatusFlags
int getOldStatusFlags() -
setOldStatusFlags
void setOldStatusFlags(int statusFlags) -
getServerDefaultCollationIndex
int getServerDefaultCollationIndex()- Returns:
- Collation index which server provided in handshake greeting packet
-
setServerDefaultCollationIndex
void setServerDefaultCollationIndex(int serverDefaultCollationIndex)Stores collation index which server provided in handshake greeting packet.- Parameters:
serverDefaultCollationIndex
- collation index
-
getTransactionState
int getTransactionState()- Returns:
- TRANSACTION_NOT_STARTED, TRANSACTION_IN_PROGRESS, TRANSACTION_STARTED or TRANSACTION_COMPLETED
-
inTransactionOnServer
boolean inTransactionOnServer() -
cursorExists
boolean cursorExists()Server will only open a cursor and set this flag if it can, otherwise it punts and goes back to mysql_store_results() behavior.- Returns:
- SERVER_STATUS_CURSOR_EXISTS status flag value.
-
isAutocommit
boolean isAutocommit() -
hasMoreResults
boolean hasMoreResults() -
isLastRowSent
boolean isLastRowSent() -
noGoodIndexUsed
boolean noGoodIndexUsed() -
noIndexUsed
boolean noIndexUsed() -
queryWasSlow
boolean queryWasSlow() -
getClientParam
long getClientParam() -
setClientParam
void setClientParam(long clientParam) -
useMultiResults
boolean useMultiResults() -
isEOFDeprecated
boolean isEOFDeprecated() -
hasLongColumnInfo
boolean hasLongColumnInfo() -
getServerVariables
java.util.Map<java.lang.String,java.lang.String> getServerVariables() -
getServerVariable
java.lang.String getServerVariable(java.lang.String name) -
getServerVariable
int getServerVariable(java.lang.String variableName, int fallbackValue) -
setServerVariables
void setServerVariables(java.util.Map<java.lang.String,java.lang.String> serverVariables) -
characterSetNamesMatches
boolean characterSetNamesMatches(java.lang.String mysqlEncodingName) -
getServerVersion
ServerVersion getServerVersion()Get the version of the MySQL server we are talking to.- Returns:
ServerVersion
-
isVersion
Is the version of the MySQL server we are connected to the given version?- Parameters:
version
- the version to check for- Returns:
- true if the version of the MySQL server we are connected is the given version
-
getServerDefaultCharset
java.lang.String getServerDefaultCharset()- Returns:
- the server's default character set name according to collation index from server greeting, or value of 'character_set_server' variable if there is no mapping for that index
-
getErrorMessageEncoding
java.lang.String getErrorMessageEncoding() -
setErrorMessageEncoding
void setErrorMessageEncoding(java.lang.String errorMessageEncoding) -
getMaxBytesPerChar
int getMaxBytesPerChar(java.lang.String javaCharsetName) -
getMaxBytesPerChar
int getMaxBytesPerChar(java.lang.Integer charsetIndex, java.lang.String javaCharsetName) -
getEncodingForIndex
java.lang.String getEncodingForIndex(int collationIndex)Returns the Java character encoding name for the given MySQL server collation index- Parameters:
collationIndex
- collation index- Returns:
- the Java character encoding name for the given MySQL server collation index
-
configureCharacterSets
void configureCharacterSets() -
getCharacterSetMetadata
java.lang.String getCharacterSetMetadata() -
setCharacterSetMetadata
void setCharacterSetMetadata(java.lang.String characterSetMetadata) -
getMetadataCollationIndex
int getMetadataCollationIndex() -
setMetadataCollationIndex
void setMetadataCollationIndex(int metadataCollationIndex) -
getCharacterSetResultsOnServer
java.lang.String getCharacterSetResultsOnServer() -
setCharacterSetResultsOnServer
void setCharacterSetResultsOnServer(java.lang.String characterSetResultsOnServer) -
isLowerCaseTableNames
boolean isLowerCaseTableNames()Is the server configured to use lower-case table names only?- Returns:
- true if lower_case_table_names is 'on'
-
storesLowerCaseTableNames
boolean storesLowerCaseTableNames() -
isQueryCacheEnabled
boolean isQueryCacheEnabled() -
isNoBackslashEscapesSet
boolean isNoBackslashEscapesSet() -
useAnsiQuotedIdentifiers
boolean useAnsiQuotedIdentifiers() -
isServerTruncatesFracSecs
boolean isServerTruncatesFracSecs() -
getThreadId
long getThreadId() -
setThreadId
void setThreadId(long threadId) -
isAutoCommit
boolean isAutoCommit() -
setAutoCommit
void setAutoCommit(boolean autoCommit) -
getSessionTimeZone
java.util.TimeZone getSessionTimeZone() -
setSessionTimeZone
void setSessionTimeZone(java.util.TimeZone sessionTimeZone) -
getDefaultTimeZone
java.util.TimeZone getDefaultTimeZone()The default time zone used to marshall date/time values to/from the server. This is used when getDate(), etc methods are called without a calendar argument.- Returns:
- The default JVM time zone
-