ContentFilter (JDOM v1.1.1)
Date: 2018-05-07

org.jdom.filter

## Class ContentFilter

- java.lang.Object
- - org.jdom.filter.AbstractFilter
  - - org.jdom.filter.ContentFilter

- All Implemented Interfaces:
    java.io.Serializable, Filter

      public class ContentFilter
      extends AbstractFilter

  A general purpose Filter able to represent all legal JDOM objects or a specific subset. Filtering is accomplished by way of a filtering mask in which each bit represents whether a JDOM object is visible or not. For example to view all Text and CDATA nodes in the content of element x.

            Filter filter = new ContentFilter(ContentFilter.TEXT |
                                              ContentFilter.CDATA);
            List content = x.getContent(filter);

  For those who don't like bit-masking, set methods are provided as an alternative. For example to allow everything except Comment nodes.

            Filter filter =  new ContentFilter();
            filter.setCommentVisible(false);
            List content = x.getContent(filter);

  The default is to allow all valid JDOM objects.

  Version:
    $Revision: 1.15 $, $Date: 2007/11/10 05:29:00 $
  Author:
    Bradley S. Huffman
  See Also:
    Serialized Form

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static int` | `CDATA` Mask for JDOM `CDATA` objects
    `static int` | `COMMENT` Mask for JDOM `Comment` objects
    `static int` | `DOCTYPE` Mask for JDOM `DocType` object
    `static int` | `DOCUMENT` Mask for JDOM `Document` object
    `static int` | `ELEMENT` Mask for JDOM `Element` objects
    `static int` | `ENTITYREF` Mask for JDOM `EntityRef` objects
    `static int` | `PI` Mask for JDOM `ProcessingInstruction` objects
    `static int` | `TEXT` Mask for JDOM `Text` objects

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `ContentFilter()` Default constructor that allows any legal JDOM objects.
    `ContentFilter(boolean allVisible)` Set whether all JDOM objects are visible or not.
    `ContentFilter(int mask)` Filter out JDOM objects according to a filtering mask.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | `equals(java.lang.Object obj)` Returns whether the two filters are equivalent (i.e. the matching mask values are identical).
    `int` | `getFilterMask()` Return current filtering mask.
    `int` | `hashCode()`
    `boolean` | `matches(java.lang.Object obj)` Check to see if the object matches according to the filter mask.
    `void` | `setCDATAVisible(boolean visible)` Set visiblity of `CDATA` objects.
    `void` | `setCommentVisible(boolean visible)` Set visiblity of `Comment` objects.
    `void` | `setDefaultMask()` Set this filter to allow all legal JDOM objects.
    `void` | `setDocTypeVisible(boolean visible)` Set visiblity of `DocType` objects.
    `void` | `setDocumentContent()` Set filter to match only JDOM objects that are legal document content.
    `void` | `setElementContent()` Set filter to match only JDOM objects that are legal element content.
    `void` | `setElementVisible(boolean visible)` Set visiblity of `Element` objects.
    `void` | `setEntityRefVisible(boolean visible)` Set visiblity of `EntityRef` objects.
    `void` | `setFilterMask(int mask)` Set filtering mask.
    `void` | `setPIVisible(boolean visible)` Set visiblity of `ProcessingInstruction` objects.
    `void` | `setTextVisible(boolean visible)` Set visiblity of `Text` objects.

    - ### Methods inherited from class org.jdom.filter.AbstractFilter

      `and, negate, or`

    - ### Methods inherited from class java.lang.Object

      `clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### ELEMENT

          public static final int ELEMENT

      Mask for JDOM `Element` objects
      See Also:
        Constant Field Values

    - #### CDATA

          public static final int CDATA

      Mask for JDOM `CDATA` objects
      See Also:
        Constant Field Values

    - #### TEXT

          public static final int TEXT

      Mask for JDOM `Text` objects
      See Also:
        Constant Field Values

    - #### COMMENT

          public static final int COMMENT

      Mask for JDOM `Comment` objects
      See Also:
        Constant Field Values

    - #### PI

          public static final int PI

      Mask for JDOM `ProcessingInstruction` objects
      See Also:
        Constant Field Values

    - #### ENTITYREF

          public static final int ENTITYREF

      Mask for JDOM `EntityRef` objects
      See Also:
        Constant Field Values

    - #### DOCUMENT

          public static final int DOCUMENT

      Mask for JDOM `Document` object
      See Also:
        Constant Field Values

    - #### DOCTYPE

          public static final int DOCTYPE

      Mask for JDOM `DocType` object
      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### ContentFilter

          public ContentFilter()

      Default constructor that allows any legal JDOM objects.

    - #### ContentFilter

          public ContentFilter(boolean allVisible)

      Set whether all JDOM objects are visible or not.
      Parameters:
        `allVisible` - `true` all JDOM objects are visible, `false` all JDOM objects are hidden.

    - #### ContentFilter

          public ContentFilter(int mask)

      Filter out JDOM objects according to a filtering mask.
      Parameters:
        `mask` - Mask of JDOM objects to allow.

  - ### Method Detail

    - #### getFilterMask

          public int getFilterMask()

      Return current filtering mask.
      Returns:
        the current filtering mask

    - #### setFilterMask

          public void setFilterMask(int mask)

      Set filtering mask.
      Parameters:
        `mask` - the new filtering mask

    - #### setDefaultMask

          public void setDefaultMask()

      Set this filter to allow all legal JDOM objects.

    - #### setDocumentContent

          public void setDocumentContent()

      Set filter to match only JDOM objects that are legal document content.

    - #### setElementContent

          public void setElementContent()

      Set filter to match only JDOM objects that are legal element content.

    - #### setElementVisible

          public void setElementVisible(boolean visible)

      Set visiblity of `Element` objects.
      Parameters:
        `visible` - whether Elements are visible, `true` if yes, `false` if not

    - #### setCDATAVisible

          public void setCDATAVisible(boolean visible)

      Set visiblity of `CDATA` objects.
      Parameters:
        `visible` - whether CDATA nodes are visible, `true` if yes, `false` if not

    - #### setTextVisible

          public void setTextVisible(boolean visible)

      Set visiblity of `Text` objects.
      Parameters:
        `visible` - whether Text nodes are visible, `true` if yes, `false` if not

    - #### setCommentVisible

          public void setCommentVisible(boolean visible)

      Set visiblity of `Comment` objects.
      Parameters:
        `visible` - whether Comments are visible, `true` if yes, `false` if not

    - #### setPIVisible

          public void setPIVisible(boolean visible)

      Set visiblity of `ProcessingInstruction` objects.
      Parameters:
        `visible` - whether ProcessingInstructions are visible, `true` if yes, `false` if not

    - #### setEntityRefVisible

          public void setEntityRefVisible(boolean visible)

      Set visiblity of `EntityRef` objects.
      Parameters:
        `visible` - whether EntityRefs are visible, `true` if yes, `false` if not

    - #### setDocTypeVisible

          public void setDocTypeVisible(boolean visible)

      Set visiblity of `DocType` objects.
      Parameters:
        `visible` - whether the DocType is visible, `true` if yes, `false` if not

    - #### matches

          public boolean matches(java.lang.Object obj)

      Check to see if the object matches according to the filter mask.
      Parameters:
        `obj` - The object to verify.
      Returns:
        `true` if the objected matched a predfined set of rules.

    - #### equals

          public boolean equals(java.lang.Object obj)

      Returns whether the two filters are equivalent (i.e. the matching mask values are identical).
      Overrides:
        `equals` in class `java.lang.Object`
      Parameters:
        `obj` - the object to compare against
      Returns:
        whether the two filters are equal

    - #### hashCode

          public int hashCode()

      Overrides:
        `hashCode` in class `java.lang.Object`

Copyright ? 2007 Jason Hunter, Brett McLaughlin. All Rights Reserved.