Package oracle.streams
Interface RowLCR
-
- All Superinterfaces:
LCR
- All Known Implementing Classes:
DefaultRowLCR
public interface RowLCR extends LCR
The RowLCR interface encapsulates the information about a row logical change record (LCR). The row LCR is a logical change record that describes a change to the data in a single row that results from a data manipulation language (DML) statement or a piecewise LOB operation.
You can choose to have a customized implementation of RowLCR by implementing this interface.- See Also:
AbstractLCR
,DDLLCR
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.String
COMMIT
static java.lang.String
DELETE
static java.lang.String
INSERT
static java.lang.String
LOB_ERASE
static java.lang.String
LOB_TRIM
static java.lang.String
LOB_WRITE
static java.lang.String
UPDATE
-
Fields inherited from interface oracle.streams.LCR
ATTRIBUTE_ROOT_NAME, ATTRIBUTE_ROW_ID, ATTRIBUTE_SERIAL_NUM, ATTRIBUTE_SESSION_NUM, ATTRIBUTE_THREAD_NUM, ATTRIBUTE_TX_NAME, ATTRIBUTE_USERNAME
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description ColumnValue[]
getNewValues()
Gets the list of new column values in a row LCR.ColumnValue[]
getOldValues()
Gets the list of old column values in a row LCR.boolean
hasChunkData()
Indicates whether this LCR contains chunk data for LOB, LONG, or XMLTYPE columns.void
setChunkDataFlag(boolean chunkDataFlag)
Sets the chunkDataFlag.void
setNewValues(ColumnValue[] newValues)
Sets the new column values list for a row LCR.void
setOldValues(ColumnValue[] oldValues)
Sets the old column values list for a row LCR.-
Methods inherited from interface oracle.streams.LCR
getAttribute, getCommandType, getObjectName, getObjectOwner, getPosition, getSourceDatabaseName, getSourceTime, getTag, getTransactionId, setAttribute, setCommandType, setObjectName, setObjectOwner, setPosition, setSourceDatabaseName, setSourceTime, setTag, setTransactionId
-
-
-
-
Field Detail
-
INSERT
static final java.lang.String INSERT
- See Also:
- Constant Field Values
-
UPDATE
static final java.lang.String UPDATE
- See Also:
- Constant Field Values
-
DELETE
static final java.lang.String DELETE
- See Also:
- Constant Field Values
-
COMMIT
static final java.lang.String COMMIT
- See Also:
- Constant Field Values
-
LOB_WRITE
static final java.lang.String LOB_WRITE
- See Also:
- Constant Field Values
-
LOB_ERASE
static final java.lang.String LOB_ERASE
- See Also:
- Constant Field Values
-
LOB_TRIM
static final java.lang.String LOB_TRIM
- See Also:
- Constant Field Values
-
-
Method Detail
-
getOldValues
ColumnValue[] getOldValues()
Gets the list of old column values in a row LCR.
These are the column values for the row before the DML change.
If the DML statement is an UPDATE or a DELETE statement, then this parameter contains the values of columns in the row before the DML statement.
If the DML statement is an INSERT statement, then there are no old values and NULL is returned. Note that the returned ColumnValue[] is mutable.- Returns:
- A ColumnValue array contains the old column value
-
getNewValues
ColumnValue[] getNewValues()
Gets the list of new column values in a row LCR.
These are the column values for the row after the DML change.
If the DML statement is an UPDATE or an INSERT statement, then this parameter contains the values of columns in the row after the DML statement.
If the DML statement is a DELETE statement, then there are no new values and NULL is returned.
Note that the returned ColumnValue[] is mutable.- Returns:
- A ColumnValue array contains the new column value
-
setOldValues
void setOldValues(ColumnValue[] oldValues)
Sets the old column values list for a row LCR.
If the DML statement is an UPDATE or a DELETE statement, then set this parameter to a non-NULL value.
If the DML statement is an INSERT statement, then set this parameter to a NULL value.- Parameters:
oldValues
- The old column value array
-
setNewValues
void setNewValues(ColumnValue[] newValues)
Sets the new column values list for a row LCR.
If the DML statement is an UPDATE or an INSERT statement, then set this parameter to a non-NULL value.
If the DML statement is a DELETE statement, then set this parameter to a NULL value.- Parameters:
newValues
- The new column value array
-
hasChunkData
boolean hasChunkData()
Indicates whether this LCR contains chunk data for LOB, LONG, or XMLTYPE columns.
If an LCR contains chunk data for LOB, LONG, or XMLTYPE columns and must use the XStreamOUT APIs for chunking, then call this method to check whether the LCR contains chunk data and invoke the XStreamOut APIs for chunking accordingly.- Returns:
- A boolean flag indicates if this LCR contains chunk data.
-
setChunkDataFlag
void setChunkDataFlag(boolean chunkDataFlag)
Sets the chunkDataFlag.
If an LCR contains chunk data for LOB, LONG, or XMLTYPE columns and must use the XStreamOUT APIs for chunking, then call this method to set the chunkDataFLag to true and invoke the XStreamOut APIs for chunking accordingly.- Parameters:
chunkDataFlag
- indicates whether this LCR contains chunk data.
-
-