Class SimpleCondition<T>

  • All Implemented Interfaces:
    Serializable, org.apache.flink.api.common.functions.FilterFunction<T>, org.apache.flink.api.common.functions.Function
    Direct Known Subclasses:
    SubtypeCondition

    @PublicEvolving
    public abstract class SimpleCondition<T>
    extends IterativeCondition<T>
    implements org.apache.flink.api.common.functions.FilterFunction<T>
    A user-defined condition that decides if an element should be accepted in the pattern or not. Accepting an element also signals a state transition for the corresponding NFA.

    Contrary to the IterativeCondition, conditions that extend this class do not have access to the previously accepted elements in the pattern. Conditions that extend this class are simple filter(...) functions that decide based on the properties of the element at hand.

    See Also:
    Serialized Form
    • Constructor Detail

      • SimpleCondition

        public SimpleCondition()
    • Method Detail

      • filter

        public boolean filter​(T value,
                              IterativeCondition.Context<T> ctx)
                       throws Exception
        Description copied from class: IterativeCondition
        The filter function that evaluates the predicate.

        IMPORTANT: The system assumes that the function does not modify the elements on which the predicate is applied. Violating this assumption can lead to incorrect results.

        Specified by:
        filter in class IterativeCondition<T>
        Parameters:
        value - The value to be tested.
        ctx - The IterativeCondition.Context used for the evaluation of the function and provides access to the already accepted events in the pattern (see IterativeCondition.Context.getEventsForPattern(String)).
        Returns:
        true for values that should be retained, false for values to be filtered out.
        Throws:
        Exception - This method may throw exceptions. Throwing an exception will cause the operation to fail and may trigger recovery.
      • of

        public static <T> SimpleCondition<T> of​(org.apache.flink.api.common.functions.FilterFunction<T> filters)