Package org.globus.rsl
Class RSLParser
- java.lang.Object
-
- org.globus.rsl.RSLParser
-
- All Implemented Interfaces:
RSLParserConstants
public class RSLParser extends java.lang.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
Fields Modifier and Type Field Description private java.util.Vector
jj_expentries
private int[]
jj_expentry
private int
jj_gen
(package private) ASCII_CharStream
jj_input_stream
private int
jj_kind
private int[]
jj_la1
private int[]
jj_la1_0
Token
jj_nt
private int
jj_ntk
private java.lang.Class
nodeClass
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
Constructors Constructor Description RSLParser(java.io.InputStream stream)
RSLParser(java.io.Reader stream)
RSLParser(java.lang.String rsl)
RSLParser(RSLParserTokenManager tm)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.String
attribute()
void
binding(java.util.LinkedList list)
java.util.LinkedList
bindingSequence()
private Value
concat(java.util.LinkedList tokenList)
Value
concatSimpleValue()
void
concatSimpleValueSub(java.util.LinkedList list, java.util.LinkedList tokenList)
void
disable_tracing()
void
enable_tracing()
Value
explicitConcat(java.util.LinkedList valueList, java.util.LinkedList tokenList)
ParseException
generateParseException()
Token
getNextToken()
Token
getToken(int index)
private Token
jj_consume_token(int kind)
private int
jj_ntk()
static void
main(java.lang.String[] argv)
int
op()
AbstractRslNode
parse()
static AbstractRslNode
parse(java.lang.Class rslNodeClass, java.lang.String rsl)
static RslNode
parse(java.lang.String rsl)
void
ReInit(java.io.InputStream stream)
void
ReInit(java.io.Reader stream)
void
ReInit(RSLParserTokenManager tm)
void
relation(AbstractRslNode node)
void
setRslNodeClass(java.lang.Class rslNodeClass)
Value
SimpleValue(java.util.LinkedList valueList, java.util.LinkedList tokenList)
void
specification(AbstractRslNode parentNode)
void
specList(AbstractRslNode node)
java.lang.String
stringLiteral()
Token
stringToken()
AbstractRslNode
subSpecification()
private java.lang.String
unQuotify(java.lang.String str, char quoteChar)
private java.lang.String
unQuotify(Token tok)
private void
updateValueList(Token tok, java.util.LinkedList valueList, java.util.LinkedList tokenList)
void
value(java.util.LinkedList list, java.util.LinkedList tokenList)
java.util.LinkedList
valueSequence()
Value
variableReference(java.util.LinkedList valueList, java.util.LinkedList tokenList)
-
-
-
Field Detail
-
nodeClass
private java.lang.Class nodeClass
-
token_source
public RSLParserTokenManager token_source
-
jj_input_stream
ASCII_CharStream jj_input_stream
-
token
public Token token
-
jj_nt
public Token jj_nt
-
jj_ntk
private int jj_ntk
-
jj_gen
private int jj_gen
-
jj_la1
private final int[] jj_la1
-
jj_la1_0
private final int[] jj_la1_0
-
jj_expentries
private java.util.Vector jj_expentries
-
jj_expentry
private int[] jj_expentry
-
jj_kind
private int jj_kind
-
-
Constructor Detail
-
RSLParser
public RSLParser(java.lang.String rsl) throws ParseException
- Throws:
ParseException
-
RSLParser
public RSLParser(java.io.InputStream stream)
-
RSLParser
public RSLParser(java.io.Reader stream)
-
RSLParser
public RSLParser(RSLParserTokenManager tm)
-
-
Method Detail
-
main
public static void main(java.lang.String[] argv) throws ParseException
- Throws:
ParseException
-
parse
public static RslNode parse(java.lang.String rsl) throws ParseException
- Throws:
ParseException
-
parse
public static AbstractRslNode parse(java.lang.Class rslNodeClass, java.lang.String rsl) throws ParseException
- Throws:
ParseException
-
setRslNodeClass
public void setRslNodeClass(java.lang.Class rslNodeClass)
-
unQuotify
private java.lang.String unQuotify(java.lang.String str, char quoteChar)
-
concat
private Value concat(java.util.LinkedList tokenList)
-
updateValueList
private void updateValueList(Token tok, java.util.LinkedList valueList, java.util.LinkedList tokenList)
-
unQuotify
private java.lang.String unQuotify(Token tok)
-
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 java.lang.String attribute() throws ParseException
- Throws:
ParseException
-
valueSequence
public final java.util.LinkedList valueSequence() throws ParseException
- Throws:
ParseException
-
bindingSequence
public final java.util.LinkedList bindingSequence() throws ParseException
- Throws:
ParseException
-
binding
public final void binding(java.util.LinkedList list) throws ParseException
- Throws:
ParseException
-
value
public final void value(java.util.LinkedList list, java.util.LinkedList tokenList) throws ParseException
- Throws:
ParseException
-
SimpleValue
public final Value SimpleValue(java.util.LinkedList valueList, java.util.LinkedList tokenList) throws ParseException
- Throws:
ParseException
-
variableReference
public final Value variableReference(java.util.LinkedList valueList, java.util.LinkedList tokenList) throws ParseException
- Throws:
ParseException
-
explicitConcat
public final Value explicitConcat(java.util.LinkedList valueList, java.util.LinkedList tokenList) throws ParseException
- Throws:
ParseException
-
stringToken
public final Token stringToken() throws ParseException
- Throws:
ParseException
-
stringLiteral
public final java.lang.String stringLiteral() throws ParseException
- Throws:
ParseException
-
concatSimpleValue
public final Value concatSimpleValue() throws ParseException
- Throws:
ParseException
-
concatSimpleValueSub
public final void concatSimpleValueSub(java.util.LinkedList list, java.util.LinkedList tokenList) throws ParseException
- Throws:
ParseException
-
ReInit
public void ReInit(java.io.InputStream stream)
-
ReInit
public void ReInit(java.io.Reader stream)
-
ReInit
public void ReInit(RSLParserTokenManager tm)
-
jj_consume_token
private final Token jj_consume_token(int kind) throws ParseException
- Throws:
ParseException
-
getNextToken
public final Token getNextToken()
-
getToken
public final Token getToken(int index)
-
jj_ntk
private final int jj_ntk()
-
generateParseException
public final ParseException generateParseException()
-
enable_tracing
public final void enable_tracing()
-
disable_tracing
public final void disable_tracing()
-
-