java.lang.AutoCloseable
, java.sql.Connection
, java.sql.Wrapper
, ConnectionCallbackInterface
public class NetConnection extends ClientConnection
Modifier and Type | Field | Description |
---|---|---|
private boolean |
closeStatementsOnClose |
|
private boolean |
connectionNull |
|
(package private) byte[] |
crrtkn_ |
|
protected int |
currXACallInfoOffset_ |
|
private char[] |
deferredResetPassword_ |
|
private java.lang.String |
extnam_ |
|
private java.util.List<javax.transaction.xa.Xid> |
indoubtTransactions_ |
|
private java.sql.PreparedStatement |
isValidStmt |
Prepared statement that is used each time isValid() is called on this
connection.
|
private static MessageUtil |
msgutil |
|
protected NetAgent |
netAgent_ |
|
private ClientPooledConnection |
pooledConnection_ |
|
private java.nio.ByteBuffer |
prddta_ |
|
private byte[] |
publicKey_ |
|
private int |
securityMechanism_ |
|
private byte[] |
sourceSeed_ |
|
protected int |
targetAgent_ |
|
protected int |
targetCmnappc_ |
|
protected int |
targetCmntcpip_ |
|
private byte[] |
targetPublicKey_ |
|
protected int |
targetRdb_ |
|
protected int |
targetRsyncmgr_ |
|
private int |
targetSecmec_ |
|
(package private) int |
targetSecmgr_ |
|
private byte[] |
targetSeed_ |
|
(package private) java.lang.String |
targetSrvclsnm_ |
|
(package private) java.lang.String |
targetSrvrlslv_ |
|
protected int |
targetSyncptmgr_ |
|
protected int |
targetUnicodemgr_ |
|
protected int |
targetXamgr_ |
|
protected NetXAResource |
xares_ |
agent_, autoCommit_, commBufferSize_, databaseMetaData_, databaseName_, dataSource_, encryptionManager_, inUnitOfWork_, isXAConnection_, open_, portNumber_, productID_, resetConnectionAtFirstSql_, serverNameIP_, user_, XA_T0_NOT_ASSOCIATED, XA_T1_ASSOCIATED, xaHostVersion_
Constructor | Description |
---|---|
NetConnection(LogWriter logWriter,
int driverManagerLoginTimeout,
java.lang.String serverName,
int portNumber,
java.lang.String databaseName,
java.util.Properties properties) |
|
NetConnection(LogWriter logWriter,
java.lang.String user,
java.lang.String password,
BasicClientDataSource40 dataSource,
int rmId,
boolean isXAConn) |
|
NetConnection(LogWriter logWriter,
java.lang.String user,
java.lang.String password,
BasicClientDataSource40 dataSource,
int rmId,
boolean isXAConn,
ClientPooledConnection cpc) |
This constructor is called from the ClientPooledConnection object
to enable the NetConnection to pass
this on to the associated
prepared statement object thus enabling the prepared statement object
to in turn raise the statement events to the ClientPooledConnection object |
Modifier and Type | Method | Description |
---|---|---|
protected boolean |
allowCloseInUOW_() |
Check if the connection can be closed when there are uncommitted
operations.
|
protected boolean |
allowLocalCommitRollback_() |
|
private void |
checkDatabaseName() |
|
private void |
checkPasswordLength(java.lang.String password) |
|
private void |
checkSecmgrForSecmecSupport(int securityMechanism) |
|
private void |
checkUser(java.lang.String user) |
|
private void |
checkUserLength(java.lang.String user) |
|
private void |
checkUserPassword(java.lang.String user,
java.lang.String password) |
|
void |
close() |
Close the connection and release its resources.
|
private void |
completeReset(boolean isDeferredReset) |
|
protected void |
constructCrrtkn() |
|
private void |
constructExtnam() |
|
private void |
constructPrddta() |
|
java.sql.Array |
createArrayOf(java.lang.String typeName,
java.lang.Object[] elements) |
|
java.sql.NClob |
createNClob() |
|
java.sql.SQLXML |
createSQLXML() |
|
java.sql.Struct |
createStruct(java.lang.String typeName,
java.lang.Object[] attributes) |
|
protected boolean |
doCloseStatementsOnClose_() |
|
private byte[] |
encryptedPasswordForEUSRIDPWD(java.lang.String password) |
|
private byte[] |
encryptedPasswordForUSRENCPWD(java.lang.String password) |
|
private byte[] |
encryptedUseridForEUSRIDPWD() |
|
private char[] |
flipBits(char[] array) |
|
private void |
flowConnect(java.lang.String password,
int securityMechanism) |
|
private void |
flowEUSRIDDTAconnect() |
|
private void |
flowEUSRIDPWDconnect(java.lang.String password) |
|
private void |
flowEUSRPWDDTAconnect(java.lang.String password) |
|
private void |
flowKeyExchange(int securityMechanism,
byte[] publicKey) |
|
private boolean |
flowReconnect(java.lang.String password,
int securityMechanism) |
|
private void |
flowSecurityCheckAndAccessRdb(int securityMechanism,
java.lang.String user,
java.lang.String password,
byte[] encryptedUserid,
byte[] encryptedPassword) |
|
private void |
flowSeedExchange(int securityMechanism,
byte[] sourceSeed) |
|
private void |
flowServerAttributes() |
|
private void |
flowServerAttributesAndKeyExchange(int securityMechanism,
byte[] publicKey) |
|
private void |
flowSimpleConnect() |
|
private void |
flowUSRENCPWDconnect(java.lang.String password) |
|
private void |
flowUSRIDONLconnect() |
|
private void |
flowUSRIDPWDconnect(java.lang.String password) |
|
private void |
flowUSRSSBPWDconnect(java.lang.String password) |
The User ID and Strong Password Substitute mechanism (USRSSBPWD)
authenticates the user like the user ID and password mechanism, but
the password does not flow.
|
int |
getAGENT() |
|
java.util.Properties |
getClientInfo() |
getClientInfo always returns an empty
Properties object since Derby doesn't support
ClientInfoProperties. |
java.lang.String |
getClientInfo(java.lang.String name) |
getClientInfo always returns a
null String since Derby doesn't support
ClientInfoProperties. |
int |
getCMNTCPIP() |
|
private java.lang.String |
getDeferredResetPassword() |
|
EncryptionManager |
getEncryptionManager() |
|
(package private) javax.transaction.xa.Xid[] |
getIndoubtTransactionIds() |
|
java.io.InputStream |
getInputStream() |
|
java.io.OutputStream |
getOutputStream() |
|
java.lang.String |
getProductID() |
|
int |
getRDB() |
|
int |
getRSYNCMGR() |
|
int |
getSECMGR() |
|
int |
getSecurityMechanism() |
|
int |
getSQLAM() |
|
int |
getSYNCPTMGR() |
|
byte[] |
getTargetPublicKey() |
|
int |
getXAMGR() |
|
private void |
handleLoginTimeout(java.lang.Throwable original) |
Handle socket timeouts during connection attempts
|
private void |
initialize(java.lang.String password,
BasicClientDataSource40 dataSource,
boolean isXAConn) |
|
private void |
initializeClientSeed() |
|
private void |
initializePublicKeyForEncryption() |
|
boolean |
isConnectionNull() |
|
protected boolean |
isGlobalPending_() |
|
boolean |
isOpen() |
Returns if a transaction is in process
|
boolean |
isValid(int timeout) |
Checks if the connection has not been closed and is still valid.
|
boolean |
isWrapperFor(java.lang.Class<?> interfaces) |
Returns false unless
interfaces is implemented |
private SqlException |
mapSecchkcd(int secchkcd) |
|
protected void |
markClosed_() |
|
protected Agent |
newAgent_(LogWriter logWriter,
int loginTimeout,
java.lang.String serverName,
int portNumber,
int clientSSLMode) |
|
protected ClientCallableStatement |
newCallableStatement_(java.lang.String sql,
int type,
int concurrency,
int holdability) |
|
protected ClientDatabaseMetaData |
newDatabaseMetaData_() |
|
protected ClientPreparedStatement |
newPositionedUpdatePreparedStatement_(java.lang.String sql,
Section section) |
|
protected ClientPreparedStatement |
newPreparedStatement_(java.lang.String sql,
int type,
int concurrency,
int holdability,
int autoGeneratedKeys,
java.lang.String[] columnNames,
int[] columnIndexes) |
|
SectionManager |
newSectionManager(Agent agent) |
|
protected ClientStatement |
newStatement_(int type,
int concurrency,
int holdability) |
|
private byte[] |
passwordSubstituteForUSRSSBPWD(java.lang.String password) |
|
(package private) void |
rdbAccessed(int svrcod,
java.lang.String prdid,
boolean crrtknReceived,
byte[] crrtkn) |
|
private void |
readAllConnectCommandsChained(int securityMechanism) |
|
void |
readCommitSubstitute_() |
|
(package private) void |
readDeferredReset() |
|
void |
readLocalCommit_() |
|
void |
readLocalRollback_() |
|
void |
readLocalXACommit_() |
|
void |
readLocalXARollback_() |
|
void |
readLocalXAStart_() |
|
private void |
readSecurityCheckAndAccessRdb() |
|
private void |
readServerAttributesAndKeyExchange(int securityMechanism) |
|
void |
readTransactionStart() |
|
protected void |
readXACommit_() |
Invokes readCommit on NetXAConnection
|
protected void |
readXARollback_() |
Invokes writeRollback on NetXAConnection
|
protected void |
reset_(LogWriter logWriter) |
|
protected void |
resetCallableStatement_(ClientCallableStatement cs,
java.lang.String sql,
int resultSetType,
int resultSetConcurrency,
int resultSetHoldability) |
|
private void |
resetNetConnection(LogWriter logWriter) |
|
protected void |
resetPreparedStatement_(ClientPreparedStatement ps,
java.lang.String sql,
int resultSetType,
int resultSetConcurrency,
int resultSetHoldability,
int autoGeneratedKeys,
java.lang.String[] columnNames,
int[] columnIndexes) |
|
protected void |
resetStatement_(ClientStatement statement,
int type,
int concurrency,
int holdability) |
|
(package private) void |
securityCheckComplete(int svrcod,
int secchkcd) |
|
boolean |
serverSupportLongRDBNAM() |
|
protected boolean |
serverSupportsEXTDTAAbort() |
|
boolean |
serverSupportsLayerBStreaming() |
|
protected boolean |
serverSupportsLocators() |
Checks whether the server supports locators for large objects.
|
(package private) boolean |
serverSupportsQryclsimp() |
Check whether the server has full support for the QRYCLSIMP
parameter in OPNQRY.
|
protected boolean |
serverSupportsTimestampNanoseconds() |
Return true if the server supports nanoseconds in timestamps
|
protected boolean |
serverSupportsUDTs() |
Check whether the server supports UDTs
|
protected boolean |
serverSupportsUtf8Ccsid() |
Check whether the server supports the UTF-8 Ccsid Manager
|
(package private) void |
setAccessSecurityData(int secchkcd,
int desiredSecmec,
int[] secmecList,
boolean sectknReceived,
byte[] sectkn) |
|
void |
setClientInfo(java.lang.String name,
java.lang.String value) |
setClientInfo will always throw a
SQLClientInfoException since Derby does not support
any properties. |
void |
setClientInfo(java.util.Properties properties) |
setClientInfo will throw a
SQLClientInfoException unless the properties
parameter is empty, since Derby does not support any
properties. |
void |
setConnectionNull(boolean connectionNull) |
|
private void |
setDeferredResetPassword(java.lang.String password) |
|
void |
setIndoubtTransactions(java.util.List<javax.transaction.xa.Xid> indoubtTransactions) |
|
void |
setInputStream(java.io.InputStream inputStream) |
|
void |
setOutputStream(java.io.OutputStream outputStream) |
|
(package private) void |
setServerAttributeData(java.lang.String srvclsnm,
java.lang.String srvrlslv) |
|
protected boolean |
supportsSessionDataCaching() |
Check whether the server supports session data caching
|
<T> T |
unwrap(java.lang.Class<T> interfaces) |
Returns
this if this class implements the interface |
boolean |
willAutoCommitGenerateFlow() |
|
private void |
writeAllConnectCommandsChained(int securityMechanism,
java.lang.String user,
java.lang.String password) |
|
void |
writeCommitSubstitute_() |
|
(package private) void |
writeDeferredReset() |
|
void |
writeLocalCommit_() |
|
void |
writeLocalRollback_() |
|
void |
writeLocalXACommit_() |
|
void |
writeLocalXARollback_() |
|
void |
writeLocalXAStart_() |
|
private void |
writeSecurityCheckAndAccessRdb(int securityMechanism,
java.lang.String user,
java.lang.String password,
byte[] encryptedUserid,
byte[] encryptedPassword) |
|
private void |
writeServerAttributesAndKeyExchange(int securityMechanism,
byte[] publicKey) |
|
void |
writeTransactionStart(ClientStatement statement) |
|
protected void |
writeXACommit_() |
Invokes write commit on NetXAConnection
|
protected void |
writeXARollback_() |
Invokes writeRollback on NetXAConnection
|
protected void |
writeXATransactionStart(ClientStatement statement) |
abort, beginAborting, checkForClosedConnection, clearWarnings, closeResources, commit, completeAbnormalUnitOfWork, completeAbnormalUnitOfWork, completeChainBreakingDisconnect, completeConnect, completeInitialPiggyBackIsolation, completeInitialPiggyBackSchema, completeLocalCommit, completeLocalRollback, completePiggyBackIsolation, completePiggyBackSchema, completeReset, completeSqlca, createBlob, createClob, createStatement, createStatement, createStatement, finalize, flowAutoCommit, flowRollback, getAutoCommit, getCatalog, getCurrentSchemaName, getHoldability, getMetaData, getNetworkTimeout, getSchema, getServerVersion, getTransactionID, getTransactionIsolation, getTransactionIsolationX, getTypeMap, getWarnings, getXAState, isAborting, isClosed, isClosedX, isPhysicalConnClosed, isReadOnly, isXAConnection, lightReset, nativeSQL, prepareCall, prepareCall, prepareCall, prepareStatement, prepareStatement, prepareStatement, prepareStatement, prepareStatement, prepareStatement, releaseSavepoint, reset, resetConnection, resetPrepareCall, resetPrepareStatement, resetStatement, rollback, rollback, setAutoCommit, setCatalog, setHoldability, setNetworkTimeout, setReadOnly, setSavepoint, setSavepoint, setSchema, setTransactionIsolation, setTypeMap, setXAState, transactionInProgress
private static final MessageUtil msgutil
protected NetAgent netAgent_
private final ClientPooledConnection pooledConnection_
private final boolean closeStatementsOnClose
protected int targetAgent_
protected int targetCmntcpip_
protected int targetRdb_
int targetSecmgr_
protected int targetCmnappc_
protected int targetXamgr_
protected int targetSyncptmgr_
protected int targetRsyncmgr_
protected int targetUnicodemgr_
private java.lang.String extnam_
java.lang.String targetSrvclsnm_
java.lang.String targetSrvrlslv_
private transient byte[] publicKey_
private transient byte[] targetPublicKey_
private transient byte[] sourceSeed_
private transient byte[] targetSeed_
private java.nio.ByteBuffer prddta_
byte[] crrtkn_
private int targetSecmec_
private int securityMechanism_
private transient char[] deferredResetPassword_
private boolean connectionNull
protected NetXAResource xares_
private java.util.List<javax.transaction.xa.Xid> indoubtTransactions_
protected int currXACallInfoOffset_
private java.sql.PreparedStatement isValidStmt
NetConnection(LogWriter logWriter, int driverManagerLoginTimeout, java.lang.String serverName, int portNumber, java.lang.String databaseName, java.util.Properties properties) throws SqlException
SqlException
NetConnection(LogWriter logWriter, java.lang.String user, java.lang.String password, BasicClientDataSource40 dataSource, int rmId, boolean isXAConn) throws SqlException
SqlException
NetConnection(LogWriter logWriter, java.lang.String user, java.lang.String password, BasicClientDataSource40 dataSource, int rmId, boolean isXAConn, ClientPooledConnection cpc) throws SqlException
this
on to the associated
prepared statement object thus enabling the prepared statement object
to in turn raise the statement events to the ClientPooledConnection objectlogWriter
- LogWriter object associated with this connectionuser
- user id for this connectionpassword
- password for this connectiondataSource
- The DataSource object passed from the PooledConnection
object from which this constructor was calledrmId
- The Resource manager ID for XA ConnectionsisXAConn
- true if this is a XA connectioncpc
- The ClientPooledConnection object from which this
NetConnection constructor was called. This is used
to pass StatementEvents back to the pooledConnection
objectSqlException
private void setDeferredResetPassword(java.lang.String password)
private java.lang.String getDeferredResetPassword()
private void initialize(java.lang.String password, BasicClientDataSource40 dataSource, boolean isXAConn) throws SqlException
SqlException
private void resetNetConnection(LogWriter logWriter) throws SqlException
SqlException
protected void reset_(LogWriter logWriter) throws SqlException
reset_
in class ClientConnection
SqlException
private void completeReset(boolean isDeferredReset) throws SqlException
SqlException
private void flowConnect(java.lang.String password, int securityMechanism) throws SqlException
SqlException
private void flowSimpleConnect() throws SqlException
SqlException
private void handleLoginTimeout(java.lang.Throwable original) throws SqlException
SqlException
private boolean flowReconnect(java.lang.String password, int securityMechanism) throws SqlException
SqlException
private void flowUSRIDPWDconnect(java.lang.String password) throws SqlException
SqlException
private void flowUSRIDONLconnect() throws SqlException
SqlException
private void flowUSRENCPWDconnect(java.lang.String password) throws SqlException
SqlException
private void flowEUSRIDPWDconnect(java.lang.String password) throws SqlException
SqlException
private void flowEUSRIDDTAconnect() throws SqlException
SqlException
private void flowEUSRPWDDTAconnect(java.lang.String password) throws SqlException
SqlException
private void flowUSRSSBPWDconnect(java.lang.String password) throws SqlException
SqlException
private void flowServerAttributes() throws SqlException
SqlException
private void flowKeyExchange(int securityMechanism, byte[] publicKey) throws SqlException
SqlException
private void flowSeedExchange(int securityMechanism, byte[] sourceSeed) throws SqlException
SqlException
private void flowServerAttributesAndKeyExchange(int securityMechanism, byte[] publicKey) throws SqlException
SqlException
private void flowSecurityCheckAndAccessRdb(int securityMechanism, java.lang.String user, java.lang.String password, byte[] encryptedUserid, byte[] encryptedPassword) throws SqlException
SqlException
private void writeAllConnectCommandsChained(int securityMechanism, java.lang.String user, java.lang.String password) throws SqlException
SqlException
private void readAllConnectCommandsChained(int securityMechanism) throws SqlException
SqlException
private void writeServerAttributesAndKeyExchange(int securityMechanism, byte[] publicKey) throws SqlException
SqlException
private void readServerAttributesAndKeyExchange(int securityMechanism) throws SqlException
SqlException
private void writeSecurityCheckAndAccessRdb(int securityMechanism, java.lang.String user, java.lang.String password, byte[] encryptedUserid, byte[] encryptedPassword) throws SqlException
SqlException
private void readSecurityCheckAndAccessRdb() throws SqlException
SqlException
void writeDeferredReset() throws SqlException
SqlException
void readDeferredReset() throws SqlException
SqlException
void setServerAttributeData(java.lang.String srvclsnm, java.lang.String srvrlslv)
void setAccessSecurityData(int secchkcd, int desiredSecmec, int[] secmecList, boolean sectknReceived, byte[] sectkn) throws DisconnectException
DisconnectException
void securityCheckComplete(int svrcod, int secchkcd)
void rdbAccessed(int svrcod, java.lang.String prdid, boolean crrtknReceived, byte[] crrtkn)
protected Agent newAgent_(LogWriter logWriter, int loginTimeout, java.lang.String serverName, int portNumber, int clientSSLMode) throws SqlException
newAgent_
in class ClientConnection
SqlException
protected ClientStatement newStatement_(int type, int concurrency, int holdability) throws SqlException
newStatement_
in class ClientConnection
SqlException
protected void resetStatement_(ClientStatement statement, int type, int concurrency, int holdability) throws SqlException
resetStatement_
in class ClientConnection
SqlException
protected ClientPreparedStatement newPositionedUpdatePreparedStatement_(java.lang.String sql, Section section) throws SqlException
newPositionedUpdatePreparedStatement_
in class ClientConnection
SqlException
protected ClientPreparedStatement newPreparedStatement_(java.lang.String sql, int type, int concurrency, int holdability, int autoGeneratedKeys, java.lang.String[] columnNames, int[] columnIndexes) throws SqlException
newPreparedStatement_
in class ClientConnection
SqlException
protected void resetPreparedStatement_(ClientPreparedStatement ps, java.lang.String sql, int resultSetType, int resultSetConcurrency, int resultSetHoldability, int autoGeneratedKeys, java.lang.String[] columnNames, int[] columnIndexes) throws SqlException
resetPreparedStatement_
in class ClientConnection
SqlException
protected ClientCallableStatement newCallableStatement_(java.lang.String sql, int type, int concurrency, int holdability) throws SqlException
newCallableStatement_
in class ClientConnection
SqlException
protected void resetCallableStatement_(ClientCallableStatement cs, java.lang.String sql, int resultSetType, int resultSetConcurrency, int resultSetHoldability) throws SqlException
resetCallableStatement_
in class ClientConnection
SqlException
protected ClientDatabaseMetaData newDatabaseMetaData_()
newDatabaseMetaData_
in class ClientConnection
private void checkDatabaseName() throws SqlException
SqlException
private void checkUserLength(java.lang.String user) throws SqlException
SqlException
private void checkPasswordLength(java.lang.String password) throws SqlException
SqlException
private void checkUser(java.lang.String user) throws SqlException
SqlException
private void checkUserPassword(java.lang.String user, java.lang.String password) throws SqlException
SqlException
private void checkSecmgrForSecmecSupport(int securityMechanism) throws SqlException
SqlException
private SqlException mapSecchkcd(int secchkcd)
protected void constructCrrtkn() throws SqlException
SqlException
private void constructExtnam() throws SqlException
SqlException
private void constructPrddta() throws SqlException
SqlException
private void initializePublicKeyForEncryption() throws SqlException
SqlException
private void initializeClientSeed() throws SqlException
SqlException
private byte[] encryptedPasswordForUSRENCPWD(java.lang.String password) throws SqlException
SqlException
private byte[] encryptedUseridForEUSRIDPWD() throws SqlException
SqlException
private byte[] encryptedPasswordForEUSRIDPWD(java.lang.String password) throws SqlException
SqlException
private byte[] passwordSubstituteForUSRSSBPWD(java.lang.String password) throws SqlException
SqlException
public int getSQLAM()
public int getAGENT()
public int getCMNTCPIP()
public int getRDB()
public int getSECMGR()
public int getXAMGR()
public int getSYNCPTMGR()
public int getRSYNCMGR()
private char[] flipBits(char[] array)
public void writeCommitSubstitute_() throws SqlException
writeCommitSubstitute_
in class ClientConnection
SqlException
public void readCommitSubstitute_() throws SqlException
readCommitSubstitute_
in class ClientConnection
SqlException
public void writeLocalXAStart_() throws SqlException
writeLocalXAStart_
in class ClientConnection
SqlException
public void readLocalXAStart_() throws SqlException
readLocalXAStart_
in class ClientConnection
SqlException
public void writeLocalXACommit_() throws SqlException
writeLocalXACommit_
in class ClientConnection
SqlException
public void readLocalXACommit_() throws SqlException
readLocalXACommit_
in class ClientConnection
SqlException
public void writeLocalXARollback_() throws SqlException
writeLocalXARollback_
in class ClientConnection
SqlException
public void readLocalXARollback_() throws SqlException
readLocalXARollback_
in class ClientConnection
SqlException
public void writeLocalCommit_() throws SqlException
writeLocalCommit_
in class ClientConnection
SqlException
public void readLocalCommit_() throws SqlException
readLocalCommit_
in class ClientConnection
SqlException
public void writeLocalRollback_() throws SqlException
writeLocalRollback_
in class ClientConnection
SqlException
public void readLocalRollback_() throws SqlException
readLocalRollback_
in class ClientConnection
SqlException
protected void markClosed_()
markClosed_
in class ClientConnection
protected boolean isGlobalPending_()
isGlobalPending_
in class ClientConnection
protected boolean doCloseStatementsOnClose_()
doCloseStatementsOnClose_
in class ClientConnection
protected boolean allowCloseInUOW_()
allowCloseInUOW_
in class ClientConnection
true
; otherwise, false
protected boolean allowLocalCommitRollback_()
allowLocalCommitRollback_
in class ClientConnection
public void setInputStream(java.io.InputStream inputStream)
public void setOutputStream(java.io.OutputStream outputStream)
public java.io.InputStream getInputStream()
public java.io.OutputStream getOutputStream()
public void writeTransactionStart(ClientStatement statement) throws SqlException
writeTransactionStart
in class ClientConnection
SqlException
public void readTransactionStart() throws SqlException
readTransactionStart
in class ClientConnection
SqlException
public void setIndoubtTransactions(java.util.List<javax.transaction.xa.Xid> indoubtTransactions)
javax.transaction.xa.Xid[] getIndoubtTransactionIds()
public SectionManager newSectionManager(Agent agent)
newSectionManager
in class ClientConnection
public boolean willAutoCommitGenerateFlow()
willAutoCommitGenerateFlow
in class ClientConnection
public int getSecurityMechanism()
public EncryptionManager getEncryptionManager()
public byte[] getTargetPublicKey()
public java.lang.String getProductID()
public final boolean isConnectionNull()
public void setConnectionNull(boolean connectionNull)
connectionNull
- The connectionNull to set.final boolean serverSupportsQryclsimp()
public final boolean serverSupportsLayerBStreaming()
public final boolean serverSupportLongRDBNAM()
protected final boolean supportsSessionDataCaching()
supportsSessionDataCaching
in class ClientConnection
protected final boolean serverSupportsUtf8Ccsid()
protected final boolean serverSupportsUDTs()
protected final boolean serverSupportsEXTDTAAbort()
protected final boolean serverSupportsLocators()
serverSupportsLocators
in class ClientConnection
true
if LOB locators are supported.protected final boolean serverSupportsTimestampNanoseconds()
serverSupportsTimestampNanoseconds
in class ClientConnection
public boolean isOpen()
protected void writeXACommit_() throws SqlException
writeXACommit_
in class ClientConnection
SqlException
protected void readXACommit_() throws SqlException
readXACommit_
in class ClientConnection
SqlException
protected void writeXARollback_() throws SqlException
writeXARollback_
in class ClientConnection
SqlException
protected void readXARollback_() throws SqlException
readXARollback_
in class ClientConnection
SqlException
protected void writeXATransactionStart(ClientStatement statement) throws SqlException
writeXATransactionStart
in class ClientConnection
SqlException
public java.sql.Array createArrayOf(java.lang.String typeName, java.lang.Object[] elements) throws java.sql.SQLException
java.sql.SQLException
public java.sql.NClob createNClob() throws java.sql.SQLException
java.sql.SQLException
public java.sql.SQLXML createSQLXML() throws java.sql.SQLException
java.sql.SQLException
public java.sql.Struct createStruct(java.lang.String typeName, java.lang.Object[] attributes) throws java.sql.SQLException
java.sql.SQLException
public boolean isValid(int timeout) throws java.sql.SQLException
timeout
- The time in seconds to wait for the database
operation used to validate the connection to complete. If the
timeout period expires before the operation completes, this
method returns false. A value of 0 indicates a timeout is not
applied to the database operation.java.sql.SQLException
- if the parameter value is illegal or if a
database error has occurredpublic void close() throws java.sql.SQLException
close
in interface java.lang.AutoCloseable
close
in interface java.sql.Connection
close
in class ClientConnection
java.sql.SQLException
- if a database-access error occurs.public void setClientInfo(java.lang.String name, java.lang.String value) throws java.sql.SQLClientInfoException
setClientInfo
will always throw a
SQLClientInfoException
since Derby does not support
any properties.name
- a property key String
value
- a property value String
java.sql.SQLClientInfoException
- always.public void setClientInfo(java.util.Properties properties) throws java.sql.SQLClientInfoException
setClientInfo
will throw a
SQLClientInfoException
unless the properties
parameter is empty, since Derby does not support any
properties. All the property keys in the
properties
parameter are added to failedProperties
of the exception thrown, with REASON_UNKNOWN_PROPERTY as the
value.properties
- a Properties
object with the
properties to set.java.sql.SQLClientInfoException
- unless the properties
parameter is null or empty.public java.lang.String getClientInfo(java.lang.String name) throws java.sql.SQLException
getClientInfo
always returns a
null String
since Derby doesn't support
ClientInfoProperties.name
- a String
valuenull String
valuejava.sql.SQLException
- if the connection is closed.public java.util.Properties getClientInfo() throws java.sql.SQLException
getClientInfo
always returns an empty
Properties
object since Derby doesn't support
ClientInfoProperties.Properties
object.java.sql.SQLException
- if the connection is closed.public boolean isWrapperFor(java.lang.Class<?> interfaces) throws java.sql.SQLException
interfaces
is implementedinterfaces
- a Class defining an interface.java.sql.SQLException
- if an error occurs while determining
whether this is a wrapper for an object
with the given interface.public <T> T unwrap(java.lang.Class<T> interfaces) throws java.sql.SQLException
this
if this class implements the interfaceinterfaces
- a Class defining an interfacejava.sql.SQLException
- if no object if found that implements the
interfaceApache Derby V10.14 Internals - Copyright © 2004,2018 The Apache Software Foundation. All Rights Reserved.