Package org.postgresql.core
Class ResultHandlerBase
- java.lang.Object
-
- org.postgresql.core.ResultHandlerBase
-
- All Implemented Interfaces:
ResultHandler
- Direct Known Subclasses:
BatchResultHandler
,PgResultSet.CursorResultHandler
,PgStatement.StatementResultHandler
public class ResultHandlerBase extends java.lang.Object implements ResultHandler
Empty implementation ofResultHandler
interface.SQLException.setNextException(SQLException)
hasO(N)
complexity, so this class tracks the last exception object to speedupsetNextException
.
-
-
Constructor Summary
Constructors Constructor Description ResultHandlerBase()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.sql.SQLException
getException()
Returns the first encountered exception.java.sql.SQLWarning
getWarning()
Returns the first encountered warning.void
handleCommandStatus(java.lang.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(java.sql.SQLException error)
Called when an error occurs.void
handleResultRows(Query fromQuery, Field[] fields, java.util.List<Tuple> tuples, ResultCursor cursor)
Called when result rows are received from a query.void
handleWarning(java.sql.SQLWarning warning)
Called when a warning is emitted.void
secureProgress()
Callback for batch statements.
-
-
-
Method Detail
-
handleResultRows
public void handleResultRows(Query fromQuery, Field[] fields, java.util.List<Tuple> tuples, ResultCursor cursor)
Description copied from interface:ResultHandler
Called when result rows are received from a query.- Specified by:
handleResultRows
in interfaceResultHandler
- Parameters:
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 benull
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.
-
handleCommandStatus
public void handleCommandStatus(java.lang.String status, long updateCount, long insertOID)
Description copied from interface:ResultHandler
Called when a query that did not return a resultset completes.- Specified by:
handleCommandStatus
in interfaceResultHandler
- Parameters:
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.
-
secureProgress
public void secureProgress()
Description copied from interface:ResultHandler
Callback for batch statements. In case batch statement is executed in autocommit==true mode, the executor might commit "as it this it is best", so the result handler should track which statements are executed successfully and which are not.- Specified by:
secureProgress
in interfaceResultHandler
-
handleWarning
public void handleWarning(java.sql.SQLWarning warning)
Description copied from interface:ResultHandler
Called when a warning is emitted.- Specified by:
handleWarning
in interfaceResultHandler
- Parameters:
warning
- the warning that occurred.
-
handleError
public void handleError(java.sql.SQLException error)
Description copied from interface:ResultHandler
Called when an error occurs. Subsequent queries are abandoned; in general the only calls between a handleError call and a subsequent handleCompletion call are handleError or handleWarning.- Specified by:
handleError
in interfaceResultHandler
- Parameters:
error
- the error that occurred
-
handleCompletion
public void handleCompletion() throws java.sql.SQLException
Description copied from interface:ResultHandler
Called before a QueryExecutor method returns. This method may throw a SQLException if desired; if it does, the QueryExecutor method will propagate that exception to the original caller.- Specified by:
handleCompletion
in interfaceResultHandler
- Throws:
java.sql.SQLException
- if the handler wishes the original method to throw an exception.
-
getException
public java.sql.SQLException getException()
Description copied from interface:ResultHandler
Returns the first encountered exception. The rest are chained viaSQLException.setNextException(SQLException)
- Specified by:
getException
in interfaceResultHandler
- Returns:
- the first encountered exception
-
getWarning
public java.sql.SQLWarning getWarning()
Description copied from interface:ResultHandler
Returns the first encountered warning. The rest are chained viaSQLException.setNextException(SQLException)
- Specified by:
getWarning
in interfaceResultHandler
- Returns:
- the first encountered warning
-
-