edu.isi.pegasus.planner.invocation

## Class Environment

- java.lang.Object
- - org.griphyn.vdl.Chimera
  - - edu.isi.pegasus.planner.invocation.Invocation
    - - edu.isi.pegasus.planner.invocation.Environment

All Implemented Interfaces:
  java.io.Serializable

    public class Environment
    extends Invocation

This class maintains the application that was run, and the arguments to the commandline that were actually passed on to the application.

Version:
  $Revision$
Author:
  Jens-S. Vöckler, Yong Zhao
See Also:
  `Job`, Serialized Form

### Field Summary

Fields
`private java.util.Map` `m_environment` Mappings of keys to values

### Constructor Summary

Constructors
Constructor and Description
`Environment()` Default c'tor: Construct a hollow shell and allow further information to be added later.

### Method Summary

All Methods Instance Methods Concrete Methods
`java.lang.String` `addEntry(EnvEntry entry)` Adds an environment entry, effectively a key value pair, to the current environment settings.
`java.lang.String` `addEntry(java.lang.String key, java.lang.String value)` Adds an environment entry, effectively a key value pair, to the current environment settings.
`java.lang.String` `get(java.lang.String key)` Retrieves the value for a given key
`java.util.Iterator` `iterator()` Creates a sorted iterator
`void` `toString(java.io.Writer stream)` Converts the active state into something meant for human consumption.
`void` `toXML(java.io.Writer stream, java.lang.String indent, java.lang.String namespace)` Dump the state of the current element as XML output.

### Methods inherited from class org.griphyn.vdl.Chimera

`escape, quote, toString, toXML, toXML, writeAttribute`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

### Field Detail

#### m_environment

    private java.util.Map m_environment

Mappings of keys to values

### Constructor Detail

#### Environment

    public Environment()

Default c'tor: Construct a hollow shell and allow further information to be added later.

### Method Detail

#### addEntry

    public java.lang.String addEntry(EnvEntry entry)

Adds an environment entry, effectively a key value pair, to the current environment settings.

Parameters:
  `entry` - is the environment entry to add
Returns:
  the old entry including `null`.
See Also:
  `addEntry( String, String )`

#### addEntry

    public java.lang.String addEntry(java.lang.String key,
                                     java.lang.String value)

Adds an environment entry, effectively a key value pair, to the current environment settings.

Parameters:
  `key` - is the identifier for the environment setting.
  `value` - is the value associated with the key.
Returns:
  the old entry including `null`.
See Also:
  `addEntry( EnvEntry )`

#### get

    public java.lang.String get(java.lang.String key)

Retrieves the value for a given key

Parameters:
  `key` - is the identifier in the map to retrieve the key for
Returns:
  the value for the given, which may include `null`.

#### iterator

    public java.util.Iterator iterator()

Creates a sorted iterator

Returns:
  an iterator over sorted keys

#### toString

    public void toString(java.io.Writer stream)
                  throws java.io.IOException

Converts the active state into something meant for human consumption. The method will be called when recursively traversing the instance tree.

Specified by:
  `toString` in class `org.griphyn.vdl.Chimera`
Parameters:
  `stream` - is a stream opened and ready for writing. This can also be a string stream for efficient output.
Throws:
  `java.io.IOException` - if something fishy happens to the stream.

#### toXML

    public void toXML(java.io.Writer stream,
                      java.lang.String indent,
                      java.lang.String namespace)
               throws java.io.IOException

Dump the state of the current element as XML output. This function traverses all sibling classes as necessary, and converts the data into pretty-printed XML output. The stream interface should be able to handle large output efficiently.

Specified by:
  `toXML` in class `org.griphyn.vdl.Chimera`
Parameters:
  `stream` - is a stream opened and ready for writing. This can also be a string stream for efficient output.
  `indent` - is a `String` of spaces used for pretty printing. The initial amount of spaces should be an empty string. The parameter is used internally for the recursive traversal. If a `null` value is specified, no indentation nor linefeeds will be generated.
  `namespace` - is the XML schema namespace prefix. If neither empty nor null, each element will be prefixed with this prefix, and the root element will map the XML namespace.
Throws:
  `java.io.IOException` - if something fishy happens to the stream.
See Also:
  `BufferedWriter`