Class LikeRule

All Implemented Interfaces:
Serializable, Rule

public class LikeRule extends AbstractRule
A Rule class supporting java.util.regex regular expression syntax.
See Also:
  • Field Details

    • serialVersionUID

      static final long serialVersionUID
      Serialization ID.
      See Also:
    • RESOLVER

      private static final LoggingEventFieldResolver RESOLVER
      Resolver.
    • pattern

      private transient Pattern pattern
      Pattern.
    • matcher

      private transient Matcher matcher
      Regular expression matcher.
    • field

      private transient String field
      Field.
  • Constructor Details

    • LikeRule

      private LikeRule(String field, Pattern pattern)
      Create new instance.
      Parameters:
      field - field
      pattern - pattern
  • Method Details

    • getRule

      public static Rule getRule(Stack stack)
      Create new instance from top two elements of stack.
      Parameters:
      stack - stack
      Returns:
      new instance
    • getRule

      public static Rule getRule(String field, String pattern)
      Create new instance.
      Parameters:
      field - field
      pattern - pattern
      Returns:
      new instance
    • evaluate

      public boolean evaluate(org.apache.log4j.spi.LoggingEvent event, Map matches)
      Returns true if this implementation of the rule accepts the LoggingEvent, or false if not.

      What True/False means can be client-specific.

      Parameters:
      event - LoggingEvent this instance will evaluate
      matches - a Map of event field keys to Sets of matching strings (may be null) which will be updated during execution of this method to include field and string matches based on the rule evaluation results
      Returns:
      true if this Rule instance accepts the event, otherwise false.
    • readObject

      private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException
      Deserialize the state of the object.
      Parameters:
      in - object input stream
      Throws:
      IOException - if IOException during deserialization
      ClassNotFoundException - if class not found.
    • writeObject

      private void writeObject(ObjectOutputStream out) throws IOException
      Serialize the state of the object.
      Parameters:
      out - object output stream
      Throws:
      IOException - if IOException during serialization