org.globus.rsl
Class RSLParser

java.lang.Object
  extended byorg.globus.rsl.RSLParser
All Implemented Interfaces:
RSLParserConstants

public class RSLParser
extends Object
implements RSLParserConstants

Parser for the Globus Resource Specification Language RSL v1.0.
Things that are not supported:
(1) User-specified delimiter for quoted literals.
(2) RSLs that only contain relations outside of 'spec-list'.

Other notes:
(1) Implicit concatenation is not part of the 'simple value' relation and is implemented by inspecting the white space between individual values.


Field Summary
 Token jj_nt
           
 Token token
           
 RSLParserTokenManager token_source
           
 
Fields inherited from interface org.globus.rsl.RSLParserConstants
AND, CHARACTER, DEFAULT, DIGIT, DOUBLE_QUOTED_LITERAL, EOF, EQUAL, GREATER_THAN, GREATER_THAN_EQUAL, LESS_THAN, LESS_THAN_EQUAL, LPAREN, MULTI, NOT_EQUAL, OR, OTHER_CHAR, RPAREN, SINGLE_QUOTED_LITERAL, tokenImage, UNQUOTED_LITERAL, VARIABLES, VARIABLES_DQUOTE, VARIABLES_SQUOTE, VARSTART
 
Constructor Summary
RSLParser(InputStream stream)
           
RSLParser(Reader stream)
           
RSLParser(RSLParserTokenManager tm)
           
RSLParser(String rsl)
           
 
Method Summary
 String attribute()
           
 void binding(LinkedList list)
           
 LinkedList bindingSequence()
           
 Value concatSimpleValue()
           
 void concatSimpleValueSub(LinkedList list, LinkedList tokenList)
           
 void disable_tracing()
           
 void enable_tracing()
           
 Value explicitConcat(LinkedList valueList, LinkedList tokenList)
           
 ParseException generateParseException()
           
 Token getNextToken()
           
 Token getToken(int index)
           
static void main(String[] argv)
           
 int op()
           
 AbstractRslNode parse()
           
static AbstractRslNode parse(Class rslNodeClass, String rsl)
           
static RslNode parse(String rsl)
           
 void ReInit(InputStream stream)
           
 void ReInit(Reader stream)
           
 void ReInit(RSLParserTokenManager tm)
           
 void relation(AbstractRslNode node)
           
 void setRslNodeClass(Class rslNodeClass)
           
 Value SimpleValue(LinkedList valueList, LinkedList tokenList)
           
 void specification(AbstractRslNode parentNode)
           
 void specList(AbstractRslNode node)
           
 String stringLiteral()
           
 Token stringToken()
           
 AbstractRslNode subSpecification()
           
 void value(LinkedList list, LinkedList tokenList)
           
 LinkedList valueSequence()
           
 Value variableReference(LinkedList valueList, LinkedList tokenList)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

token_source

public RSLParserTokenManager token_source

token

public Token token

jj_nt

public Token jj_nt
Constructor Detail

RSLParser

public RSLParser(String rsl)
          throws ParseException

RSLParser

public RSLParser(InputStream stream)

RSLParser

public RSLParser(Reader stream)

RSLParser

public RSLParser(RSLParserTokenManager tm)
Method Detail

main

public static void main(String[] argv)
                 throws ParseException
Throws:
ParseException

parse

public static RslNode parse(String rsl)
                     throws ParseException
Throws:
ParseException

parse

public static AbstractRslNode parse(Class rslNodeClass,
                                    String rsl)
                             throws ParseException
Throws:
ParseException

setRslNodeClass

public void setRslNodeClass(Class rslNodeClass)

parse

public final AbstractRslNode parse()
                            throws ParseException
Throws:
ParseException

specification

public final void specification(AbstractRslNode parentNode)
                         throws ParseException
Throws:
ParseException

subSpecification

public final AbstractRslNode subSpecification()
                                       throws ParseException
Throws:
ParseException

relation

public final void relation(AbstractRslNode node)
                    throws ParseException
Throws:
ParseException

specList

public final void specList(AbstractRslNode node)
                    throws ParseException
Throws:
ParseException

op

public final int op()
             throws ParseException
Throws:
ParseException

attribute

public final String attribute()
                       throws ParseException
Throws:
ParseException

valueSequence

public final LinkedList valueSequence()
                               throws ParseException
Throws:
ParseException

bindingSequence

public final LinkedList bindingSequence()
                                 throws ParseException
Throws:
ParseException

binding

public final void binding(LinkedList list)
                   throws ParseException
Throws:
ParseException

value

public final void value(LinkedList list,
                        LinkedList tokenList)
                 throws ParseException
Throws:
ParseException

SimpleValue

public final Value SimpleValue(LinkedList valueList,
                               LinkedList tokenList)
                        throws ParseException
Throws:
ParseException

variableReference

public final Value variableReference(LinkedList valueList,
                                     LinkedList tokenList)
                              throws ParseException
Throws:
ParseException

explicitConcat

public final Value explicitConcat(LinkedList valueList,
                                  LinkedList tokenList)
                           throws ParseException
Throws:
ParseException

stringToken

public final Token stringToken()
                        throws ParseException
Throws:
ParseException

stringLiteral

public final String stringLiteral()
                           throws ParseException
Throws:
ParseException

concatSimpleValue

public final Value concatSimpleValue()
                              throws ParseException
Throws:
ParseException

concatSimpleValueSub

public final void concatSimpleValueSub(LinkedList list,
                                       LinkedList tokenList)
                                throws ParseException
Throws:
ParseException

ReInit

public void ReInit(InputStream stream)

ReInit

public void ReInit(Reader stream)

ReInit

public void ReInit(RSLParserTokenManager tm)

getNextToken

public final Token getNextToken()

getToken

public final Token getToken(int index)

generateParseException

public final ParseException generateParseException()

enable_tracing

public final void enable_tracing()

disable_tracing

public final void disable_tracing()