Class XorFilter

java.lang.Object
org.htmlparser.filters.XorFilter
All Implemented Interfaces:
Serializable, Cloneable, NodeFilter

public class XorFilter extends Object implements NodeFilter
Accepts nodes matching an odd number of its predicates filters (XOR operation). For example, where it has two filters, it accepts only if and only if one of the two filters accepts the Node, but does not accept if both filters accept the Node.
See Also:
  • Field Details

    • mPredicates

      protected NodeFilter[] mPredicates
      The predicates that are to be xor'ed together;
  • Constructor Details

    • XorFilter

      public XorFilter()
      Creates a new instance of an XorFilter. With no predicates, this would always answer false to accept(org.htmlparser.Node).
      See Also:
    • XorFilter

      public XorFilter(NodeFilter left, NodeFilter right)
      Creates an XorFilter that accepts nodes acceptable to either filter, but not both.
      Parameters:
      left - One filter.
      right - The other filter.
    • XorFilter

      public XorFilter(NodeFilter[] predicates)
      Creates an XorFilter that accepts nodes acceptable an odd number of the given filters.
      Parameters:
      predicates - The list of filters.
  • Method Details

    • getPredicates

      public NodeFilter[] getPredicates()
      Get the predicates used by this XorFilter.
      Returns:
      The predicates currently in use.
    • setPredicates

      public void setPredicates(NodeFilter[] predicates)
      Set the predicates for this XorFilter.
      Parameters:
      predicates - The list of predidcates to use in accept(org.htmlparser.Node).
    • accept

      public boolean accept(Node node)
      Accept nodes that are acceptable to an odd number of its predicate filters.
      Specified by:
      accept in interface NodeFilter
      Parameters:
      node - The node to check.
      Returns:
      true if an odd number of the predicate filters find the node is acceptable, false otherwise.