Class DefaultFilter

java.lang.Object
org.nuiton.processor.filters.DefaultFilter
All Implemented Interfaces:
Filter
Direct Known Subclasses:
GeneratorTemplatesFilter, GeneratorTemplatesFilterIn, 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
  • Field Details

  • Constructor Details

    • DefaultFilter

      public DefaultFilter()
  • Method Details

    • 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
      Parameters:
      reader -
    • 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)