org.logicalcobwebs.proxool
public interface ProxyConnectionIF extends ConnectionInfoIF
MARK_FOR_EXPIRY, MARK_FOR_USE, STATUS_ACTIVE, STATUS_AVAILABLE, STATUS_NULL, STATUS_OFFLINE
Modifier and Type | Method and Description |
---|---|
void |
close()
Doesn't really close the connection, just puts it back in the pool.
|
java.sql.Connection |
getConnection()
The real, delegate connection that we are using
|
ConnectionPoolDefinitionIF |
getDefinition() |
java.lang.String |
getLastSqlCall()
Get the most recent of all the
ConnectionInfoIF.getSqlCalls() |
int |
getReasonCode()
Get the reason why this connection is
marked |
java.lang.String |
getReasonForMark()
Why this connection is marked (for instance, if a thread has
marked it for expiry then it's nice to know why)
|
boolean |
isActive() |
boolean |
isAvailable() |
boolean |
isMarkedForExpiry()
Whether this connection is due for expiry
|
boolean |
isNull() |
boolean |
isOffline() |
boolean |
isReallyClosed()
Find out if the delegated connection is close.
|
void |
markForExpiry(java.lang.String reason)
Mark this connection for expiry (destruction) as soon as it stops
being active.
|
void |
reallyClose()
Really close the connection, as opposed to just putting it back
in the pool.
|
void |
registerClosedStatement(java.sql.Statement statement)
Notify that a statement has been closed and won't need closing
when the connection is returned to the poo.
|
void |
setRequester(java.lang.String requester) |
boolean |
setStatus(int newStatus)
Forces the new status regardless of the old state
|
boolean |
setStatus(int oldStatus,
int newStatus)
Changes the status and lets the ConnectionPool know so that it
can keep count of how many connections are at each status.
|
getAge, getBirthDate, getBirthTime, getDelegateHashcode, getDelegateUrl, getId, getMark, getProxyHashcode, getRequester, getSqlCalls, getStatus, getTimeLastStartActive, getTimeLastStopActive
boolean setStatus(int oldStatus, int newStatus)
oldStatus
- the expected existing status. if the existing
status is not this value then no change is made and false is returned.newStatus
- the status to change toboolean setStatus(int newStatus)
newStatus
- the status to change tosetStatus(int, int)
void markForExpiry(java.lang.String reason)
reason
- why we are marking this connectionisMarkedForExpiry()
boolean isMarkedForExpiry()
markForExpiry(java.lang.String)
java.lang.String getReasonForMark()
java.sql.Connection getConnection()
boolean isNull()
boolean isAvailable()
boolean isActive()
boolean isOffline()
void reallyClose() throws java.sql.SQLException
java.sql.SQLException
void setRequester(java.lang.String requester)
ConnectionInfoIF.getRequester()
void close() throws java.sql.SQLException
java.sql.SQLException
Connection.close()
void registerClosedStatement(java.sql.Statement statement)
statement
- the statement that has just been closedboolean isReallyClosed() throws java.sql.SQLException
java.sql.SQLException
- if anything went wrongConnectionPoolDefinitionIF getDefinition()
java.lang.String getLastSqlCall()
ConnectionInfoIF.getSqlCalls()
int getReasonCode()
marked
ConnectionListenerIF.MAXIMUM_ACTIVE_TIME_EXPIRED
,
ConnectionListenerIF.HOUSE_KEEPER_TEST_FAIL
,
ConnectionListenerIF.FATAL_SQL_EXCEPTION_DETECTED
,
ConnectionListenerIF.MANUAL_EXPIRY
,
ConnectionListenerIF.MAXIMUM_CONNECTION_LIFETIME_EXCEEDED
,
ConnectionListenerIF.RESET_FAIL
,
ConnectionListenerIF.SHUTDOWN
, or
ConnectionListenerIF.VALIDATION_FAIL