edu.isi.pegasus.planner.invocation

## Class ArgString

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

All Implemented Interfaces:
  HasText, java.io.Serializable

    public class ArgString
    extends Arguments
    implements HasText

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.lang.StringBuffer` `m_value` This is the data contained between the tags.

### Fields inherited from class edu.isi.pegasus.planner.invocation.Arguments

`m_executable`

### Constructor Summary

Constructors
Constructor and Description
`ArgString()` Default c'tor: Construct a hollow shell and allow further information to be added later.
`ArgString(java.lang.String executable)` Constructs an applications without arguments.
`ArgString(java.lang.String executable, java.lang.String value)` Constructs an applications with arguments.

### Method Summary

All Methods Instance Methods Concrete Methods
`void` `appendValue(java.lang.String fragment)` Appends a piece of text to the existing text.
`java.lang.String` `getValue()` Accessor
`void` `setValue(java.lang.String value)` Accessor.
`java.lang.String` `toXML(java.lang.String indent)` Dumps the state of the current element as XML output.
`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 edu.isi.pegasus.planner.invocation.Arguments

`getExecutable, setExecutable, toString`

### 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_value

    private java.lang.StringBuffer m_value

This is the data contained between the tags. There may be no data.

### Constructor Detail

#### ArgString

    public ArgString()

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

#### ArgString

    public ArgString(java.lang.String executable)

Constructs an applications without arguments.

Parameters:
  `executable` - is the name of the application.

#### ArgString

    public ArgString(java.lang.String executable,
                     java.lang.String value)

Constructs an applications with arguments.

Parameters:
  `executable` - is the name of the application.
  `value` - represents the argument line passed.

### Method Detail

#### appendValue

    public void appendValue(java.lang.String fragment)

Appends a piece of text to the existing text.

Specified by:
  `appendValue` in interface `HasText`
Parameters:
  `fragment` - is a piece of text to append to existing text. Appending `null` is a noop.

#### getValue

    public java.lang.String getValue()

Accessor

Specified by:
  `getValue` in interface `HasText`
Specified by:
  `getValue` in class `Arguments`
Returns:
  string representing arguments, or `null` if there is no such string. The empty string is also possible.
See Also:
  `setValue(String)`

#### setValue

    public void setValue(java.lang.String value)

Accessor.

Specified by:
  `setValue` in interface `HasText`
Parameters:
  `value` - is the new value to set.
See Also:
  `getValue()`

#### toXML

    public java.lang.String toXML(java.lang.String indent)

Dumps the state of the current element as XML output. This function can return the necessary data more efficiently, thus overwriting the inherited method.

Parameters:
  `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.
Returns:
  a String which contains the state of the current class and its siblings using XML. Note that these strings might become large.

#### 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`