Top Description Methods
org.apache.derby.iapi.store.raw

public Interface LogicalUndoable

extends Undoable
Known Direct Implementers
org.apache.derby.impl.store.raw.data.LogicalPageOperation
Imports
org.apache.derby.shared.common.error.StandardException, org.apache.derby.iapi.store.access.conglomerate.LogicalUndo, org.apache.derby.iapi.types.DataValueDescriptor, org.apache.derby.iapi.services.io.LimitObjectInput, java.io.IOException

A LogicalUndoable is a log operation that operates on the content of a page and the log operation needs logical undo. This interface is used by LogicalUndo to extract information out of the log record, and to pass back to the logging system the real location where the roll back should happen.

It has specific page information such as its segment Id, container Id, page number, and it knows how to restore a storable row from the information stored in the log record.

See Also
org.apache.derby.iapi.store.access.conglomerate.LogicalUndo

Method Summary

Modifier and TypeMethod and Description
public ContainerHandle
getContainer()

Return the containerHandle used by this log operation.

public RecordHandle
getRecordHandle()

Return the recordHandle stored in the log operation that correspond to the record that was changed in the rollforward.

public void
resetRecordHandle(RecordHandle
the RecordHandle that represents the row's new location
rh
)

If the row has moved, reset the record handle that the undo should be applied on.

public void
restoreLoggedRow(Object[]
an IN/OUT parameter, caller passed in the row with the correct column number and type, the log operation will restore the row with the optional data stored in the log record.
row
,
LimitObjectInput in)

Restore the row stored in the log operation.

Inherited from org.apache.derby.iapi.store.raw.Undoable:
generateUndo

Method Detail

getContainerback to summary
public ContainerHandle getContainer() throws StandardException

Return the containerHandle used by this log operation. Logical cannot change container identity between roll forward and roll back. This method should only be called by LogicalUndo to extract information from the log record.

Exceptions
StandardException:
Standard Derby error policy
getRecordHandleback to summary
public RecordHandle getRecordHandle()

Return the recordHandle stored in the log operation that correspond to the record that was changed in the rollforward. This method should only be called by LogicalUndo to extract information from the log record.

resetRecordHandleback to summary
public void resetRecordHandle(RecordHandle rh)

If the row has moved, reset the record handle that the undo should be applied on.

Parameters
rh:RecordHandle

the RecordHandle that represents the row's new location

restoreLoggedRowback to summary
public void restoreLoggedRow(Object[] row, LimitObjectInput in) throws StandardException, IOException

Restore the row stored in the log operation. This method should only be called by LogicalUndo to extract information from the log record.

Parameters
row:Object[]

an IN/OUT parameter, caller passed in the row with the correct column number and type, the log operation will restore the row with the optional data stored in the log record.

Exceptions
StandardException:
Standard Derby error policy
IOException:
Method may read from in
See Also
LogicalUndo