org.simpleframework.xml.filter
Class StackFilter

java.lang.Object
  extended by org.simpleframework.xml.filter.StackFilter
All Implemented Interfaces:
Filter
Direct Known Subclasses:
PlatformFilter

public class StackFilter
extends java.lang.Object
implements Filter

The StackFilter object provides a filter that can be given a collection of filters which can be used to resolve a replacement. The order of the resolution used for this filter is last in first used. This order allows the highest priority filter to be added last within the stack.

Author:
Niall Gallagher

Constructor Summary
StackFilter()
          Constructor for the StackFilter object.
 
Method Summary
 void push(Filter filter)
          This pushes the the provided Filter on to the top of the stack.
 java.lang.String replace(java.lang.String text)
          Replaces the text provided with the value resolved from the stacked filters.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

StackFilter

public StackFilter()
Constructor for the StackFilter object. This will create an empty filter that initially resolves null for all replacements requested. As filters are pushed into the stack the replace method can resolve replacements.

Method Detail

push

public void push(Filter filter)
This pushes the the provided Filter on to the top of the stack. The last filter pushed on to the stack has the highes priority in the resolution of a replacement value.

Parameters:
filter - this is a filter to be pushed on to the stack

replace

public java.lang.String replace(java.lang.String text)
Replaces the text provided with the value resolved from the stacked filters. This attempts to resolve a replacement from the top down. So the last Filter pushed on to the stack will be the first filter queried for a replacement.

Specified by:
replace in interface Filter
Parameters:
text - this is the text value to be replaced
Returns:
this will return the replacement text resolved