Package org.globus.rsl

# Class VarRef

java.lang.Object
org.globus.rsl.Value
org.globus.rsl.VarRef

public class VarRef extends Value
This class represents a variable reference in the RSL string. The reference can be concatinated by other values.

## Field Summary

Fields
Modifier and Type
Field
Description
`protected Value`
`defValue`

### Fields inherited from class org.globus.rsl.Value

`concatValue, value`

## Constructor Summary

Constructors
Constructor
Description
`VarRef(String varReference)`
`VarRef(String varReference, Value defValue)`
`VarRef(String varReference, Value defValue, Value concatVal)`

## Method Summary

Modifier and Type
Method
Description
`boolean`
`equals(Object obj)`
`String`
`evaluate(Map symbolTable)`
Evaluates the variable reference with the specified symbol table.
`String`
`getCompleteValue()`
Returns a complete string representation of this value.
`int`
`hashCode()`
`void`
`setDefaultValue(Value value)`
Sets the default value of this reference.
`void`
`toRSL(StringBuffer buf, boolean explicitConcat)`
Produces a RSL representation of this variable reference.
`String`
`toString()`

### Methods inherited from class org.globus.rsl.Value

`concat, getConcat, getValue, setValue, toRSL`

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

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

## Field Details

### defValue

protected Value defValue

## Constructor Details

### VarRef

public VarRef(String varReference)

### VarRef

public VarRef(String varReference, Value defValue)

### VarRef

public VarRef(String varReference, Value defValue, Value concatVal)

## Method Details

### equals

public boolean equals(Object obj)

Overrides:
  `equals` in class `Value`

### hashCode

public int hashCode()

Overrides:
  `hashCode` in class `Value`

### setDefaultValue

public void setDefaultValue(Value value)
Sets the default value of this reference.

Parameters:
  `value` - the default value.

### evaluate

public String evaluate(Map symbolTable) throws RslEvaluationException
Evaluates the variable reference with the specified symbol table. The value of the reference is first looked up in the symbol table. If not found, then the default value is used. If the default value is not specified, the reference is evaluated to an empty string.

Overrides:
  `evaluate` in class `Value`
Parameters:
  `symbolTable` - the symbol table to evaluate the variabled reference against.
Returns:
  an evaluated string.
Throws:
  `RslEvaluationException` - If an error occured during rsl evaluation.

### toRSL

public void toRSL(StringBuffer buf, boolean explicitConcat)
Produces a RSL representation of this variable reference.

Overrides:
  `toRSL` in class `Value`
Parameters:
  `buf` - buffer to add the RSL representation to.
  `explicitConcat` - if true explicit concatination will be used in RSL strings.

### getCompleteValue

public String getCompleteValue()
Returns a complete string representation of this value.

Overrides:
  `getCompleteValue` in class `Value`
Returns:
  a complete string representation of this value.

### toString

public String toString()

Overrides:
  `toString` in class `Value`