| org.apache.derby.impl.store.raw.log.StreamLogScan
All known Subclasses: org.apache.derby.impl.store.raw.log.FlushedScan, org.apache.derby.impl.store.raw.log.Scan,
StreamLogScan | public interface StreamLogScan extends LogScan(Code) | | LogScan provides methods to read a log record and get its LogInstant
in an already defined scan. A logscan also needs to know how to advance to
the next log record.
|
Method Summary | |
public void | close() Close this log scan. | public long | getInstant() Get the instant of the record just retrieved with getNextRecord(). | public LogInstant | getLogInstant() Get the LogInstant for the record just retrieved with getNextRecord(). | public long | getLogRecordEnd() Get the log instant that is right after the record just retrieved with
getNextRecord(). | public LogRecord | getNextRecord(ArrayInputStream input, TransactionId tranId, int groupmask) Get the next record in the scan and place its data in the passed in
array. | public boolean | isLogEndFuzzy() | public void | resetPosition(LogInstant instant) Reset the scan to the given LogInstant so that getNextRecord get the
log record AFTER the given LogInstant. |
close | public void close()(Code) | | Close this log scan.
|
getInstant | public long getInstant()(Code) | | Get the instant of the record just retrieved with getNextRecord().
INVALID_LOG_INSTANT if no records have been returned yet orthe scan has completed. |
getLogInstant | public LogInstant getLogInstant()(Code) | | Get the LogInstant for the record just retrieved with getNextRecord().
null if no records have been returned yet or the scan hascompleted. |
getLogRecordEnd | public long getLogRecordEnd()(Code) | | Get the log instant that is right after the record just retrieved with
getNextRecord(). Only valid for a forward scan and on a successful
retrieval.
INVALID_LOG_INSTANT if this is not a FORWARD scan or, norecord have been returned yet or the scan has completed. |
getNextRecord | public LogRecord getNextRecord(ArrayInputStream input, TransactionId tranId, int groupmask) throws StandardException, IOException(Code) | | Get the next record in the scan and place its data in the passed in
array. The scan is advanced to the next log record.
If the input array is of insufficient size, getNextRecord must expand
the array to accomodate the log record. User can optionally pass in a
transaction Id and a group mask. If provided, only log record that
matches the transaction Id and the group mask is returned.
Parameters: input - the ArrayInputStream to put the log record Parameters: tranId - if non-null, only log record that equals tranId will be returned. If null, log records are not filtered on transaction Id. Parameters: groupmask - if non-zero, only log record whose Loggable's groupvalue is included in the groupmask is returned. groupmask can be a bit wise OR of many Loggable groups. If zero, log records are not filtered on the Loggable's group. an object that represents the log record, return null if thescan has completed. exception: StandardException - Standard Clooudscape error policy exception: IOException - Some I/O exception raised during reading the log record. |
isLogEndFuzzy | public boolean isLogEndFuzzy()(Code) | | true if fuzzy log end found during forward scan, this happensif there was a partially written log records before the crash. |
resetPosition | public void resetPosition(LogInstant instant) throws IOException, StandardException(Code) | | Reset the scan to the given LogInstant so that getNextRecord get the
log record AFTER the given LogInstant.
Parameters: instant - the log instant to reset to exception: IOException - Some I/O exception raised when accessing the log file exception: StandardException - reset to illegal position or beyond thelimit of the scan. |
|
|