public class ResultHandlerBase extends Object implements ResultHandler
ResultHandler
interface.
SQLException.setNextException(SQLException)
has O(N)
complexity,
so this class tracks the last exception object to speedup setNextException
.Constructor and Description |
---|
ResultHandlerBase() |
Modifier and Type | Method and Description |
---|---|
@Nullable SQLException |
getException()
Returns the first encountered exception.
|
@Nullable SQLWarning |
getWarning()
Returns the first encountered warning.
|
void |
handleCommandStatus(String status,
long updateCount,
long insertOID)
Called when a query that did not return a resultset completes.
|
void |
handleCompletion()
Called before a QueryExecutor method returns.
|
void |
handleError(SQLException error)
Called when an error occurs.
|
void |
handleResultRows(Query fromQuery,
Field[] fields,
List<Tuple> tuples,
@Nullable ResultCursor cursor)
Called when result rows are received from a query.
|
void |
handleWarning(SQLWarning warning)
Called when a warning is emitted.
|
void |
secureProgress()
Callback for batch statements.
|
public void handleResultRows(Query fromQuery, Field[] fields, List<Tuple> tuples, @Nullable ResultCursor cursor)
ResultHandler
handleResultRows
in interface ResultHandler
fromQuery
- the underlying query that generated these results; this may not be very
specific (e.g. it may be a query that includes multiple statements).fields
- column metadata for the resultset; might be null
if
Query.QUERY_NO_METADATA was specified.tuples
- the actual datacursor
- a cursor to use to fetch additional data; null
if no further results
are present.public void handleCommandStatus(String status, long updateCount, long insertOID)
ResultHandler
handleCommandStatus
in interface ResultHandler
status
- the command status string (e.g. "SELECT") returned by the backendupdateCount
- the number of rows affected by an INSERT, UPDATE, DELETE, FETCH, or MOVE
command; -1 if not available.insertOID
- for a single-row INSERT query, the OID of the newly inserted row; 0 if not
available.public void secureProgress()
ResultHandler
secureProgress
in interface ResultHandler
public void handleWarning(SQLWarning warning)
ResultHandler
handleWarning
in interface ResultHandler
warning
- the warning that occurred.public void handleError(SQLException error)
ResultHandler
handleError
in interface ResultHandler
error
- the error that occurredpublic void handleCompletion() throws SQLException
ResultHandler
handleCompletion
in interface ResultHandler
SQLException
- if the handler wishes the original method to throw an exception.public @Nullable SQLException getException()
ResultHandler
SQLException.setNextException(SQLException)
getException
in interface ResultHandler
public @Nullable SQLWarning getWarning()
ResultHandler
SQLException.setNextException(SQLException)
getWarning
in interface ResultHandler
Copyright © 1997-2020 PostgreSQL Global Development Group. All Rights Reserved.