@Internal public class PatternTimeoutSelectAdapter<IN,OUT,T> extends PatternSelectAdapter<IN,OUT> implements TimedOutPartialMatchHandler<IN>
PatternSelectFunction
and PatternTimeoutFlatSelectAdapter
with PatternProcessFunction
.PatternProcessFunction.Context
Constructor and Description |
---|
PatternTimeoutSelectAdapter(PatternSelectFunction<IN,OUT> selectFunction,
PatternTimeoutFunction<IN,T> timeoutFunction,
OutputTag<T> timedOutPartialMatchesTag) |
Modifier and Type | Method and Description |
---|---|
void |
close()
Tear-down method for the user code.
|
void |
open(OpenContext openContext)
Initialization method for the function.
|
void |
processTimedOutMatch(Map<String,List<IN>> match,
PatternProcessFunction.Context ctx)
Called for every timed out partial match (due to
Pattern.within(Duration) ). |
processMatch
getIterationRuntimeContext, getRuntimeContext, open, setRuntimeContext
public PatternTimeoutSelectAdapter(PatternSelectFunction<IN,OUT> selectFunction, PatternTimeoutFunction<IN,T> timeoutFunction, OutputTag<T> timedOutPartialMatchesTag)
public void open(OpenContext openContext) throws Exception
RichFunction
The openContext object passed to the function can be used for configuration and initialization. The openContext contains some necessary information that were configured on the function in the program composition.
public class MyFilter extends RichFilterFunction<String> {
private String searchString;
public void open(OpenContext openContext) {
// initialize the value of searchString
}
public boolean filter(String value) {
return value.equals(searchString);
}
}
By default, this method does nothing.
1. If you implement open(OpenContext openContext)
, the open(OpenContext
openContext)
will be invoked and the open(Configuration parameters)
won't be
invoked. 2. If you don't implement open(OpenContext openContext)
, the open(Configuration parameters)
will be invoked in the default implementation of the open(OpenContext openContext)
.
open
in interface RichFunction
open
in class PatternSelectAdapter<IN,OUT>
openContext
- The context containing information about the context in which the function
is opened.Exception
- Implementations may forward exceptions, which are caught by the runtime.
When the runtime catches an exception, it aborts the task and lets the fail-over logic
decide whether to retry the task execution.public void close() throws Exception
RichFunction
This method can be used for clean up work.
close
in interface RichFunction
close
in class PatternSelectAdapter<IN,OUT>
Exception
- Implementations may forward exceptions, which are caught by the runtime.
When the runtime catches an exception, it aborts the task and lets the fail-over logic
decide whether to retry the task execution.public void processTimedOutMatch(Map<String,List<IN>> match, PatternProcessFunction.Context ctx) throws Exception
TimedOutPartialMatchHandler
Pattern.within(Duration)
). It enables custom handling, e.g. one
can emit the timed out results through a side output:
{@code private final OutputTagtimedOutPartialMatchesTag = ... private class MyFunction extends PatternProcessFunction implements TimedOutPartialMatchHandler {
processTimedOutMatch
in interface TimedOutPartialMatchHandler<IN>
match
- map containing the timed out partial match. Events are identified by their
names.ctx
- enables access to time features and emitting results through side outputsException
- This method may throw exceptions. Throwing an exception will cause the
operation to fail and may trigger recovery.Copyright © 2014–2024 The Apache Software Foundation. All rights reserved.