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.StringLOCAL_CHARACTER_SET_RESULTSstatic intTRANSACTION_COMPLETEDOld SERVER_STATUS_IN_TRANS state was 1 and current one is 0.static intTRANSACTION_IN_PROGRESSThere was no change between old and current SERVER_STATUS_IN_TRANS state and it is 1.static intTRANSACTION_NOT_STARTEDThere was no change between old and current SERVER_STATUS_IN_TRANS state and it is 0.static intTRANSACTION_STARTEDOld SERVER_STATUS_IN_TRANS state was 0 and current one is 1. -
Method Summary
Modifier and Type Method Description booleancharacterSetNamesMatches(java.lang.String mysqlEncodingName)voidconfigureCharacterSets()booleancursorExists()Server will only open a cursor and set this flag if it can, otherwise it punts and goes back to mysql_store_results() behavior.ServerCapabilitiesgetCapabilities()java.lang.StringgetCharacterSetMetadata()java.lang.StringgetCharacterSetResultsOnServer()longgetClientParam()java.util.TimeZonegetDefaultTimeZone()The default time zone used to marshall date/time values to/from the server.java.lang.StringgetEncodingForIndex(int collationIndex)Returns the Java character encoding name for the given MySQL server collation indexjava.lang.StringgetErrorMessageEncoding()intgetMaxBytesPerChar(java.lang.Integer charsetIndex, java.lang.String javaCharsetName)intgetMaxBytesPerChar(java.lang.String javaCharsetName)intgetMetadataCollationIndex()intgetOldStatusFlags()java.lang.StringgetServerDefaultCharset()intgetServerDefaultCollationIndex()java.lang.StringgetServerVariable(java.lang.String name)intgetServerVariable(java.lang.String variableName, int fallbackValue)java.util.Map<java.lang.String,java.lang.String>getServerVariables()ServerVersiongetServerVersion()Get the version of the MySQL server we are talking to.java.util.TimeZonegetSessionTimeZone()intgetStatusFlags()longgetThreadId()intgetTransactionState()booleanhasLongColumnInfo()booleanhasMoreResults()booleaninTransactionOnServer()booleanisAutocommit()booleanisAutoCommit()booleanisEOFDeprecated()booleanisLastRowSent()booleanisLowerCaseTableNames()Is the server configured to use lower-case table names only?booleanisNoBackslashEscapesSet()booleanisQueryCacheEnabled()booleanisServerTruncatesFracSecs()booleanisVersion(ServerVersion version)Is the version of the MySQL server we are connected to the given version?booleannoGoodIndexUsed()booleannoIndexUsed()booleanqueryWasSlow()voidsetAutoCommit(boolean autoCommit)voidsetCapabilities(ServerCapabilities capabilities)voidsetCharacterSetMetadata(java.lang.String characterSetMetadata)voidsetCharacterSetResultsOnServer(java.lang.String characterSetResultsOnServer)voidsetClientParam(long clientParam)voidsetErrorMessageEncoding(java.lang.String errorMessageEncoding)voidsetMetadataCollationIndex(int metadataCollationIndex)voidsetOldStatusFlags(int statusFlags)voidsetServerDefaultCollationIndex(int serverDefaultCollationIndex)Stores collation index which server provided in handshake greeting packet.voidsetServerVariables(java.util.Map<java.lang.String,java.lang.String> serverVariables)voidsetSessionTimeZone(java.util.TimeZone sessionTimeZone)voidsetStatusFlags(int statusFlags)Sets new server status (from response) without saving it's old statevoidsetStatusFlags(int statusFlags, boolean saveOldStatusFlags)Sets new server status (from response)voidsetThreadId(long threadId)booleanstoresLowerCaseTableNames()booleanuseAnsiQuotedIdentifiers()booleanuseMultiResults()
-
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
-