|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectorg.apache.derby.impl.sql.execute.BasicNoPutResultSetImpl
org.apache.derby.impl.sql.execute.NoPutResultSetImpl
org.apache.derby.impl.sql.execute.CurrentOfResultSet
class CurrentOfResultSet
Takes a cursor name and returns the current row of the cursor; for use in generating the source row and row location for positioned update/delete operations.
This result set returns only one row.
| Field Summary | |
|---|---|
private CursorResultSet |
cursor
|
private java.lang.String |
cursorName
|
private boolean |
next
|
private RowLocation |
rowLocation
|
private ExecRow |
sparseRow
|
private CursorResultSet |
target
|
| Fields inherited from class org.apache.derby.impl.sql.execute.NoPutResultSetImpl |
|---|
checkNullCols, clonedExecRow, cncLen, resultSetNumber, targetResultSet |
| Fields inherited from class org.apache.derby.impl.sql.execute.BasicNoPutResultSetImpl |
|---|
activation, beginTime, closeTime, compactRow, constructorTime, currentRow, endExecutionTime, finished, isOpen, isTopResultSet, nextTime, numOpens, openTime, optimizerEstimatedCost, optimizerEstimatedRowCount, resultDescription, rowsFiltered, rowsSeen, startExecutionTime, subqueryTrackingArray |
| Fields inherited from interface org.apache.derby.iapi.sql.ResultSet |
|---|
CURRENT_RESULTSET_ONLY, ENTIRE_RESULTSET_TREE, ISAFTERLAST, ISBEFOREFIRST, ISFIRST, ISLAST |
| Fields inherited from interface org.apache.derby.iapi.sql.execute.NoPutResultSet |
|---|
ABSOLUTE, FIRST, LAST, NEXT, PREVIOUS, RELATIVE |
| Constructor Summary | |
|---|---|
CurrentOfResultSet(java.lang.String cursorName,
Activation activation,
int resultSetNumber)
|
|
| Method Summary | |
|---|---|
void |
close()
If the result set has been opened, close the open scan. |
void |
finish()
Tells the system that there will be no more access to any database information via this result set; in particular, no more calls to open(). |
ExecRow |
getCurrentRow()
Returns the current row of the result set. |
private void |
getCursor()
Because the positioned operation only gets one location per execution, and the cursor could be completely different for each execution (closed and reopened, perhaps), we determine where caching the cursor could be applied. |
ExecRow |
getNextRowCore()
If open and not returned yet, returns the row. |
RowLocation |
getRowLocation()
This result set has its row location from the last fetch done. |
private ExecRow |
getSparseRow(ExecRow row,
int[] indexCols)
Return a sparse heap row, based on a compact index row. |
long |
getTimeSpent(int type)
Return the total amount of time spent in this ResultSet |
void |
markRowAsDeleted()
Marks the resultSet's currentRow as deleted after a delete has been issued by either by using positioned delete or JDBC's deleteRow method. |
void |
openCore()
open a scan on the table. scan parameters are evaluated at each open, so there is probably some way of altering their values... |
void |
updateRow(ExecRow row,
RowChanger rowChanger)
Updates the resultSet's current row with it's new values after an update has been issued either using positioned update or JDBC's udpateRow method. |
| Methods inherited from class org.apache.derby.impl.sql.execute.NoPutResultSetImpl |
|---|
clearCurrentRow, clearOrderableCache, closeRowSource, getCursorName, getNextRowFromRowSource, getResultDescription, getValidColumns, isForUpdate, needsRowLocation, needsToClone, positionScanAtRowLocation, printQualifiers, resultSetNumber, rowLocation, setCurrentRow, setNeedsRowLocation, setTargetResultSet, skipRow, skipScan |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Methods inherited from interface org.apache.derby.iapi.sql.ResultSet |
|---|
addWarning, checkRowPosition, cleanUp, clearCurrentRow, getAbsoluteRow, getActivation, getAutoGeneratedKeysResultset, getBeginExecutionTimestamp, getCursorName, getEndExecutionTimestamp, getExecuteTime, getFirstRow, getLastRow, getNextRow, getPreviousRow, getRelativeRow, getResultDescription, getRowNumber, getSubqueryTrackingArray, getWarnings, isClosed, modifiedRowCount, open, returnsRows, setAfterLastRow, setBeforeFirstRow |
| Field Detail |
|---|
private boolean next
private RowLocation rowLocation
private CursorResultSet cursor
private CursorResultSet target
private ExecRow sparseRow
private final java.lang.String cursorName
| Constructor Detail |
|---|
CurrentOfResultSet(java.lang.String cursorName,
Activation activation,
int resultSetNumber)
| Method Detail |
|---|
public void openCore()
throws StandardException
openCore in interface NoPutResultSetStandardException - thrown on failure to open
public ExecRow getNextRowCore()
throws StandardException
getNextRowCore in interface NoPutResultSetgetNextRowCore in class BasicNoPutResultSetImplStandardException - thrown on failure.NoPutResultSet.getNextRowCore()
private ExecRow getSparseRow(ExecRow row,
int[] indexCols)
throws StandardException
row - compact referenced index rowindexCols - base column positions of index keys, signed with asc/desc info
StandardException
public void close()
throws StandardException
close in interface ResultSetclose in class NoPutResultSetImplStandardException - thrown on error
public void finish()
throws StandardException
ResultSet
finish in interface ResultSetfinish in class BasicNoPutResultSetImplStandardException - on errorpublic long getTimeSpent(int type)
getTimeSpent in interface ResultSettype - CURRENT_RESULTSET_ONLY - time spent only in this ResultSet
ENTIRE_RESULTSET_TREE - time spent in this ResultSet and below.
public RowLocation getRowLocation()
getRowLocation in interface CursorResultSetStandardException - thrown on failure to get row locationCursorResultSetpublic ExecRow getCurrentRow()
CursorResultSet
getCurrentRow in interface CursorResultSetCursorResultSet
private void getCursor()
throws StandardException
When cached, we check if the cursor was closed'd, and if so, throw it out and see if there's one in the cache with our name.
StandardException
public void updateRow(ExecRow row,
RowChanger rowChanger)
throws StandardException
NoPutResultSet
updateRow in interface NoPutResultSetupdateRow in class NoPutResultSetImplrow - new values for the currentRowrowChanger - holds information about row: what columns of it is to
be used for updating, and what underlying base table column each
such column corresponds to.
StandardException - thrown on failure.NoPutResultSet.updateRow(org.apache.derby.iapi.sql.execute.ExecRow, org.apache.derby.iapi.sql.execute.RowChanger)
public void markRowAsDeleted()
throws StandardException
NoPutResultSet
markRowAsDeleted in interface NoPutResultSetmarkRowAsDeleted in class NoPutResultSetImplStandardException - thrown on failure.NoPutResultSet.markRowAsDeleted()
|
Built on Wed 2013-06-12 15:21:56+0000, from revision ??? | ||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||