org.globus.rsl
Class Bindings

java.lang.Object
  extended by org.globus.rsl.NameValue
      extended by org.globus.rsl.Bindings

public class Bindings
extends NameValue

This class represnts a variable definitions in the RSL string (see rsl_substitution attribute)


Field Summary
 
Fields inherited from class org.globus.rsl.NameValue
attribute, values
 
Constructor Summary
Bindings(java.lang.String attribute)
           
 
Method Summary
 void add(Binding binding)
          Adds a new variable definition to the list.
 Bindings evaluate(java.util.Map symbolTable)
          Evaluates the variable definitions as variable definitions can reference each other against the symbol table.
 boolean removeVariable(java.lang.String varName)
          Removes a specific variable definition from the list of bindings.
 void toRSL(java.lang.StringBuffer buf, boolean explicitConcat)
          Produces a RSL representation of this relation.
 
Methods inherited from class org.globus.rsl.NameValue
clear, getAttribute, getFirstValue, getValues, merge, remove, setAttribute, setValues, toRSL, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

Bindings

public Bindings(java.lang.String attribute)
Method Detail

add

public void add(Binding binding)
Adds a new variable definition to the list.

Parameters:
binding - a new variable definition.

removeVariable

public boolean removeVariable(java.lang.String varName)
Removes a specific variable definition from the list of bindings. The variable name must match exactly to be removed (it is case sensitive).

Parameters:
varName - variable name to remove the definition of.
Returns:
true if the variable was successfully removed. False, otherwise.

evaluate

public Bindings evaluate(java.util.Map symbolTable)
                  throws RslEvaluationException
Evaluates the variable definitions as variable definitions can reference each other against the symbol table. The evaluation process updates the symbol table.

Parameters:
symbolTable - the symbol table to evalute the variables against.
Returns:
a new evaluted variable definition.
Throws:
RslEvaluationException - If an error occured during rsl evaluation.

toRSL

public void toRSL(java.lang.StringBuffer buf,
                  boolean explicitConcat)
Produces a RSL representation of this relation.

Specified by:
toRSL in class NameValue
Parameters:
buf - buffer to add the RSL representation to.
explicitConcat - if true explicit concatination will be used in RSL strings.


Copyright © 2013. All Rights Reserved.