org.htmlparser.parserapplications.filterbuilder.wrappers

Class HasAttributeFilterWrapper

public class HasAttributeFilterWrapper extends Filter implements ActionListener, DocumentListener

Wrapper for HasAttributeFilters.
Field Summary
protected JComboBoxmAttributeName
Combo box for attribute name.
protected JTextAreamAttributeValue
Value to check for.
protected HasAttributeFiltermFilter
The underlying filter.
protected JCheckBoxmValued
The check box for has value.
Constructor Summary
HasAttributeFilterWrapper()
Create a wrapper over a new HasAttributeFilter.
Method Summary
booleanaccept(Node node)
Predicate to determine whether or not to keep the given node.
voidactionPerformed(ActionEvent event)
Invoked when an action occurs on the combo box.
protected voidaddAttributes(Set set, Node node)
Add the attribute names from the node to the set of attribute names.
protected voidaddAttributeValues(Set set, Node node)
Add the attribute values from the node to the set of attribute values.
voidchangedUpdate(DocumentEvent e)
Handle a change update event.
StringgetDescription()
Get the name of the filter.
StringgetIconSpec()
Get the resource name for the icon.
NodeFiltergetNodeFilter()
Get the underlying node filter object.
NodeFilter[]getSubNodeFilters()
Get the underlying node filter's subordinate filters.
voidinsertUpdate(DocumentEvent e)
Handle an insert update event.
voidremoveUpdate(DocumentEvent e)
Handle a remove update event.
voidsetNodeFilter(NodeFilter filter, Parser context)
Assign the underlying node filter for this wrapper.
voidsetSubNodeFilters(NodeFilter[] filters)
Assign the underlying node filter's subordinate filters.
StringtoJavaCode(StringBuffer out, int[] context)
Convert this filter into Java code.

Field Detail

mAttributeName

protected JComboBox mAttributeName
Combo box for attribute name.

mAttributeValue

protected JTextArea mAttributeValue
Value to check for.

mFilter

protected HasAttributeFilter mFilter
The underlying filter.

mValued

protected JCheckBox mValued
The check box for has value.

Constructor Detail

HasAttributeFilterWrapper

public HasAttributeFilterWrapper()
Create a wrapper over a new HasAttributeFilter.

Method Detail

accept

public boolean accept(Node node)
Predicate to determine whether or not to keep the given node. The behaviour based on this outcome is determined by the context in which it is called. It may lead to the node being added to a list or printed out. See the calling routine for details.

Parameters: node The node to test.

Returns: true if the node is to be kept, false if it is to be discarded.

actionPerformed

public void actionPerformed(ActionEvent event)
Invoked when an action occurs on the combo box.

Parameters: event Details about the action event.

addAttributes

protected void addAttributes(Set set, Node node)
Add the attribute names from the node to the set of attribute names.

Parameters: set The set to add to. node The node with attributes to add.

addAttributeValues

protected void addAttributeValues(Set set, Node node)
Add the attribute values from the node to the set of attribute values.

Parameters: set The set to add to. node The node with attributes to add.

changedUpdate

public void changedUpdate(DocumentEvent e)
Handle a change update event.

Parameters: e Details about the change event.

getDescription

public String getDescription()
Get the name of the filter.

Returns: A descriptive name for the filter.

getIconSpec

public String getIconSpec()
Get the resource name for the icon.

Returns: The icon resource specification.

getNodeFilter

public NodeFilter getNodeFilter()
Get the underlying node filter object.

Returns: The node filter object suitable for serialization.

getSubNodeFilters

public NodeFilter[] getSubNodeFilters()
Get the underlying node filter's subordinate filters.

Returns: The node filter object's contained filters.

insertUpdate

public void insertUpdate(DocumentEvent e)
Handle an insert update event.

Parameters: e Details about the insert event.

removeUpdate

public void removeUpdate(DocumentEvent e)
Handle a remove update event.

Parameters: e Details about the remove event.

setNodeFilter

public void setNodeFilter(NodeFilter filter, Parser context)
Assign the underlying node filter for this wrapper.

Parameters: filter The filter to wrap. context The parser to use for conditioning this filter. Some filters need contextual information to provide to the user, i.e. for tag names or attribute names or values, so the Parser context is provided.

setSubNodeFilters

public void setSubNodeFilters(NodeFilter[] filters)
Assign the underlying node filter's subordinate filters.

Parameters: filters The filters to insert into the underlying node filter.

toJavaCode

public String toJavaCode(StringBuffer out, int[] context)
Convert this filter into Java code. Output whatever text necessary and return the variable name.

Parameters: out The output buffer. context Three integers as follows:

  • indent level - the number of spaces to insert at the beginning of each line
  • filter number - the next available filter number
  • filter array number - the next available array of filters number
  • Returns: The variable name to use when referencing this filter (usually "filter" + context[1]++)

    HTML Parser is an open source library released under LGPL. SourceForge.net