org.nuiton.processor.filters
Class DefaultFilter

java.lang.Object
  extended by org.nuiton.processor.filters.DefaultFilter
All Implemented Interfaces:
Filter
Direct Known Subclasses:
GeneratorTemplatesFilter, GeneratorTemplatesFilterIn, I18nFilter, LicenseFilter, LogsFilter, OptimisationFilter, ProcessorUtil.FragmentExtractor, ProcessorUtil.FragmentRemover

public abstract class DefaultFilter
extends Object
implements Filter

A common astract filter. This classe offer getLineNumber method to know line number currently read from source reader. You must implements the methods :

Author:
poussin

Nested Class Summary
protected static class DefaultFilter.State
          Type of states
 
Field Summary
protected  StringBuffer cachedContent
          le buffer interne pour conserve ce qui n'a pas encore été écrit
static int NOT_FOUND
           
protected  LineNumberReader reader
           
protected  DefaultFilter.State state
          l'état interne du filtre
 
Fields inherited from interface org.nuiton.processor.filters.Filter
EMPTY_STRING
 
Constructor Summary
DefaultFilter()
           
 
Method Summary
protected  void changeState(DefaultFilter.State newState)
           
 String flush()
           
protected abstract  String getFooter()
           
protected abstract  String getHeader()
           
 int getLineNumber()
          Return line currently read in source reader
 int getMatchIndexFor(String input, String sequence)
           
 int getMatchLengthFor(String sequence)
           
 boolean hasCachedData()
           
 String parse(String input)
           
 String performHeaderFooterFilter(String ch)
           
protected abstract  String performInFilter(String ch)
          methode appele lorsqu'on a la chaine entiere entre le header et le footer.
protected abstract  String performOutFilter(String ch)
          methode appele lorsqu'on a la chaine entiere a l'exterieur du header/footer
 void setReader(LineNumberReader reader)
          set reader used with this filter
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

NOT_FOUND

public static final int NOT_FOUND
See Also:
Constant Field Values

reader

protected LineNumberReader reader

cachedContent

protected StringBuffer cachedContent
le buffer interne pour conserve ce qui n'a pas encore été écrit


state

protected DefaultFilter.State state
l'état interne du filtre

Constructor Detail

DefaultFilter

public DefaultFilter()
Method Detail

performInFilter

protected abstract String performInFilter(String ch)
methode appele lorsqu'on a la chaine entiere entre le header et le footer.

Parameters:
ch - la chaine trouve
Returns:
ce qu'il faut ecrire dans le fichier de sortie

performOutFilter

protected abstract String performOutFilter(String ch)
methode appele lorsqu'on a la chaine entiere a l'exterieur du header/footer

Parameters:
ch - la chaine trouve
Returns:
ce qu'il faut ecrire dans le fichier de sortie

getHeader

protected abstract String getHeader()
Returns:
la chaine du header

getFooter

protected abstract String getFooter()
Returns:
la chaine du footer

setReader

public void setReader(LineNumberReader reader)
Description copied from interface: Filter
set reader used with this filter

Specified by:
setReader in interface Filter

getLineNumber

public int getLineNumber()
Return line currently read in source reader

Returns:
line number or -1 if no reader available

parse

public String parse(String input)
Specified by:
parse in interface Filter
Parameters:
input - la chaine de caractère à processer
Returns:
la chaine processée

performHeaderFooterFilter

public String performHeaderFooterFilter(String ch)

getMatchIndexFor

public int getMatchIndexFor(String input,
                            String sequence)

getMatchLengthFor

public int getMatchLengthFor(String sequence)

hasCachedData

public boolean hasCachedData()
Specified by:
hasCachedData in interface Filter
Returns:
true si le filtre contient des données en cache

flush

public String flush()
Specified by:
flush in interface Filter
Returns:
la chaine de caractères

changeState

protected void changeState(DefaultFilter.State newState)


Copyright © 2002-2011 CodeLutin. All Rights Reserved.