Class CacheFilter

java.lang.Object
uk.ac.starlink.ttools.filter.BasicFilter
uk.ac.starlink.ttools.filter.CacheFilter
All Implemented Interfaces:
ProcessingFilter, ProcessingStep

public class CacheFilter extends BasicFilter implements ProcessingStep
Processing step which caches the current table in a disk or memory cache (according to the default StoragePolicy). This is useful for efficiency reasons if downstream steps are going to make random-access or multiple use of an expensive step.
Since:
8 Mar 2005
Author:
Mark Taylor (Starlink)
  • Constructor Details

    • CacheFilter

      public CacheFilter()
  • Method Details

    • getDescriptionLines

      protected String[] getDescriptionLines()
      Specified by:
      getDescriptionLines in class BasicFilter
    • createStep

      public ProcessingStep createStep(Iterator<String> argIt)
      Description copied from interface: ProcessingFilter
      Creates a new ProcessingStep based on a sequence of command-line arguments. The argIt argument is an iterator over the command-line arguments positioned just before any arguments intended for this filter. If legal, any that can be comprehended by this filter should be read (iterated over) and removed, and a ProcessingStep should accordingly be returned. In the case of a successful return, it is essential that no arguments other than the ones intended for this filter are read from the iterator.

      If the argument list is badly-formed as far as this filter is concerned, an ArgException should be thrown.

      Specified by:
      createStep in interface ProcessingFilter
      Parameters:
      argIt - iterator over command-line arguments positioned at the first one
    • wrap

      public uk.ac.starlink.table.StarTable wrap(uk.ac.starlink.table.StarTable baseTable) throws IOException
      Description copied from interface: ProcessingStep
      Performs a table filtering step.
      Specified by:
      wrap in interface ProcessingStep
      Parameters:
      baseTable - input table
      Returns:
      output table
      Throws:
      IOException