uk.ac.starlink.task
Interface Environment

All Known Subinterfaces:
TableEnvironment
All Known Implementing Classes:
AddEnvironment, LineEnvironment, LineTableEnvironment, MapEnvironment, ServletEnvironment, TerminalEnvironment

public interface Environment

Defines an execution environment within which tasks can operate. The main job that it does is to be able to provide a String value for a given Parameter object. Every invocation of a Task is expected to have a new Environment.

Author:
Mark Taylor

Method Summary
 void acquireValue(Parameter par)
          Obtains a legal value for a given parameter from the environment and sets the parameter's value accordingly.
 void clearValue(Parameter par)
          Clears a value for a given parameter.
 PrintStream getErrorStream()
          Returns an output stream into which error or logging output from a task can be written.
 String[] getNames()
          Returns an array of parameter names which have been specified.
 PrintStream getOutputStream()
          Returns an output stream into which text output from a task can be written.
 

Method Detail

acquireValue

void acquireValue(Parameter par)
                  throws TaskException
Obtains a legal value for a given parameter from the environment and sets the parameter's value accordingly.

This environment should obtain a value for the parameter par in whatever way it sees fit, and must then call par's Parameter.setValueFromString(uk.ac.starlink.task.Environment, java.lang.String) method so that the parameter knows what its new value is. If the setValueFromString call throws a ParameterValueException the environment may try to get another value (for instance by re-prompting the user) or may give up and re-throw the exception.

Parameters:
par - the Parameter whose value is to be obtained and set
Throws:
TaskException

clearValue

void clearValue(Parameter par)
Clears a value for a given parameter.

Parameters:
par - the Parameter whose value is to be cleared

getNames

String[] getNames()
Returns an array of parameter names which have been specified. The result is not necessarily an exhaustive list of all parameters whose values can be retrieved from this environment, since an interactive environment may be able to prompt the user for values, but it can give a list of values provided explicitly or without interactive prompts.

Returns:
array of names of known supplied parameters

getOutputStream

PrintStream getOutputStream()
Returns an output stream into which text output from a task can be written. This would correspond to standard output for a terminal-based application.

Returns:
a stream for text output

getErrorStream

PrintStream getErrorStream()
Returns an output stream into which error or logging output from a task can be written. This would correspodnd to standard error for a terminal-based application.

Returns:
a stream for error output


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