@Internal public class ConstraintEnforcer extends TableStreamOperator<RowData> implements OneInputStreamOperator<RowData,RowData>
RowData
to enforce the following constraints:
NOT NULL
column constraint of a sink table
CHAR(length)
/@{code VARCHAR(length)}: trim string values to comply with the length
defined in their corresponding types.
Modifier and Type | Class and Description |
---|---|
static class |
ConstraintEnforcer.Builder
Helper builder, so that the
ConstraintEnforcer can be instantiated with only the NOT
NULL constraint validation, only the CHAR/VARCHAR length validation, only the
BINARY/VARBINARY length validation or combinations of them, or all of them. |
static class |
ConstraintEnforcer.FieldInfo
Helper POJO to keep info about CHAR/VARCHAR/BINARY/VARBINARY fields, used to determine if
trimming or padding is needed.
|
TableStreamOperator.ContextImpl
ctx, currentWatermark
chainingStrategy, config, lastRecordAttributes1, lastRecordAttributes2, latencyStats, LOG, metrics, output, processingTimeService, stateHandler, stateKeySelector1, stateKeySelector2, timeServiceManager
Modifier and Type | Method and Description |
---|---|
String |
getOperatorName()
Return the operator name.
|
static ConstraintEnforcer.Builder |
newBuilder() |
void |
open()
This method is called immediately before any elements are processed, it should contain the
operator's initialization logic, e.g. state initialization.
|
void |
processElement(StreamRecord<RowData> element)
Processes one element that arrived on this input of the
MultipleInputStreamOperator . |
computeMemorySize, processWatermark, useSplittableTimers
close, finish, getChainingStrategy, getContainingTask, getCurrentKey, getExecutionConfig, getInternalTimerService, getKeyedStateBackend, getKeyedStateStore, getMetricGroup, getOperatorConfig, getOperatorID, getOperatorStateBackend, getOrCreateKeyedState, getPartitionedState, getPartitionedState, getProcessingTimeService, getRuntimeContext, getStateKeySelector1, getStateKeySelector2, getTimeServiceManager, getUserCodeClassloader, hasKeyContext1, hasKeyContext2, initializeState, initializeState, isUsingCustomRawKeyedState, notifyCheckpointAborted, notifyCheckpointComplete, prepareSnapshotPreBarrier, processLatencyMarker, processLatencyMarker1, processLatencyMarker2, processRecordAttributes, processRecordAttributes1, processRecordAttributes2, processWatermark1, processWatermark2, processWatermarkStatus, processWatermarkStatus1, processWatermarkStatus2, reportOrForwardLatencyMarker, setChainingStrategy, setCurrentKey, setKeyContextElement1, setKeyContextElement2, setMailboxExecutor, setProcessingTimeService, setup, snapshotState, snapshotState
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
setKeyContextElement
close, finish, getMetricGroup, getOperatorAttributes, getOperatorID, initializeState, prepareSnapshotPreBarrier, setKeyContextElement1, setKeyContextElement2, snapshotState
notifyCheckpointAborted, notifyCheckpointComplete
getCurrentKey, setCurrentKey
processLatencyMarker, processRecordAttributes, processWatermark, processWatermarkStatus
hasKeyContext
public String getOperatorName()
AbstractStreamOperator
getOperatorName
in class AbstractStreamOperator<RowData>
public void open() throws Exception
AbstractStreamOperator
The default implementation does nothing.
open
in interface StreamOperator<RowData>
open
in class TableStreamOperator<RowData>
Exception
- An exception in this method causes the operator to fail.public static ConstraintEnforcer.Builder newBuilder()
public void processElement(StreamRecord<RowData> element) throws Exception
Input
MultipleInputStreamOperator
.
This method is guaranteed to not be called concurrently with other methods of the operator.processElement
in interface Input<RowData>
Exception
Copyright © 2014–2024 The Apache Software Foundation. All rights reserved.