org.makumba.providers.datadefinition.mdd
Class MDDAnalyzeWalker
java.lang.Object
antlr.TreeParser
org.makumba.providers.datadefinition.mdd.MDDAnalyzeBaseWalker
org.makumba.providers.datadefinition.mdd.MDDAnalyzeWalker
- All Implemented Interfaces:
- MDDAnalyzeBaseWalkerTokenTypes
public class MDDAnalyzeWalker
- extends MDDAnalyzeBaseWalker
MDD analysis walker, collects useful information for creation of DataDefinition
and FieldDefinition
- Version:
- $Id: MDDAnalyzeWalker.java,v 1.1 May 2, 2009 10:56:49 PM manu Exp $
- Author:
- Manuel Gay
Fields inherited from class antlr.TreeParser |
_retTree, astFactory, ASTNULL, inputState, returnAST, tokenNames, traceDepth |
Fields inherited from interface org.makumba.providers.datadefinition.mdd.MDDAnalyzeBaseWalkerTokenTypes |
BINARY, BOOLEAN, CHAR, CHAR_LENGTH, CHARENUM, CHARENUMELEMENT, COLON, COMMA, COMPARE, COMPARE_EXPRESSION, DATE, DEPRECATED, DOT, EOF, EQ, ESC, EXMARK, FIELD, FIELDCOMMENT, FIELDNAME, FIELDTYPE, FILE, FIXED, FUNCTION, FUNCTION_ARGUMENT, FUNCTION_ARGUMENT_NAME, FUNCTION_BODY, FUNCTION_NAME, GE, GT, HEX_DIGIT, ID_LETTER, ID_START_LETTER, IDENT, INCLUDE, INCLUDED, INT, INTENUM, INTENUMINDEX, INTENUMTEXT, INTMARK, LE, LEFT_CUBR, LEFT_PAREN, LEFT_SQBR, LENGTH, LIKE, LINEBREAK, LITERAL_empty, LITERAL_not, LITERAL_notNull, LITERAL_null, LOWER, LT, MATCHES, MESSAGE, MINUS, MODIFIER, NAN, NATIVE_MESSAGE, NE, NEGATIVE_INTEGER, NOTBOOLEAN, NOTEMPTY, NOTINT, NOTNULL, NOTREAL, NOW, NULL_TREE_LOOKAHEAD, NUM_DOUBLE, NUM_FLOAT, NUM_LONG, NUMBER, PARENTFIELDNAME, PATH, PERCENT, PLUS, POINTED_TYPE, POSITIVE_INTEGER, PTR, PTRONE, QUOTMARK, RANGE, RANGE_FROM, RANGE_TO, REAL, RIGHT_CUBR, RIGHT_PAREN, RIGHT_SQBR, SEMICOLON, SESSIONVAR_NAME, SET, SETCHARENUM, SETCOMPLEX, SETINTENUM, SL_COMMENT, SQL_NE, STRING_LITERAL, SUBFIELD, SUBFIELDNAME, SUBFIELDTYPE, TEXT, TITLE, TITLEFIELD, TITLEFIELDFIELD, TITLEFIELDFUNCTION, TODAY, TRIPLE_DOT, TYPE, TYPEDEF, TYPENAME, UNIQUE, UNKNOWN_TYPE, UPPER, VALIDATION, VALIDATIONNAME, WHITESPACE |
Method Summary |
protected void |
addField(MDDNode mdd,
FieldNode field)
|
protected void |
addFunction(MDDNode mdd,
FunctionNode function,
antlr.collections.AST originalFunctionDeclaration,
FieldNode subField)
|
protected void |
addModifier(FieldNode field,
String modifier)
|
protected void |
addNativeValidationRuleMessage(antlr.collections.AST fieldName,
antlr.collections.AST errorType,
String message)
|
protected void |
addSubfield(FieldNode parent,
FieldNode field)
|
protected void |
addTypeShorthand(antlr.collections.AST name,
FieldNode fieldType)
|
protected void |
addValidationRuleArgument(String name,
ValidationRuleNode n)
|
protected void |
checkFieldType(antlr.collections.AST type,
FieldNode field)
|
protected void |
checkRuleApplicability(ValidationRuleNode validation)
|
protected void |
checkSubFieldName(String parentName,
antlr.collections.AST name)
|
protected void |
checkSubFieldType(antlr.collections.AST type,
FieldNode field)
|
protected ValidationRuleNode |
createMultiFieldValidationRule(antlr.collections.AST originAST,
ValidationType type,
FieldNode subField)
|
protected ValidationRuleNode |
createSingleFieldValidationRule(antlr.collections.AST originAST,
String fieldName,
ValidationType type,
FieldNode subField)
|
protected FieldNode |
getParentField(antlr.collections.AST parentField)
|
Methods inherited from class org.makumba.providers.datadefinition.mdd.MDDAnalyzeBaseWalker |
charEnumBody, comparisonValidationRule, dataDefinition, declaration, errorType, fieldDeclaration, fieldType, functionArgumentDeclaration, functionCall, functionDeclaration, intEnumBody, lengthValidationRule, multiUniquenessValidationRule, nativeValidationRuleMessage, rangeValidationRule, regexValidationRule, reportError, reportError, subField, subFieldDeclaration, titleDeclaration, typeDeclaration, validationRuleDeclaration |
Methods inherited from class antlr.TreeParser |
getAST, getASTFactory, getTokenName, getTokenNames, match, match, matchNot, panic, reportWarning, setASTFactory, setASTNodeClass, setASTNodeType, traceIn, traceIndent, traceOut |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
typeShorthands
protected HashMap<String,FieldNode> typeShorthands
MDDAnalyzeWalker
public MDDAnalyzeWalker(String typeName,
URL origin,
MDDFactory factory,
MDDParser parser,
boolean strictTypeCheck)
checkFieldType
protected void checkFieldType(antlr.collections.AST type,
FieldNode field)
- Overrides:
checkFieldType
in class MDDAnalyzeBaseWalker
checkSubFieldType
protected void checkSubFieldType(antlr.collections.AST type,
FieldNode field)
- Overrides:
checkSubFieldType
in class MDDAnalyzeBaseWalker
checkSubFieldName
protected void checkSubFieldName(String parentName,
antlr.collections.AST name)
- Overrides:
checkSubFieldName
in class MDDAnalyzeBaseWalker
getParentField
protected FieldNode getParentField(antlr.collections.AST parentField)
- Overrides:
getParentField
in class MDDAnalyzeBaseWalker
addTypeShorthand
protected void addTypeShorthand(antlr.collections.AST name,
FieldNode fieldType)
- Overrides:
addTypeShorthand
in class MDDAnalyzeBaseWalker
addModifier
protected void addModifier(FieldNode field,
String modifier)
- Overrides:
addModifier
in class MDDAnalyzeBaseWalker
addField
protected void addField(MDDNode mdd,
FieldNode field)
- Overrides:
addField
in class MDDAnalyzeBaseWalker
addSubfield
protected void addSubfield(FieldNode parent,
FieldNode field)
- Overrides:
addSubfield
in class MDDAnalyzeBaseWalker
addFunction
protected void addFunction(MDDNode mdd,
FunctionNode function,
antlr.collections.AST originalFunctionDeclaration,
FieldNode subField)
- Overrides:
addFunction
in class MDDAnalyzeBaseWalker
createMultiFieldValidationRule
protected ValidationRuleNode createMultiFieldValidationRule(antlr.collections.AST originAST,
ValidationType type,
FieldNode subField)
- Overrides:
createMultiFieldValidationRule
in class MDDAnalyzeBaseWalker
createSingleFieldValidationRule
protected ValidationRuleNode createSingleFieldValidationRule(antlr.collections.AST originAST,
String fieldName,
ValidationType type,
FieldNode subField)
- Overrides:
createSingleFieldValidationRule
in class MDDAnalyzeBaseWalker
addValidationRuleArgument
protected void addValidationRuleArgument(String name,
ValidationRuleNode n)
- Overrides:
addValidationRuleArgument
in class MDDAnalyzeBaseWalker
checkRuleApplicability
protected void checkRuleApplicability(ValidationRuleNode validation)
- Overrides:
checkRuleApplicability
in class MDDAnalyzeBaseWalker
addNativeValidationRuleMessage
protected void addNativeValidationRuleMessage(antlr.collections.AST fieldName,
antlr.collections.AST errorType,
String message)
- Overrides:
addNativeValidationRuleMessage
in class MDDAnalyzeBaseWalker