Class MultiOutputTask

  • All Implemented Interfaces:
    uk.ac.starlink.task.Task
    Direct Known Subclasses:
    TableMultiCopy

    public abstract class MultiOutputTask
    extends java.lang.Object
    implements uk.ac.starlink.task.Task
    Task which writes multiple tables to a single output file. Concrete subclasses must implement the createTableSequence(uk.ac.starlink.task.Environment) method.
    Since:
    6 Jul 2010
    Author:
    Mark Taylor
    • Constructor Summary

      Constructors 
      Modifier Constructor Description
      protected MultiOutputTask​(java.lang.String purpose)
      Constructor.
    • Method Summary

      All Methods Static Methods Instance Methods Abstract Methods Concrete Methods 
      Modifier and Type Method Description
      uk.ac.starlink.task.Executable createExecutable​(uk.ac.starlink.task.Environment env)  
      protected abstract uk.ac.starlink.table.TableSequence createTableSequence​(uk.ac.starlink.task.Environment env)
      Interrogates the environment to produce a sequence of tables which will be written as the output of this task.
      static uk.ac.starlink.table.TableSequence createTableSequence​(InputTableSpec[] inSpecs)
      Constructs a table sequence based on an array of input table specifications.
      protected java.util.List<uk.ac.starlink.task.Parameter<?>> getParameterList()
      Returns the parameter list for this task; it may be modified.
      uk.ac.starlink.task.Parameter<?>[] getParameters()  
      java.lang.String getPurpose()  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • MultiOutputTask

        protected MultiOutputTask​(java.lang.String purpose)
        Constructor.
        Parameters:
        purpose - task purpose
    • 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
      • createTableSequence

        protected abstract uk.ac.starlink.table.TableSequence createTableSequence​(uk.ac.starlink.task.Environment env)
                                                                           throws uk.ac.starlink.task.TaskException
        Interrogates the environment to produce a sequence of tables which will be written as the output of this task.
        Parameters:
        env - execution environment
        Returns:
        sequence of tables to write
        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
      • createTableSequence

        public static uk.ac.starlink.table.TableSequence createTableSequence​(InputTableSpec[] inSpecs)
                                                                      throws uk.ac.starlink.task.TaskException
        Constructs a table sequence based on an array of input table specifications.
        Parameters:
        inSpecs - array of input tables
        Throws:
        uk.ac.starlink.task.TaskException