JDOM
1.1.3

org.jdom.filter
Class ContentFilter

java.lang.Object
  extended by org.jdom.filter.AbstractFilter
      extended by 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.1 $, $Date: 2012/04/08 22:48:00 $
Author:
Bradley S. Huffman
See Also:
Serialized Form

Field Summary
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
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
 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

JDOM
1.1.3

Copyright 2011 Jason Hunter, Brett McLaughlin. All Rights Reserved.