uk.ac.starlink.ttools.task
Class ConsumerTask

java.lang.Object
  extended by uk.ac.starlink.ttools.task.ConsumerTask
All Implemented Interfaces:
uk.ac.starlink.task.Task
Direct Known Subclasses:
MapperTask, RegQuery, SingleMapperTask

public abstract class ConsumerTask
extends Object
implements uk.ac.starlink.task.Task

Abstract task which takes an input table and disposes of it. Concrete subclasses must supply the table.

Since:
29 Aug 2005
Author:
Mark Taylor

Constructor Summary
ConsumerTask(String purpose, ProcessingMode outMode, boolean useOutFilter)
          Constructor.
 
Method Summary
 uk.ac.starlink.task.Executable createExecutable(uk.ac.starlink.task.Environment env)
           
protected abstract  TableProducer createProducer(uk.ac.starlink.task.Environment env)
          Returns an object which can produce the effective output table which will be consumed by this task.
static TableProducer createProducer(uk.ac.starlink.task.Environment env, FilterParameter filterParam, InputTableParameter inParam)
          Constructs a table producer given an input parameter and an input filter parameter.
 ProcessingMode getOutputMode()
          Returns this task's output mode.
protected  List getParameterList()
          Returns the parameter list for this task; it may be modified.
 uk.ac.starlink.task.Parameter[] getParameters()
           
 String getPurpose()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ConsumerTask

public ConsumerTask(String purpose,
                    ProcessingMode outMode,
                    boolean useOutFilter)
Constructor.

Parameters:
purpose - one-line description of the task
outMode - processing mode which determines the destination of the processed table
useOutFilter - allow specification of filters for output table
Method Detail

getPurpose

public String getPurpose()
Specified by:
getPurpose in interface uk.ac.starlink.task.Task

getParameters

public uk.ac.starlink.task.Parameter[] getParameters()
Specified by:
getParameters in interface uk.ac.starlink.task.Task

getParameterList

protected List getParameterList()
Returns the parameter list for this task; it may be modified.

Returns:
parameter list

createProducer

protected abstract TableProducer createProducer(uk.ac.starlink.task.Environment env)
                                         throws uk.ac.starlink.task.TaskException
Returns an object which can produce the effective output table which will be consumed by this task.

Parameters:
env - execution environment
Returns:
table producer
Throws:
uk.ac.starlink.task.TaskException

createExecutable

public uk.ac.starlink.task.Executable createExecutable(uk.ac.starlink.task.Environment env)
                                                throws uk.ac.starlink.task.TaskException
Specified by:
createExecutable in interface uk.ac.starlink.task.Task
Throws:
uk.ac.starlink.task.TaskException

getOutputMode

public ProcessingMode getOutputMode()
Returns this task's output mode.

Returns:
output mode

createProducer

public static TableProducer createProducer(uk.ac.starlink.task.Environment env,
                                           FilterParameter filterParam,
                                           InputTableParameter inParam)
                                    throws uk.ac.starlink.task.TaskException
Constructs a table producer given an input parameter and an input filter parameter.

Parameters:
env - execution environment
filterParam - parameter giving filter steps (or null)
inParam - parameter giving input table
Returns:
table producer
Throws:
uk.ac.starlink.task.TaskException


Copyright © 2009 Central Laboratory of the Research Councils. All Rights Reserved.