Class ConsumerTask

  • All Implemented Interfaces:
    uk.ac.starlink.task.Task
    Direct Known Subclasses:
    MapperTask, RegQuery, SingleMapperTask, TableCone, TableLoop, TapResume

    public abstract class ConsumerTask
    extends java.lang.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 Detail

      • ConsumerTask

        public ConsumerTask​(java.lang.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 java.lang.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 java.util.List<uk.ac.starlink.task.Parameter<?>> getParameterList()
        Returns the parameter list for this task; it may be modified.
        Returns:
        parameter list
      • createProducer

        public 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. Tables which are generated by equal input parameters will evaluate as equal in the sense of Object.equals().
        Parameters:
        env - execution environment
        filterParam - parameter giving filter steps (or null)
        inParam - parameter giving input table
        Returns:
        table producer, or null if the table input parameter has a (permitted) blank value
        Throws:
        uk.ac.starlink.task.TaskException