Interface EventFilter<EventAtom>

  • All Superinterfaces:
    java.util.function.Predicate<EventAtom>
    All Known Implementing Classes:
    MatchParameterFilter, MatchParameterPredicateFilter, ViatraQueryMatchEventFilter, ViatraQueryMultiMatchEventFilter

    public interface EventFilter<EventAtom>
    extends java.util.function.Predicate<EventAtom>
    Interface for filters. Decides whether an event atom should be processed by EVM. The filters are also used as keys for rule instances, so it is important to make sure to make filters comparable using Object.equals(Object)} and Object.hashCode().
    • Method Detail

      • isProcessable

        boolean isProcessable​(EventAtom eventAtom)
      • test

        default boolean test​(EventAtom eventAtom)
        Specified by:
        test in interface java.util.function.Predicate<EventAtom>
        Since:
        2.2
      • and

        default EventFilter<EventAtom> and​(java.util.function.Predicate<? super EventAtom> other)
        Overridden for type safety
        Specified by:
        and in interface java.util.function.Predicate<EventAtom>
        Since:
        2.2
      • negate

        default EventFilter<EventAtom> negate()
        Overridden for type safety
        Specified by:
        negate in interface java.util.function.Predicate<EventAtom>
        Since:
        2.2
      • or

        default EventFilter<EventAtom> or​(java.util.function.Predicate<? super EventAtom> other)
        Overridden for type safety
        Specified by:
        or in interface java.util.function.Predicate<EventAtom>
        Since:
        2.2