Committed by
Gerrit Code Review
[ONOS-3880, 3881] Change to static import for lesser indentation.
Change-Id: I93a39f9b0ccd019ace5900bf8ba68f7d60f228a0
Showing
17 changed files
with
304 additions
and
395 deletions
... | @@ -19,14 +19,17 @@ package org.onosproject.yangutils.parser.impl.listeners; | ... | @@ -19,14 +19,17 @@ package org.onosproject.yangutils.parser.impl.listeners; |
19 | import org.onosproject.yangutils.datamodel.YangModule; | 19 | import org.onosproject.yangutils.datamodel.YangModule; |
20 | import org.onosproject.yangutils.datamodel.YangNode; | 20 | import org.onosproject.yangutils.datamodel.YangNode; |
21 | import org.onosproject.yangutils.datamodel.YangSubModule; | 21 | import org.onosproject.yangutils.datamodel.YangSubModule; |
22 | -import org.onosproject.yangutils.parser.ParsableDataType; | ||
23 | import org.onosproject.yangutils.parser.antlrgencode.GeneratedYangParser; | 22 | import org.onosproject.yangutils.parser.antlrgencode.GeneratedYangParser; |
24 | import org.onosproject.yangutils.parser.exceptions.ParserException; | 23 | import org.onosproject.yangutils.parser.exceptions.ParserException; |
25 | import org.onosproject.yangutils.parser.impl.TreeWalkListener; | 24 | import org.onosproject.yangutils.parser.impl.TreeWalkListener; |
26 | -import org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorLocation; | 25 | + |
27 | -import org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorMessageConstruction; | 26 | +import static org.onosproject.yangutils.parser.ParsableDataType.YANGBASE_DATA; |
28 | -import org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorType; | 27 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorLocation.ENTRY; |
29 | -import org.onosproject.yangutils.parser.impl.parserutils.ListenerValidation; | 28 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorLocation.EXIT; |
29 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorMessageConstruction.constructListenerErrorMessage; | ||
30 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorType.*; | ||
31 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerValidation.checkStackIsEmpty; | ||
32 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerValidation.checkStackIsNotEmpty; | ||
30 | 33 | ||
31 | /* | 34 | /* |
32 | * Reference: RFC6020 and YANG ANTLR Grammar | 35 | * Reference: RFC6020 and YANG ANTLR Grammar |
... | @@ -49,9 +52,8 @@ public final class BaseFileListener { | ... | @@ -49,9 +52,8 @@ public final class BaseFileListener { |
49 | } | 52 | } |
50 | 53 | ||
51 | /** | 54 | /** |
52 | - * It is called when parser receives an input matching the grammar | 55 | + * It is called when parser receives an input matching the grammar rule |
53 | - * rule (yangfile), perform validations and update the data model | 56 | + * (yangfile), perform validations and update the data model tree. |
54 | - * tree. | ||
55 | * | 57 | * |
56 | * @param listener Listener's object. | 58 | * @param listener Listener's object. |
57 | * @param ctx context object of the grammar rule. | 59 | * @param ctx context object of the grammar rule. |
... | @@ -59,8 +61,7 @@ public final class BaseFileListener { | ... | @@ -59,8 +61,7 @@ public final class BaseFileListener { |
59 | public static void processYangFileEntry(TreeWalkListener listener, GeneratedYangParser.YangfileContext ctx) { | 61 | public static void processYangFileEntry(TreeWalkListener listener, GeneratedYangParser.YangfileContext ctx) { |
60 | 62 | ||
61 | // Check if stack is empty. | 63 | // Check if stack is empty. |
62 | - ListenerValidation.checkStackIsEmpty(listener, ListenerErrorType.INVALID_HOLDER, | 64 | + checkStackIsEmpty(listener, INVALID_HOLDER, YANGBASE_DATA, "", ENTRY); |
63 | - ParsableDataType.YANGBASE_DATA, "", ListenerErrorLocation.ENTRY); | ||
64 | 65 | ||
65 | } | 66 | } |
66 | 67 | ||
... | @@ -74,23 +75,17 @@ public final class BaseFileListener { | ... | @@ -74,23 +75,17 @@ public final class BaseFileListener { |
74 | public static void processYangFileExit(TreeWalkListener listener, GeneratedYangParser.YangfileContext ctx) { | 75 | public static void processYangFileExit(TreeWalkListener listener, GeneratedYangParser.YangfileContext ctx) { |
75 | 76 | ||
76 | // Check for stack to be non empty. | 77 | // Check for stack to be non empty. |
77 | - ListenerValidation.checkStackIsNotEmpty(listener, ListenerErrorType.MISSING_HOLDER, | 78 | + checkStackIsNotEmpty(listener, MISSING_HOLDER, YANGBASE_DATA, "", EXIT); |
78 | - ParsableDataType.YANGBASE_DATA, "", ListenerErrorLocation.EXIT); | ||
79 | 79 | ||
80 | // Data Model tree root node is set. | 80 | // Data Model tree root node is set. |
81 | if (listener.getParsedDataStack().peek() instanceof YangModule | 81 | if (listener.getParsedDataStack().peek() instanceof YangModule |
82 | - | listener.getParsedDataStack().peek() instanceof YangSubModule) { | 82 | + || listener.getParsedDataStack().peek() instanceof YangSubModule) { |
83 | listener.setRootNode((YangNode) listener.getParsedDataStack().pop()); | 83 | listener.setRootNode((YangNode) listener.getParsedDataStack().pop()); |
84 | } else { | 84 | } else { |
85 | - throw new ParserException( | 85 | + throw new ParserException(constructListenerErrorMessage(INVALID_CHILD, YANGBASE_DATA, "", EXIT)); |
86 | - ListenerErrorMessageConstruction | ||
87 | - .constructListenerErrorMessage(ListenerErrorType.INVALID_CHILD, | ||
88 | - ParsableDataType.YANGBASE_DATA, "", | ||
89 | - ListenerErrorLocation.EXIT)); | ||
90 | } | 86 | } |
91 | 87 | ||
92 | // Check if stack is empty. | 88 | // Check if stack is empty. |
93 | - ListenerValidation.checkStackIsEmpty(listener, ListenerErrorType.INVALID_HOLDER, | 89 | + checkStackIsEmpty(listener, INVALID_HOLDER, YANGBASE_DATA, "", EXIT); |
94 | - ParsableDataType.YANGBASE_DATA, "", ListenerErrorLocation.EXIT); | ||
95 | } | 90 | } |
96 | -} | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
91 | +} | ... | ... |
utils/yangutils/src/main/java/org/onosproject/yangutils/parser/impl/listeners/BelongsToListener.java
... | @@ -19,14 +19,16 @@ package org.onosproject.yangutils.parser.impl.listeners; | ... | @@ -19,14 +19,16 @@ package org.onosproject.yangutils.parser.impl.listeners; |
19 | import org.onosproject.yangutils.datamodel.YangBelongsTo; | 19 | import org.onosproject.yangutils.datamodel.YangBelongsTo; |
20 | import org.onosproject.yangutils.datamodel.YangSubModule; | 20 | import org.onosproject.yangutils.datamodel.YangSubModule; |
21 | import org.onosproject.yangutils.parser.Parsable; | 21 | import org.onosproject.yangutils.parser.Parsable; |
22 | -import org.onosproject.yangutils.parser.ParsableDataType; | ||
23 | import org.onosproject.yangutils.parser.antlrgencode.GeneratedYangParser; | 22 | import org.onosproject.yangutils.parser.antlrgencode.GeneratedYangParser; |
24 | import org.onosproject.yangutils.parser.exceptions.ParserException; | 23 | import org.onosproject.yangutils.parser.exceptions.ParserException; |
25 | import org.onosproject.yangutils.parser.impl.TreeWalkListener; | 24 | import org.onosproject.yangutils.parser.impl.TreeWalkListener; |
26 | -import org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorLocation; | 25 | + |
27 | -import org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorMessageConstruction; | 26 | +import static org.onosproject.yangutils.parser.ParsableDataType.BELONGS_TO_DATA; |
28 | -import org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorType; | 27 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorLocation.ENTRY; |
29 | -import org.onosproject.yangutils.parser.impl.parserutils.ListenerValidation; | 28 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorLocation.EXIT; |
29 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorMessageConstruction.constructListenerErrorMessage; | ||
30 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorType.*; | ||
31 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerValidation.checkStackIsNotEmpty; | ||
30 | 32 | ||
31 | /* | 33 | /* |
32 | * Reference: RFC6020 and YANG ANTLR Grammar | 34 | * Reference: RFC6020 and YANG ANTLR Grammar |
... | @@ -52,8 +54,9 @@ import org.onosproject.yangutils.parser.impl.parserutils.ListenerValidation; | ... | @@ -52,8 +54,9 @@ import org.onosproject.yangutils.parser.impl.parserutils.ListenerValidation; |
52 | */ | 54 | */ |
53 | 55 | ||
54 | /** | 56 | /** |
55 | - * Implements listener based call back function corresponding to the "belongs to" | 57 | + * Implements listener based call back function corresponding to the |
56 | - * rule defined in ANTLR grammar file for corresponding ABNF rule in RFC 6020. | 58 | + * "belongs to" rule defined in ANTLR grammar file for corresponding ABNF rule |
59 | + * in RFC 6020. | ||
57 | */ | 60 | */ |
58 | public final class BelongsToListener { | 61 | public final class BelongsToListener { |
59 | 62 | ||
... | @@ -64,9 +67,8 @@ public final class BelongsToListener { | ... | @@ -64,9 +67,8 @@ public final class BelongsToListener { |
64 | } | 67 | } |
65 | 68 | ||
66 | /** | 69 | /** |
67 | - * It is called when parser receives an input matching the grammar | 70 | + * It is called when parser receives an input matching the grammar rule |
68 | - * rule (belongsto), perform validations and update the data model | 71 | + * (belongsto), perform validations and update the data model tree. |
69 | - * tree. | ||
70 | * | 72 | * |
71 | * @param listener Listener's object. | 73 | * @param listener Listener's object. |
72 | * @param ctx context object of the grammar rule. | 74 | * @param ctx context object of the grammar rule. |
... | @@ -75,10 +77,8 @@ public final class BelongsToListener { | ... | @@ -75,10 +77,8 @@ public final class BelongsToListener { |
75 | GeneratedYangParser.BelongstoStatementContext ctx) { | 77 | GeneratedYangParser.BelongstoStatementContext ctx) { |
76 | 78 | ||
77 | // Check for stack to be non empty. | 79 | // Check for stack to be non empty. |
78 | - ListenerValidation.checkStackIsNotEmpty(listener, ListenerErrorType.MISSING_HOLDER, | 80 | + checkStackIsNotEmpty(listener, MISSING_HOLDER, BELONGS_TO_DATA, String.valueOf(ctx.IDENTIFIER().getText()), |
79 | - ParsableDataType.BELONGS_TO_DATA, | 81 | + ENTRY); |
80 | - String.valueOf(ctx.IDENTIFIER().getText()), | ||
81 | - ListenerErrorLocation.ENTRY); | ||
82 | 82 | ||
83 | YangBelongsTo belongstoNode = new YangBelongsTo(); | 83 | YangBelongsTo belongstoNode = new YangBelongsTo(); |
84 | belongstoNode.setBelongsToModuleName(String.valueOf(ctx.IDENTIFIER().getText())); | 84 | belongstoNode.setBelongsToModuleName(String.valueOf(ctx.IDENTIFIER().getText())); |
... | @@ -98,20 +98,16 @@ public final class BelongsToListener { | ... | @@ -98,20 +98,16 @@ public final class BelongsToListener { |
98 | GeneratedYangParser.BelongstoStatementContext ctx) { | 98 | GeneratedYangParser.BelongstoStatementContext ctx) { |
99 | 99 | ||
100 | // Check for stack to be non empty. | 100 | // Check for stack to be non empty. |
101 | - ListenerValidation.checkStackIsNotEmpty(listener, ListenerErrorType.MISSING_HOLDER, | 101 | + checkStackIsNotEmpty(listener, MISSING_HOLDER, BELONGS_TO_DATA, String.valueOf(ctx.IDENTIFIER().getText()), |
102 | - ParsableDataType.BELONGS_TO_DATA, | 102 | + EXIT); |
103 | - String.valueOf(ctx.IDENTIFIER().getText()), | ||
104 | - ListenerErrorLocation.EXIT); | ||
105 | 103 | ||
106 | Parsable tmpBelongstoNode = listener.getParsedDataStack().peek(); | 104 | Parsable tmpBelongstoNode = listener.getParsedDataStack().peek(); |
107 | if (tmpBelongstoNode instanceof YangBelongsTo) { | 105 | if (tmpBelongstoNode instanceof YangBelongsTo) { |
108 | listener.getParsedDataStack().pop(); | 106 | listener.getParsedDataStack().pop(); |
109 | 107 | ||
110 | // Check for stack to be empty. | 108 | // Check for stack to be empty. |
111 | - ListenerValidation.checkStackIsNotEmpty(listener, ListenerErrorType.MISSING_HOLDER, | 109 | + checkStackIsNotEmpty(listener, MISSING_HOLDER, BELONGS_TO_DATA, |
112 | - ParsableDataType.BELONGS_TO_DATA, | 110 | + String.valueOf(ctx.IDENTIFIER().getText()), EXIT); |
113 | - String.valueOf(ctx.IDENTIFIER().getText()), | ||
114 | - ListenerErrorLocation.EXIT); | ||
115 | 111 | ||
116 | Parsable tmpNode = listener.getParsedDataStack().peek(); | 112 | Parsable tmpNode = listener.getParsedDataStack().peek(); |
117 | switch (tmpNode.getParsableDataType()) { | 113 | switch (tmpNode.getParsableDataType()) { |
... | @@ -121,22 +117,13 @@ public final class BelongsToListener { | ... | @@ -121,22 +117,13 @@ public final class BelongsToListener { |
121 | break; | 117 | break; |
122 | } | 118 | } |
123 | default: | 119 | default: |
124 | - throw new ParserException( | 120 | + throw new ParserException(constructListenerErrorMessage(INVALID_HOLDER, BELONGS_TO_DATA, |
125 | - ListenerErrorMessageConstruction | 121 | + String.valueOf(ctx.IDENTIFIER().getText()), |
126 | - .constructListenerErrorMessage(ListenerErrorType.INVALID_HOLDER, | 122 | + EXIT)); |
127 | - ParsableDataType.BELONGS_TO_DATA, | ||
128 | - String.valueOf(ctx.IDENTIFIER() | ||
129 | - .getText()), | ||
130 | - ListenerErrorLocation.EXIT)); | ||
131 | } | 123 | } |
132 | } else { | 124 | } else { |
133 | - throw new ParserException( | 125 | + throw new ParserException(constructListenerErrorMessage(MISSING_CURRENT_HOLDER, BELONGS_TO_DATA, |
134 | - ListenerErrorMessageConstruction | 126 | + String.valueOf(ctx.IDENTIFIER().getText()), EXIT)); |
135 | - .constructListenerErrorMessage(ListenerErrorType.MISSING_CURRENT_HOLDER, | ||
136 | - ParsableDataType.BELONGS_TO_DATA, | ||
137 | - String.valueOf(ctx.IDENTIFIER() | ||
138 | - .getText()), | ||
139 | - ListenerErrorLocation.EXIT)); | ||
140 | } | 127 | } |
141 | } | 128 | } |
142 | -} | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
129 | +} | ... | ... |
... | @@ -19,14 +19,16 @@ package org.onosproject.yangutils.parser.impl.listeners; | ... | @@ -19,14 +19,16 @@ package org.onosproject.yangutils.parser.impl.listeners; |
19 | import org.onosproject.yangutils.datamodel.YangModule; | 19 | import org.onosproject.yangutils.datamodel.YangModule; |
20 | import org.onosproject.yangutils.datamodel.YangSubModule; | 20 | import org.onosproject.yangutils.datamodel.YangSubModule; |
21 | import org.onosproject.yangutils.parser.Parsable; | 21 | import org.onosproject.yangutils.parser.Parsable; |
22 | -import org.onosproject.yangutils.parser.ParsableDataType; | ||
23 | import org.onosproject.yangutils.parser.antlrgencode.GeneratedYangParser; | 22 | import org.onosproject.yangutils.parser.antlrgencode.GeneratedYangParser; |
24 | import org.onosproject.yangutils.parser.exceptions.ParserException; | 23 | import org.onosproject.yangutils.parser.exceptions.ParserException; |
25 | import org.onosproject.yangutils.parser.impl.TreeWalkListener; | 24 | import org.onosproject.yangutils.parser.impl.TreeWalkListener; |
26 | -import org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorLocation; | 25 | + |
27 | -import org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorMessageConstruction; | 26 | +import static org.onosproject.yangutils.parser.ParsableDataType.CONTACT_DATA; |
28 | -import org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorType; | 27 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorLocation.ENTRY; |
29 | -import org.onosproject.yangutils.parser.impl.parserutils.ListenerValidation; | 28 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorMessageConstruction.constructListenerErrorMessage; |
29 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorType.INVALID_HOLDER; | ||
30 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorType.MISSING_HOLDER; | ||
31 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerValidation.checkStackIsNotEmpty; | ||
30 | 32 | ||
31 | /* | 33 | /* |
32 | * Reference: RFC6020 and YANG ANTLR Grammar | 34 | * Reference: RFC6020 and YANG ANTLR Grammar |
... | @@ -81,9 +83,8 @@ public final class ContactListener { | ... | @@ -81,9 +83,8 @@ public final class ContactListener { |
81 | } | 83 | } |
82 | 84 | ||
83 | /** | 85 | /** |
84 | - * It is called when parser receives an input matching the grammar | 86 | + * It is called when parser receives an input matching the grammar rule |
85 | - * rule (contact), perform validations and update the data model | 87 | + * (contact), perform validations and update the data model tree. |
86 | - * tree. | ||
87 | * | 88 | * |
88 | * @param listener Listener's object. | 89 | * @param listener Listener's object. |
89 | * @param ctx context object of the grammar rule. | 90 | * @param ctx context object of the grammar rule. |
... | @@ -91,9 +92,7 @@ public final class ContactListener { | ... | @@ -91,9 +92,7 @@ public final class ContactListener { |
91 | public static void processContactEntry(TreeWalkListener listener, GeneratedYangParser.ContactStatementContext ctx) { | 92 | public static void processContactEntry(TreeWalkListener listener, GeneratedYangParser.ContactStatementContext ctx) { |
92 | 93 | ||
93 | // Check for stack to be non empty. | 94 | // Check for stack to be non empty. |
94 | - ListenerValidation.checkStackIsNotEmpty(listener, ListenerErrorType.MISSING_HOLDER, | 95 | + checkStackIsNotEmpty(listener, MISSING_HOLDER, CONTACT_DATA, String.valueOf(ctx.string().getText()), ENTRY); |
95 | - ParsableDataType.CONTACT_DATA, | ||
96 | - String.valueOf(ctx.string().getText()), ListenerErrorLocation.ENTRY); | ||
97 | 96 | ||
98 | // Obtain the node of the stack. | 97 | // Obtain the node of the stack. |
99 | Parsable tmpNode = listener.getParsedDataStack().peek(); | 98 | Parsable tmpNode = listener.getParsedDataStack().peek(); |
... | @@ -109,12 +108,8 @@ public final class ContactListener { | ... | @@ -109,12 +108,8 @@ public final class ContactListener { |
109 | break; | 108 | break; |
110 | } | 109 | } |
111 | default: | 110 | default: |
112 | - throw new ParserException( | 111 | + throw new ParserException(constructListenerErrorMessage(INVALID_HOLDER, CONTACT_DATA, |
113 | - ListenerErrorMessageConstruction | 112 | + String.valueOf(ctx.string().getText()), ENTRY)); |
114 | - .constructListenerErrorMessage(ListenerErrorType.INVALID_HOLDER, | ||
115 | - ParsableDataType.CONTACT_DATA, | ||
116 | - String.valueOf(ctx.string().getText()), | ||
117 | - ListenerErrorLocation.ENTRY)); | ||
118 | } | 113 | } |
119 | } | 114 | } |
120 | -} | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
115 | +} | ... | ... |
... | @@ -20,14 +20,16 @@ import org.onosproject.yangutils.datamodel.YangImport; | ... | @@ -20,14 +20,16 @@ import org.onosproject.yangutils.datamodel.YangImport; |
20 | import org.onosproject.yangutils.datamodel.YangModule; | 20 | import org.onosproject.yangutils.datamodel.YangModule; |
21 | import org.onosproject.yangutils.datamodel.YangSubModule; | 21 | import org.onosproject.yangutils.datamodel.YangSubModule; |
22 | import org.onosproject.yangutils.parser.Parsable; | 22 | import org.onosproject.yangutils.parser.Parsable; |
23 | -import org.onosproject.yangutils.parser.ParsableDataType; | ||
24 | import org.onosproject.yangutils.parser.antlrgencode.GeneratedYangParser; | 23 | import org.onosproject.yangutils.parser.antlrgencode.GeneratedYangParser; |
25 | import org.onosproject.yangutils.parser.exceptions.ParserException; | 24 | import org.onosproject.yangutils.parser.exceptions.ParserException; |
26 | import org.onosproject.yangutils.parser.impl.TreeWalkListener; | 25 | import org.onosproject.yangutils.parser.impl.TreeWalkListener; |
27 | -import org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorLocation; | 26 | + |
28 | -import org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorMessageConstruction; | 27 | +import static org.onosproject.yangutils.parser.ParsableDataType.IMPORT_DATA; |
29 | -import org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorType; | 28 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorLocation.ENTRY; |
30 | -import org.onosproject.yangutils.parser.impl.parserutils.ListenerValidation; | 29 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorLocation.EXIT; |
30 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorMessageConstruction.constructListenerErrorMessage; | ||
31 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorType.*; | ||
32 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerValidation.checkStackIsNotEmpty; | ||
31 | 33 | ||
32 | /* | 34 | /* |
33 | * Reference: RFC6020 and YANG ANTLR Grammar | 35 | * Reference: RFC6020 and YANG ANTLR Grammar |
... | @@ -64,9 +66,8 @@ public final class ImportListener { | ... | @@ -64,9 +66,8 @@ public final class ImportListener { |
64 | } | 66 | } |
65 | 67 | ||
66 | /** | 68 | /** |
67 | - * It is called when parser receives an input matching the grammar | 69 | + * It is called when parser receives an input matching the grammar rule |
68 | - * rule (import), perform validations and update the data model | 70 | + * (import), perform validations and update the data model tree. |
69 | - * tree. | ||
70 | * | 71 | * |
71 | * @param listener Listener's object. | 72 | * @param listener Listener's object. |
72 | * @param ctx context object of the grammar rule. | 73 | * @param ctx context object of the grammar rule. |
... | @@ -74,10 +75,7 @@ public final class ImportListener { | ... | @@ -74,10 +75,7 @@ public final class ImportListener { |
74 | public static void processImportEntry(TreeWalkListener listener, GeneratedYangParser.ImportStatementContext ctx) { | 75 | public static void processImportEntry(TreeWalkListener listener, GeneratedYangParser.ImportStatementContext ctx) { |
75 | 76 | ||
76 | // Check for stack to be non empty. | 77 | // Check for stack to be non empty. |
77 | - ListenerValidation.checkStackIsNotEmpty(listener, ListenerErrorType.MISSING_HOLDER, | 78 | + checkStackIsNotEmpty(listener, MISSING_HOLDER, IMPORT_DATA, String.valueOf(ctx.IDENTIFIER().getText()), ENTRY); |
78 | - ParsableDataType.IMPORT_DATA, | ||
79 | - String.valueOf(ctx.IDENTIFIER().getText()), | ||
80 | - ListenerErrorLocation.ENTRY); | ||
81 | 79 | ||
82 | YangImport importNode = new YangImport(); | 80 | YangImport importNode = new YangImport(); |
83 | importNode.setModuleName(String.valueOf(ctx.IDENTIFIER().getText())); | 81 | importNode.setModuleName(String.valueOf(ctx.IDENTIFIER().getText())); |
... | @@ -96,20 +94,15 @@ public final class ImportListener { | ... | @@ -96,20 +94,15 @@ public final class ImportListener { |
96 | public static void processImportExit(TreeWalkListener listener, GeneratedYangParser.ImportStatementContext ctx) { | 94 | public static void processImportExit(TreeWalkListener listener, GeneratedYangParser.ImportStatementContext ctx) { |
97 | 95 | ||
98 | // Check for stack to be non empty. | 96 | // Check for stack to be non empty. |
99 | - ListenerValidation.checkStackIsNotEmpty(listener, ListenerErrorType.MISSING_HOLDER, | 97 | + checkStackIsNotEmpty(listener, MISSING_HOLDER, IMPORT_DATA, String.valueOf(ctx.IDENTIFIER().getText()), EXIT); |
100 | - ParsableDataType.IMPORT_DATA, | ||
101 | - String.valueOf(ctx.IDENTIFIER().getText()), | ||
102 | - ListenerErrorLocation.EXIT); | ||
103 | 98 | ||
104 | Parsable tmpImportNode = listener.getParsedDataStack().peek(); | 99 | Parsable tmpImportNode = listener.getParsedDataStack().peek(); |
105 | if (tmpImportNode instanceof YangImport) { | 100 | if (tmpImportNode instanceof YangImport) { |
106 | listener.getParsedDataStack().pop(); | 101 | listener.getParsedDataStack().pop(); |
107 | 102 | ||
108 | // Check for stack to be non empty. | 103 | // Check for stack to be non empty. |
109 | - ListenerValidation.checkStackIsNotEmpty(listener, ListenerErrorType.MISSING_HOLDER, | 104 | + checkStackIsNotEmpty(listener, MISSING_HOLDER, IMPORT_DATA, String.valueOf(ctx.IDENTIFIER().getText()), |
110 | - ParsableDataType.IMPORT_DATA, | 105 | + EXIT); |
111 | - String.valueOf(ctx.IDENTIFIER().getText()), | ||
112 | - ListenerErrorLocation.EXIT); | ||
113 | 106 | ||
114 | Parsable tmpNode = listener.getParsedDataStack().peek(); | 107 | Parsable tmpNode = listener.getParsedDataStack().peek(); |
115 | switch (tmpNode.getParsableDataType()) { | 108 | switch (tmpNode.getParsableDataType()) { |
... | @@ -124,22 +117,13 @@ public final class ImportListener { | ... | @@ -124,22 +117,13 @@ public final class ImportListener { |
124 | break; | 117 | break; |
125 | } | 118 | } |
126 | default: | 119 | default: |
127 | - throw new ParserException( | 120 | + throw new ParserException(constructListenerErrorMessage(INVALID_HOLDER, IMPORT_DATA, |
128 | - ListenerErrorMessageConstruction | 121 | + String.valueOf(ctx.IDENTIFIER().getText()), |
129 | - .constructListenerErrorMessage(ListenerErrorType.INVALID_HOLDER, | 122 | + EXIT)); |
130 | - ParsableDataType.IMPORT_DATA, | ||
131 | - String.valueOf(ctx.IDENTIFIER() | ||
132 | - .getText()), | ||
133 | - ListenerErrorLocation.EXIT)); | ||
134 | } | 123 | } |
135 | } else { | 124 | } else { |
136 | - throw new ParserException( | 125 | + throw new ParserException(constructListenerErrorMessage(MISSING_CURRENT_HOLDER, IMPORT_DATA, |
137 | - ListenerErrorMessageConstruction | 126 | + String.valueOf(ctx.IDENTIFIER().getText()), EXIT)); |
138 | - .constructListenerErrorMessage(ListenerErrorType.MISSING_CURRENT_HOLDER, | ||
139 | - ParsableDataType.IMPORT_DATA, String | ||
140 | - .valueOf(ctx.IDENTIFIER() | ||
141 | - .getText()), | ||
142 | - ListenerErrorLocation.EXIT)); | ||
143 | } | 127 | } |
144 | } | 128 | } |
145 | -} | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
129 | +} | ... | ... |
... | @@ -20,14 +20,16 @@ import org.onosproject.yangutils.datamodel.YangInclude; | ... | @@ -20,14 +20,16 @@ import org.onosproject.yangutils.datamodel.YangInclude; |
20 | import org.onosproject.yangutils.datamodel.YangModule; | 20 | import org.onosproject.yangutils.datamodel.YangModule; |
21 | import org.onosproject.yangutils.datamodel.YangSubModule; | 21 | import org.onosproject.yangutils.datamodel.YangSubModule; |
22 | import org.onosproject.yangutils.parser.Parsable; | 22 | import org.onosproject.yangutils.parser.Parsable; |
23 | -import org.onosproject.yangutils.parser.ParsableDataType; | ||
24 | import org.onosproject.yangutils.parser.antlrgencode.GeneratedYangParser; | 23 | import org.onosproject.yangutils.parser.antlrgencode.GeneratedYangParser; |
25 | import org.onosproject.yangutils.parser.exceptions.ParserException; | 24 | import org.onosproject.yangutils.parser.exceptions.ParserException; |
26 | import org.onosproject.yangutils.parser.impl.TreeWalkListener; | 25 | import org.onosproject.yangutils.parser.impl.TreeWalkListener; |
27 | -import org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorLocation; | 26 | + |
28 | -import org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorMessageConstruction; | 27 | +import static org.onosproject.yangutils.parser.ParsableDataType.INCLUDE_DATA; |
29 | -import org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorType; | 28 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorLocation.ENTRY; |
30 | -import org.onosproject.yangutils.parser.impl.parserutils.ListenerValidation; | 29 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorLocation.EXIT; |
30 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorMessageConstruction.constructListenerErrorMessage; | ||
31 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorType.*; | ||
32 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerValidation.checkStackIsNotEmpty; | ||
31 | 33 | ||
32 | /* | 34 | /* |
33 | * Reference: RFC6020 and YANG ANTLR Grammar | 35 | * Reference: RFC6020 and YANG ANTLR Grammar |
... | @@ -63,9 +65,8 @@ public final class IncludeListener { | ... | @@ -63,9 +65,8 @@ public final class IncludeListener { |
63 | } | 65 | } |
64 | 66 | ||
65 | /** | 67 | /** |
66 | - * It is called when parser receives an input matching the grammar | 68 | + * It is called when parser receives an input matching the grammar rule |
67 | - * rule (include), perform validations and update the data model | 69 | + * (include), perform validations and update the data model tree. |
68 | - * tree. | ||
69 | * | 70 | * |
70 | * @param listener Listener's object. | 71 | * @param listener Listener's object. |
71 | * @param ctx context object of the grammar rule. | 72 | * @param ctx context object of the grammar rule. |
... | @@ -73,10 +74,8 @@ public final class IncludeListener { | ... | @@ -73,10 +74,8 @@ public final class IncludeListener { |
73 | public static void processIncludeEntry(TreeWalkListener listener, GeneratedYangParser.IncludeStatementContext ctx) { | 74 | public static void processIncludeEntry(TreeWalkListener listener, GeneratedYangParser.IncludeStatementContext ctx) { |
74 | 75 | ||
75 | // Check for stack to be non empty. | 76 | // Check for stack to be non empty. |
76 | - ListenerValidation.checkStackIsNotEmpty(listener, ListenerErrorType.MISSING_HOLDER, | 77 | + checkStackIsNotEmpty(listener, MISSING_HOLDER, INCLUDE_DATA, String.valueOf(ctx.IDENTIFIER().getText()), |
77 | - ParsableDataType.INCLUDE_DATA, | 78 | + ENTRY); |
78 | - String.valueOf(ctx.IDENTIFIER().getText()), | ||
79 | - ListenerErrorLocation.ENTRY); | ||
80 | 79 | ||
81 | YangInclude includeNode = new YangInclude(); | 80 | YangInclude includeNode = new YangInclude(); |
82 | includeNode.setSubModuleName(String.valueOf(ctx.IDENTIFIER().getText())); | 81 | includeNode.setSubModuleName(String.valueOf(ctx.IDENTIFIER().getText())); |
... | @@ -94,20 +93,15 @@ public final class IncludeListener { | ... | @@ -94,20 +93,15 @@ public final class IncludeListener { |
94 | public static void processIncludeExit(TreeWalkListener listener, GeneratedYangParser.IncludeStatementContext ctx) { | 93 | public static void processIncludeExit(TreeWalkListener listener, GeneratedYangParser.IncludeStatementContext ctx) { |
95 | 94 | ||
96 | // Check for stack to be non empty. | 95 | // Check for stack to be non empty. |
97 | - ListenerValidation.checkStackIsNotEmpty(listener, ListenerErrorType.MISSING_HOLDER, | 96 | + checkStackIsNotEmpty(listener, MISSING_HOLDER, INCLUDE_DATA, String.valueOf(ctx.IDENTIFIER().getText()), EXIT); |
98 | - ParsableDataType.INCLUDE_DATA, | ||
99 | - String.valueOf(ctx.IDENTIFIER().getText()), | ||
100 | - ListenerErrorLocation.EXIT); | ||
101 | 97 | ||
102 | Parsable tmpIncludeNode = listener.getParsedDataStack().peek(); | 98 | Parsable tmpIncludeNode = listener.getParsedDataStack().peek(); |
103 | if (tmpIncludeNode instanceof YangInclude) { | 99 | if (tmpIncludeNode instanceof YangInclude) { |
104 | listener.getParsedDataStack().pop(); | 100 | listener.getParsedDataStack().pop(); |
105 | 101 | ||
106 | // Check for stack to be non empty. | 102 | // Check for stack to be non empty. |
107 | - ListenerValidation.checkStackIsNotEmpty(listener, ListenerErrorType.MISSING_HOLDER, | 103 | + checkStackIsNotEmpty(listener, MISSING_HOLDER, INCLUDE_DATA, String.valueOf(ctx.IDENTIFIER().getText()), |
108 | - ParsableDataType.INCLUDE_DATA, | 104 | + EXIT); |
109 | - String.valueOf(ctx.IDENTIFIER().getText()), | ||
110 | - ListenerErrorLocation.EXIT); | ||
111 | 105 | ||
112 | Parsable tmpNode = listener.getParsedDataStack().peek(); | 106 | Parsable tmpNode = listener.getParsedDataStack().peek(); |
113 | switch (tmpNode.getParsableDataType()) { | 107 | switch (tmpNode.getParsableDataType()) { |
... | @@ -122,22 +116,13 @@ public final class IncludeListener { | ... | @@ -122,22 +116,13 @@ public final class IncludeListener { |
122 | break; | 116 | break; |
123 | } | 117 | } |
124 | default: | 118 | default: |
125 | - throw new ParserException( | 119 | + throw new ParserException(constructListenerErrorMessage(INVALID_HOLDER, INCLUDE_DATA, |
126 | - ListenerErrorMessageConstruction | 120 | + String.valueOf(ctx.IDENTIFIER().getText()), |
127 | - .constructListenerErrorMessage(ListenerErrorType.INVALID_HOLDER, | 121 | + EXIT)); |
128 | - ParsableDataType.INCLUDE_DATA, | ||
129 | - String.valueOf(ctx.IDENTIFIER() | ||
130 | - .getText()), | ||
131 | - ListenerErrorLocation.EXIT)); | ||
132 | } | 122 | } |
133 | } else { | 123 | } else { |
134 | - throw new ParserException( | 124 | + throw new ParserException(constructListenerErrorMessage(MISSING_CURRENT_HOLDER, INCLUDE_DATA, |
135 | - ListenerErrorMessageConstruction | 125 | + String.valueOf(ctx.IDENTIFIER().getText()), EXIT)); |
136 | - .constructListenerErrorMessage(ListenerErrorType.MISSING_CURRENT_HOLDER, | ||
137 | - ParsableDataType.INCLUDE_DATA, String | ||
138 | - .valueOf(ctx.IDENTIFIER() | ||
139 | - .getText()), | ||
140 | - ListenerErrorLocation.EXIT)); | ||
141 | } | 126 | } |
142 | } | 127 | } |
143 | -} | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
128 | +} | ... | ... |
... | @@ -17,14 +17,17 @@ | ... | @@ -17,14 +17,17 @@ |
17 | package org.onosproject.yangutils.parser.impl.listeners; | 17 | package org.onosproject.yangutils.parser.impl.listeners; |
18 | 18 | ||
19 | import org.onosproject.yangutils.datamodel.YangModule; | 19 | import org.onosproject.yangutils.datamodel.YangModule; |
20 | -import org.onosproject.yangutils.parser.ParsableDataType; | ||
21 | import org.onosproject.yangutils.parser.antlrgencode.GeneratedYangParser; | 20 | import org.onosproject.yangutils.parser.antlrgencode.GeneratedYangParser; |
22 | import org.onosproject.yangutils.parser.exceptions.ParserException; | 21 | import org.onosproject.yangutils.parser.exceptions.ParserException; |
23 | import org.onosproject.yangutils.parser.impl.TreeWalkListener; | 22 | import org.onosproject.yangutils.parser.impl.TreeWalkListener; |
24 | -import org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorLocation; | 23 | + |
25 | -import org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorMessageConstruction; | 24 | +import static org.onosproject.yangutils.parser.ParsableDataType.MODULE_DATA; |
26 | -import org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorType; | 25 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorLocation.ENTRY; |
27 | -import org.onosproject.yangutils.parser.impl.parserutils.ListenerValidation; | 26 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorLocation.EXIT; |
27 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorMessageConstruction.constructListenerErrorMessage; | ||
28 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorType.*; | ||
29 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerValidation.checkStackIsEmpty; | ||
30 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerValidation.checkStackIsNotEmpty; | ||
28 | 31 | ||
29 | /* | 32 | /* |
30 | * Reference: RFC6020 and YANG ANTLR Grammar | 33 | * Reference: RFC6020 and YANG ANTLR Grammar |
... | @@ -57,9 +60,8 @@ public final class ModuleListener { | ... | @@ -57,9 +60,8 @@ public final class ModuleListener { |
57 | } | 60 | } |
58 | 61 | ||
59 | /** | 62 | /** |
60 | - * It is called when parser receives an input matching the grammar | 63 | + * It is called when parser receives an input matching the grammar rule |
61 | - * rule (module), perform validations and update the data model | 64 | + * (module), perform validations and update the data model tree. |
62 | - * tree. | ||
63 | * | 65 | * |
64 | * @param listener Listener's object. | 66 | * @param listener Listener's object. |
65 | * @param ctx context object of the grammar rule. | 67 | * @param ctx context object of the grammar rule. |
... | @@ -67,9 +69,7 @@ public final class ModuleListener { | ... | @@ -67,9 +69,7 @@ public final class ModuleListener { |
67 | public static void processModuleEntry(TreeWalkListener listener, GeneratedYangParser.ModuleStatementContext ctx) { | 69 | public static void processModuleEntry(TreeWalkListener listener, GeneratedYangParser.ModuleStatementContext ctx) { |
68 | 70 | ||
69 | // Check if stack is empty. | 71 | // Check if stack is empty. |
70 | - ListenerValidation | 72 | + checkStackIsEmpty(listener, INVALID_HOLDER, MODULE_DATA, String.valueOf(ctx.IDENTIFIER().getText()), ENTRY); |
71 | - .checkStackIsEmpty(listener, ListenerErrorType.INVALID_HOLDER, ParsableDataType.MODULE_DATA, | ||
72 | - String.valueOf(ctx.IDENTIFIER().getText()), ListenerErrorLocation.ENTRY); | ||
73 | 73 | ||
74 | YangModule yangModule = new YangModule(); | 74 | YangModule yangModule = new YangModule(); |
75 | yangModule.setName(ctx.IDENTIFIER().getText()); | 75 | yangModule.setName(ctx.IDENTIFIER().getText()); |
... | @@ -87,19 +87,11 @@ public final class ModuleListener { | ... | @@ -87,19 +87,11 @@ public final class ModuleListener { |
87 | public static void processModuleExit(TreeWalkListener listener, GeneratedYangParser.ModuleStatementContext ctx) { | 87 | public static void processModuleExit(TreeWalkListener listener, GeneratedYangParser.ModuleStatementContext ctx) { |
88 | 88 | ||
89 | // Check for stack to be non empty. | 89 | // Check for stack to be non empty. |
90 | - ListenerValidation.checkStackIsNotEmpty(listener, ListenerErrorType.MISSING_HOLDER, | 90 | + checkStackIsNotEmpty(listener, MISSING_HOLDER, MODULE_DATA, String.valueOf(ctx.IDENTIFIER().getText()), EXIT); |
91 | - ParsableDataType.MODULE_DATA, | ||
92 | - String.valueOf(ctx.IDENTIFIER().getText()), | ||
93 | - ListenerErrorLocation.EXIT); | ||
94 | 91 | ||
95 | if (!(listener.getParsedDataStack().peek() instanceof YangModule)) { | 92 | if (!(listener.getParsedDataStack().peek() instanceof YangModule)) { |
96 | - throw new ParserException( | 93 | + throw new ParserException(constructListenerErrorMessage(MISSING_CURRENT_HOLDER, MODULE_DATA, |
97 | - ListenerErrorMessageConstruction | 94 | + String.valueOf(ctx.IDENTIFIER().getText()), EXIT)); |
98 | - .constructListenerErrorMessage(ListenerErrorType.MISSING_CURRENT_HOLDER, | ||
99 | - ParsableDataType.MODULE_DATA, String | ||
100 | - .valueOf(ctx.IDENTIFIER() | ||
101 | - .getText()), | ||
102 | - ListenerErrorLocation.EXIT)); | ||
103 | } | 95 | } |
104 | } | 96 | } |
105 | -} | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
97 | +} | ... | ... |
utils/yangutils/src/main/java/org/onosproject/yangutils/parser/impl/listeners/NamespaceListener.java
... | @@ -19,17 +19,19 @@ package org.onosproject.yangutils.parser.impl.listeners; | ... | @@ -19,17 +19,19 @@ package org.onosproject.yangutils.parser.impl.listeners; |
19 | import org.onosproject.yangutils.datamodel.YangModule; | 19 | import org.onosproject.yangutils.datamodel.YangModule; |
20 | import org.onosproject.yangutils.datamodel.YangNameSpace; | 20 | import org.onosproject.yangutils.datamodel.YangNameSpace; |
21 | import org.onosproject.yangutils.parser.Parsable; | 21 | import org.onosproject.yangutils.parser.Parsable; |
22 | -import org.onosproject.yangutils.parser.ParsableDataType; | ||
23 | import org.onosproject.yangutils.parser.antlrgencode.GeneratedYangParser; | 22 | import org.onosproject.yangutils.parser.antlrgencode.GeneratedYangParser; |
24 | import org.onosproject.yangutils.parser.exceptions.ParserException; | 23 | import org.onosproject.yangutils.parser.exceptions.ParserException; |
25 | import org.onosproject.yangutils.parser.impl.TreeWalkListener; | 24 | import org.onosproject.yangutils.parser.impl.TreeWalkListener; |
26 | -import org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorLocation; | ||
27 | -import org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorMessageConstruction; | ||
28 | -import org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorType; | ||
29 | -import org.onosproject.yangutils.parser.impl.parserutils.ListenerValidation; | ||
30 | 25 | ||
31 | import java.net.URI; | 26 | import java.net.URI; |
32 | 27 | ||
28 | +import static org.onosproject.yangutils.parser.ParsableDataType.NAMESPACE_DATA; | ||
29 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorLocation.ENTRY; | ||
30 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorMessageConstruction.constructListenerErrorMessage; | ||
31 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorType.INVALID_HOLDER; | ||
32 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorType.MISSING_HOLDER; | ||
33 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerValidation.checkStackIsNotEmpty; | ||
34 | + | ||
33 | /* | 35 | /* |
34 | * Reference: RFC6020 and YANG ANTLR Grammar | 36 | * Reference: RFC6020 and YANG ANTLR Grammar |
35 | * | 37 | * |
... | @@ -65,9 +67,8 @@ public final class NamespaceListener { | ... | @@ -65,9 +67,8 @@ public final class NamespaceListener { |
65 | } | 67 | } |
66 | 68 | ||
67 | /** | 69 | /** |
68 | - * It is called when parser receives an input matching the grammar | 70 | + * It is called when parser receives an input matching the grammar rule |
69 | - * rule (namespace), perform validations and update the data model | 71 | + * (namespace), perform validations and update the data model tree. |
70 | - * tree. | ||
71 | * | 72 | * |
72 | * @param listener Listener's object. | 73 | * @param listener Listener's object. |
73 | * @param ctx context object of the grammar rule. | 74 | * @param ctx context object of the grammar rule. |
... | @@ -76,9 +77,7 @@ public final class NamespaceListener { | ... | @@ -76,9 +77,7 @@ public final class NamespaceListener { |
76 | GeneratedYangParser.NamespaceStatementContext ctx) { | 77 | GeneratedYangParser.NamespaceStatementContext ctx) { |
77 | 78 | ||
78 | // Check for stack to be non empty. | 79 | // Check for stack to be non empty. |
79 | - ListenerValidation.checkStackIsNotEmpty(listener, ListenerErrorType.MISSING_HOLDER, | 80 | + checkStackIsNotEmpty(listener, MISSING_HOLDER, NAMESPACE_DATA, String.valueOf(ctx.string().getText()), ENTRY); |
80 | - ParsableDataType.NAMESPACE_DATA, | ||
81 | - String.valueOf(ctx.string().getText()), ListenerErrorLocation.ENTRY); | ||
82 | 81 | ||
83 | if (!validateUriValue(String.valueOf(ctx.string().getText()))) { | 82 | if (!validateUriValue(String.valueOf(ctx.string().getText()))) { |
84 | ParserException parserException = new ParserException("Invalid namespace URI"); | 83 | ParserException parserException = new ParserException("Invalid namespace URI"); |
... | @@ -98,12 +97,8 @@ public final class NamespaceListener { | ... | @@ -98,12 +97,8 @@ public final class NamespaceListener { |
98 | break; | 97 | break; |
99 | } | 98 | } |
100 | default: | 99 | default: |
101 | - throw new ParserException( | 100 | + throw new ParserException(constructListenerErrorMessage(INVALID_HOLDER, NAMESPACE_DATA, |
102 | - ListenerErrorMessageConstruction | 101 | + String.valueOf(ctx.string().getText()), ENTRY)); |
103 | - .constructListenerErrorMessage(ListenerErrorType.INVALID_HOLDER, | ||
104 | - ParsableDataType.NAMESPACE_DATA, | ||
105 | - String.valueOf(ctx.string().getText()), | ||
106 | - ListenerErrorLocation.ENTRY)); | ||
107 | } | 102 | } |
108 | } | 103 | } |
109 | 104 | ||
... | @@ -123,4 +118,4 @@ public final class NamespaceListener { | ... | @@ -123,4 +118,4 @@ public final class NamespaceListener { |
123 | } | 118 | } |
124 | return true; | 119 | return true; |
125 | } | 120 | } |
126 | -} | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
121 | +} | ... | ... |
... | @@ -19,14 +19,16 @@ package org.onosproject.yangutils.parser.impl.listeners; | ... | @@ -19,14 +19,16 @@ package org.onosproject.yangutils.parser.impl.listeners; |
19 | import org.onosproject.yangutils.datamodel.YangModule; | 19 | import org.onosproject.yangutils.datamodel.YangModule; |
20 | import org.onosproject.yangutils.datamodel.YangSubModule; | 20 | import org.onosproject.yangutils.datamodel.YangSubModule; |
21 | import org.onosproject.yangutils.parser.Parsable; | 21 | import org.onosproject.yangutils.parser.Parsable; |
22 | -import org.onosproject.yangutils.parser.ParsableDataType; | ||
23 | import org.onosproject.yangutils.parser.antlrgencode.GeneratedYangParser; | 22 | import org.onosproject.yangutils.parser.antlrgencode.GeneratedYangParser; |
24 | import org.onosproject.yangutils.parser.exceptions.ParserException; | 23 | import org.onosproject.yangutils.parser.exceptions.ParserException; |
25 | import org.onosproject.yangutils.parser.impl.TreeWalkListener; | 24 | import org.onosproject.yangutils.parser.impl.TreeWalkListener; |
26 | -import org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorLocation; | 25 | + |
27 | -import org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorMessageConstruction; | 26 | +import static org.onosproject.yangutils.parser.ParsableDataType.ORGANIZATION_DATA; |
28 | -import org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorType; | 27 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorLocation.ENTRY; |
29 | -import org.onosproject.yangutils.parser.impl.parserutils.ListenerValidation; | 28 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorMessageConstruction.constructListenerErrorMessage; |
29 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorType.INVALID_HOLDER; | ||
30 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorType.MISSING_HOLDER; | ||
31 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerValidation.checkStackIsNotEmpty; | ||
30 | 32 | ||
31 | /* | 33 | /* |
32 | * Reference: RFC6020 and YANG ANTLR Grammar | 34 | * Reference: RFC6020 and YANG ANTLR Grammar |
... | @@ -70,8 +72,9 @@ import org.onosproject.yangutils.parser.impl.parserutils.ListenerValidation; | ... | @@ -70,8 +72,9 @@ import org.onosproject.yangutils.parser.impl.parserutils.ListenerValidation; |
70 | */ | 72 | */ |
71 | 73 | ||
72 | /** | 74 | /** |
73 | - * Implements listener based call back function corresponding to the "organization" | 75 | + * Implements listener based call back function corresponding to the |
74 | - * rule defined in ANTLR grammar file for corresponding ABNF rule in RFC 6020. | 76 | + * "organization" rule defined in ANTLR grammar file for corresponding ABNF rule |
77 | + * in RFC 6020. | ||
75 | */ | 78 | */ |
76 | public final class OrganizationListener { | 79 | public final class OrganizationListener { |
77 | 80 | ||
... | @@ -82,9 +85,8 @@ public final class OrganizationListener { | ... | @@ -82,9 +85,8 @@ public final class OrganizationListener { |
82 | } | 85 | } |
83 | 86 | ||
84 | /** | 87 | /** |
85 | - * It is called when parser receives an input matching the grammar | 88 | + * It is called when parser receives an input matching the grammar rule |
86 | - * rule (organization), perform validations and update the data model | 89 | + * (organization), perform validations and update the data model tree. |
87 | - * tree. | ||
88 | * | 90 | * |
89 | * @param listener Listener's object. | 91 | * @param listener Listener's object. |
90 | * @param ctx context object of the grammar rule. | 92 | * @param ctx context object of the grammar rule. |
... | @@ -93,9 +95,8 @@ public final class OrganizationListener { | ... | @@ -93,9 +95,8 @@ public final class OrganizationListener { |
93 | GeneratedYangParser.OrganizationStatementContext ctx) { | 95 | GeneratedYangParser.OrganizationStatementContext ctx) { |
94 | 96 | ||
95 | // Check for stack to be non empty. | 97 | // Check for stack to be non empty. |
96 | - ListenerValidation.checkStackIsNotEmpty(listener, ListenerErrorType.MISSING_HOLDER, | 98 | + checkStackIsNotEmpty(listener, MISSING_HOLDER, ORGANIZATION_DATA, String.valueOf(ctx.string().getText()), |
97 | - ParsableDataType.ORGANIZATION_DATA, | 99 | + ENTRY); |
98 | - String.valueOf(ctx.string().getText()), ListenerErrorLocation.ENTRY); | ||
99 | 100 | ||
100 | // Obtain the node of the stack. | 101 | // Obtain the node of the stack. |
101 | Parsable tmpNode = listener.getParsedDataStack().peek(); | 102 | Parsable tmpNode = listener.getParsedDataStack().peek(); |
... | @@ -111,12 +112,8 @@ public final class OrganizationListener { | ... | @@ -111,12 +112,8 @@ public final class OrganizationListener { |
111 | break; | 112 | break; |
112 | } | 113 | } |
113 | default: | 114 | default: |
114 | - throw new ParserException( | 115 | + throw new ParserException(constructListenerErrorMessage(INVALID_HOLDER, ORGANIZATION_DATA, |
115 | - ListenerErrorMessageConstruction | 116 | + String.valueOf(ctx.string().getText()), ENTRY)); |
116 | - .constructListenerErrorMessage(ListenerErrorType.INVALID_HOLDER, | ||
117 | - ParsableDataType.ORGANIZATION_DATA, | ||
118 | - String.valueOf(ctx.string().getText()), | ||
119 | - ListenerErrorLocation.ENTRY)); | ||
120 | } | 117 | } |
121 | } | 118 | } |
122 | -} | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
119 | +} | ... | ... |
... | @@ -20,14 +20,16 @@ import org.onosproject.yangutils.datamodel.YangBelongsTo; | ... | @@ -20,14 +20,16 @@ import org.onosproject.yangutils.datamodel.YangBelongsTo; |
20 | import org.onosproject.yangutils.datamodel.YangImport; | 20 | import org.onosproject.yangutils.datamodel.YangImport; |
21 | import org.onosproject.yangutils.datamodel.YangModule; | 21 | import org.onosproject.yangutils.datamodel.YangModule; |
22 | import org.onosproject.yangutils.parser.Parsable; | 22 | import org.onosproject.yangutils.parser.Parsable; |
23 | -import org.onosproject.yangutils.parser.ParsableDataType; | ||
24 | import org.onosproject.yangutils.parser.antlrgencode.GeneratedYangParser; | 23 | import org.onosproject.yangutils.parser.antlrgencode.GeneratedYangParser; |
25 | import org.onosproject.yangutils.parser.exceptions.ParserException; | 24 | import org.onosproject.yangutils.parser.exceptions.ParserException; |
26 | import org.onosproject.yangutils.parser.impl.TreeWalkListener; | 25 | import org.onosproject.yangutils.parser.impl.TreeWalkListener; |
27 | -import org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorLocation; | 26 | + |
28 | -import org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorMessageConstruction; | 27 | +import static org.onosproject.yangutils.parser.ParsableDataType.PREFIX_DATA; |
29 | -import org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorType; | 28 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorLocation.ENTRY; |
30 | -import org.onosproject.yangutils.parser.impl.parserutils.ListenerValidation; | 29 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorMessageConstruction.constructListenerErrorMessage; |
30 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorType.INVALID_HOLDER; | ||
31 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorType.MISSING_HOLDER; | ||
32 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerValidation.checkStackIsNotEmpty; | ||
31 | 33 | ||
32 | /* | 34 | /* |
33 | * Reference: RFC6020 and YANG ANTLR Grammar | 35 | * Reference: RFC6020 and YANG ANTLR Grammar |
... | @@ -65,9 +67,8 @@ public final class PrefixListener { | ... | @@ -65,9 +67,8 @@ public final class PrefixListener { |
65 | } | 67 | } |
66 | 68 | ||
67 | /** | 69 | /** |
68 | - * It is called when parser receives an input matching the grammar | 70 | + * It is called when parser receives an input matching the grammar rule |
69 | - * rule (prefix),perform validations and update the data model | 71 | + * (prefix),perform validations and update the data model tree. |
70 | - * tree. | ||
71 | * | 72 | * |
72 | * @param listener Listener's object. | 73 | * @param listener Listener's object. |
73 | * @param ctx context object of the grammar rule. | 74 | * @param ctx context object of the grammar rule. |
... | @@ -75,10 +76,7 @@ public final class PrefixListener { | ... | @@ -75,10 +76,7 @@ public final class PrefixListener { |
75 | public static void processPrefixEntry(TreeWalkListener listener, GeneratedYangParser.PrefixStatementContext ctx) { | 76 | public static void processPrefixEntry(TreeWalkListener listener, GeneratedYangParser.PrefixStatementContext ctx) { |
76 | 77 | ||
77 | // Check for stack to be non empty. | 78 | // Check for stack to be non empty. |
78 | - ListenerValidation.checkStackIsNotEmpty(listener, ListenerErrorType.MISSING_HOLDER, | 79 | + checkStackIsNotEmpty(listener, MISSING_HOLDER, PREFIX_DATA, String.valueOf(ctx.IDENTIFIER().getText()), ENTRY); |
79 | - ParsableDataType.PREFIX_DATA, | ||
80 | - String.valueOf(ctx.IDENTIFIER().getText()), | ||
81 | - ListenerErrorLocation.ENTRY); | ||
82 | 80 | ||
83 | // Obtain the node of the stack. | 81 | // Obtain the node of the stack. |
84 | Parsable tmpNode = listener.getParsedDataStack().peek(); | 82 | Parsable tmpNode = listener.getParsedDataStack().peek(); |
... | @@ -99,13 +97,8 @@ public final class PrefixListener { | ... | @@ -99,13 +97,8 @@ public final class PrefixListener { |
99 | break; | 97 | break; |
100 | } | 98 | } |
101 | default: | 99 | default: |
102 | - throw new ParserException( | 100 | + throw new ParserException(constructListenerErrorMessage(INVALID_HOLDER, PREFIX_DATA, |
103 | - ListenerErrorMessageConstruction | 101 | + String.valueOf(ctx.IDENTIFIER().getText()), ENTRY)); |
104 | - .constructListenerErrorMessage(ListenerErrorType.INVALID_HOLDER, | ||
105 | - ParsableDataType.PREFIX_DATA, String | ||
106 | - .valueOf(ctx.IDENTIFIER() | ||
107 | - .getText()), | ||
108 | - ListenerErrorLocation.ENTRY)); | ||
109 | } | 102 | } |
110 | } | 103 | } |
111 | -} | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
104 | +} | ... | ... |
... | @@ -19,14 +19,16 @@ package org.onosproject.yangutils.parser.impl.listeners; | ... | @@ -19,14 +19,16 @@ package org.onosproject.yangutils.parser.impl.listeners; |
19 | import org.onosproject.yangutils.datamodel.YangImport; | 19 | import org.onosproject.yangutils.datamodel.YangImport; |
20 | import org.onosproject.yangutils.datamodel.YangInclude; | 20 | import org.onosproject.yangutils.datamodel.YangInclude; |
21 | import org.onosproject.yangutils.parser.Parsable; | 21 | import org.onosproject.yangutils.parser.Parsable; |
22 | -import org.onosproject.yangutils.parser.ParsableDataType; | ||
23 | import org.onosproject.yangutils.parser.antlrgencode.GeneratedYangParser; | 22 | import org.onosproject.yangutils.parser.antlrgencode.GeneratedYangParser; |
24 | import org.onosproject.yangutils.parser.exceptions.ParserException; | 23 | import org.onosproject.yangutils.parser.exceptions.ParserException; |
25 | import org.onosproject.yangutils.parser.impl.TreeWalkListener; | 24 | import org.onosproject.yangutils.parser.impl.TreeWalkListener; |
26 | -import org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorLocation; | 25 | + |
27 | -import org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorMessageConstruction; | 26 | +import static org.onosproject.yangutils.parser.ParsableDataType.REVISION_DATE_DATA; |
28 | -import org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorType; | 27 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorLocation.ENTRY; |
29 | -import org.onosproject.yangutils.parser.impl.parserutils.ListenerValidation; | 28 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorMessageConstruction.constructListenerErrorMessage; |
29 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorType.INVALID_HOLDER; | ||
30 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorType.MISSING_HOLDER; | ||
31 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerValidation.checkStackIsNotEmpty; | ||
30 | 32 | ||
31 | /* | 33 | /* |
32 | * Reference: RFC6020 and YANG ANTLR Grammar | 34 | * Reference: RFC6020 and YANG ANTLR Grammar |
... | @@ -57,8 +59,9 @@ import org.onosproject.yangutils.parser.impl.parserutils.ListenerValidation; | ... | @@ -57,8 +59,9 @@ import org.onosproject.yangutils.parser.impl.parserutils.ListenerValidation; |
57 | */ | 59 | */ |
58 | 60 | ||
59 | /** | 61 | /** |
60 | - * Implements listener based call back function corresponding to the "revision date" | 62 | + * Implements listener based call back function corresponding to the |
61 | - * rule defined in ANTLR grammar file for corresponding ABNF rule in RFC 6020. | 63 | + * "revision date" rule defined in ANTLR grammar file for corresponding ABNF |
64 | + * rule in RFC 6020. | ||
62 | */ | 65 | */ |
63 | public final class RevisionDateListener { | 66 | public final class RevisionDateListener { |
64 | 67 | ||
... | @@ -69,9 +72,8 @@ public final class RevisionDateListener { | ... | @@ -69,9 +72,8 @@ public final class RevisionDateListener { |
69 | } | 72 | } |
70 | 73 | ||
71 | /** | 74 | /** |
72 | - * It is called when parser receives an input matching the grammar | 75 | + * It is called when parser receives an input matching the grammar rule |
73 | - * rule (revision date),perform validations and update the data model | 76 | + * (revision date),perform validations and update the data model tree. |
74 | - * tree. | ||
75 | * | 77 | * |
76 | * @param listener Listener's object. | 78 | * @param listener Listener's object. |
77 | * @param ctx context object of the grammar rule. | 79 | * @param ctx context object of the grammar rule. |
... | @@ -80,10 +82,8 @@ public final class RevisionDateListener { | ... | @@ -80,10 +82,8 @@ public final class RevisionDateListener { |
80 | GeneratedYangParser.RevisionDateStatementContext ctx) { | 82 | GeneratedYangParser.RevisionDateStatementContext ctx) { |
81 | 83 | ||
82 | // Check for stack to be non empty. | 84 | // Check for stack to be non empty. |
83 | - ListenerValidation.checkStackIsNotEmpty(listener, ListenerErrorType.MISSING_HOLDER, | 85 | + checkStackIsNotEmpty(listener, MISSING_HOLDER, REVISION_DATE_DATA, String.valueOf(ctx.DATE_ARG().getText()), |
84 | - ParsableDataType.REVISION_DATE_DATA, | 86 | + ENTRY); |
85 | - String.valueOf(ctx.DATE_ARG().getText()), | ||
86 | - ListenerErrorLocation.ENTRY); | ||
87 | 87 | ||
88 | // Obtain the node of the stack. | 88 | // Obtain the node of the stack. |
89 | Parsable tmpNode = listener.getParsedDataStack().peek(); | 89 | Parsable tmpNode = listener.getParsedDataStack().peek(); |
... | @@ -99,13 +99,9 @@ public final class RevisionDateListener { | ... | @@ -99,13 +99,9 @@ public final class RevisionDateListener { |
99 | break; | 99 | break; |
100 | } | 100 | } |
101 | default: | 101 | default: |
102 | - throw new ParserException( | 102 | + throw new ParserException(constructListenerErrorMessage(INVALID_HOLDER, REVISION_DATE_DATA, |
103 | - ListenerErrorMessageConstruction | 103 | + String.valueOf(ctx.DATE_ARG().getText()), ENTRY)); |
104 | - .constructListenerErrorMessage(ListenerErrorType.INVALID_HOLDER, | ||
105 | - ParsableDataType.REVISION_DATE_DATA, | ||
106 | - String.valueOf(ctx.DATE_ARG().getText()), | ||
107 | - ListenerErrorLocation.ENTRY)); | ||
108 | } | 104 | } |
109 | } | 105 | } |
110 | // TODO Implement the DATE_ARG validation as per RFC 6020. | 106 | // TODO Implement the DATE_ARG validation as per RFC 6020. |
111 | -} | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
107 | +} | ... | ... |
... | @@ -20,14 +20,16 @@ import org.onosproject.yangutils.datamodel.YangModule; | ... | @@ -20,14 +20,16 @@ import org.onosproject.yangutils.datamodel.YangModule; |
20 | import org.onosproject.yangutils.datamodel.YangRevision; | 20 | import org.onosproject.yangutils.datamodel.YangRevision; |
21 | import org.onosproject.yangutils.datamodel.YangSubModule; | 21 | import org.onosproject.yangutils.datamodel.YangSubModule; |
22 | import org.onosproject.yangutils.parser.Parsable; | 22 | import org.onosproject.yangutils.parser.Parsable; |
23 | -import org.onosproject.yangutils.parser.ParsableDataType; | ||
24 | import org.onosproject.yangutils.parser.antlrgencode.GeneratedYangParser; | 23 | import org.onosproject.yangutils.parser.antlrgencode.GeneratedYangParser; |
25 | import org.onosproject.yangutils.parser.exceptions.ParserException; | 24 | import org.onosproject.yangutils.parser.exceptions.ParserException; |
26 | import org.onosproject.yangutils.parser.impl.TreeWalkListener; | 25 | import org.onosproject.yangutils.parser.impl.TreeWalkListener; |
27 | -import org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorLocation; | 26 | + |
28 | -import org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorMessageConstruction; | 27 | +import static org.onosproject.yangutils.parser.ParsableDataType.REVISION_DATA; |
29 | -import org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorType; | 28 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorLocation.ENTRY; |
30 | -import org.onosproject.yangutils.parser.impl.parserutils.ListenerValidation; | 29 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorLocation.EXIT; |
30 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorMessageConstruction.constructListenerErrorMessage; | ||
31 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorType.*; | ||
32 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerValidation.checkStackIsNotEmpty; | ||
31 | 33 | ||
32 | /* | 34 | /* |
33 | * Reference: RFC6020 and YANG ANTLR Grammar | 35 | * Reference: RFC6020 and YANG ANTLR Grammar |
... | @@ -69,16 +71,21 @@ public final class RevisionListener { | ... | @@ -69,16 +71,21 @@ public final class RevisionListener { |
69 | private RevisionListener() { | 71 | private RevisionListener() { |
70 | } | 72 | } |
71 | 73 | ||
74 | + /** | ||
75 | + * It is called when parser receives an input matching the grammar rule | ||
76 | + * (revision),perform validations and update the data model tree. | ||
77 | + * | ||
78 | + * @param listener Listener's object. | ||
79 | + * @param ctx context object of the grammar rule. | ||
80 | + */ | ||
72 | public static void processRevisionEntry(TreeWalkListener listener, | 81 | public static void processRevisionEntry(TreeWalkListener listener, |
73 | GeneratedYangParser.RevisionStatementContext ctx) { | 82 | GeneratedYangParser.RevisionStatementContext ctx) { |
74 | 83 | ||
75 | // Check for stack to be non empty. | 84 | // Check for stack to be non empty. |
76 | - ListenerValidation.checkStackIsNotEmpty(listener, ListenerErrorType.MISSING_HOLDER, | 85 | + checkStackIsNotEmpty(listener, MISSING_HOLDER, REVISION_DATA, String.valueOf(ctx.DATE_ARG().getText()), ENTRY); |
77 | - ParsableDataType.REVISION_DATA, | ||
78 | - String.valueOf(ctx.DATE_ARG().getText()), | ||
79 | - ListenerErrorLocation.ENTRY); | ||
80 | 86 | ||
81 | - // Validate for reverse chronological order of revision & for revision value. | 87 | + // Validate for reverse chronological order of revision & for revision |
88 | + // value. | ||
82 | if (!validateRevision(listener, ctx)) { | 89 | if (!validateRevision(listener, ctx)) { |
83 | return; | 90 | return; |
84 | // TODO to be implemented. | 91 | // TODO to be implemented. |
... | @@ -97,23 +104,19 @@ public final class RevisionListener { | ... | @@ -97,23 +104,19 @@ public final class RevisionListener { |
97 | * @param listener Listener's object. | 104 | * @param listener Listener's object. |
98 | * @param ctx context object of the grammar rule. | 105 | * @param ctx context object of the grammar rule. |
99 | */ | 106 | */ |
100 | - public static void processRevisionExit(TreeWalkListener listener, | 107 | + public static void processRevisionExit(TreeWalkListener listener, GeneratedYangParser.RevisionStatementContext |
101 | - GeneratedYangParser.RevisionStatementContext ctx) { | 108 | + ctx) { |
102 | 109 | ||
103 | // Check for stack to be non empty. | 110 | // Check for stack to be non empty. |
104 | - ListenerValidation | 111 | + checkStackIsNotEmpty(listener, MISSING_HOLDER, REVISION_DATA, String.valueOf(ctx.DATE_ARG().getText()), EXIT); |
105 | - .checkStackIsNotEmpty(listener, ListenerErrorType.MISSING_HOLDER, ParsableDataType.REVISION_DATA, | ||
106 | - String.valueOf(ctx.DATE_ARG().getText()), ListenerErrorLocation.EXIT); | ||
107 | 112 | ||
108 | Parsable tmpRevisionNode = listener.getParsedDataStack().peek(); | 113 | Parsable tmpRevisionNode = listener.getParsedDataStack().peek(); |
109 | if (tmpRevisionNode instanceof YangRevision) { | 114 | if (tmpRevisionNode instanceof YangRevision) { |
110 | listener.getParsedDataStack().pop(); | 115 | listener.getParsedDataStack().pop(); |
111 | 116 | ||
112 | // Check for stack to be non empty. | 117 | // Check for stack to be non empty. |
113 | - ListenerValidation.checkStackIsNotEmpty(listener, ListenerErrorType.MISSING_HOLDER, | 118 | + checkStackIsNotEmpty(listener, MISSING_HOLDER, REVISION_DATA, String.valueOf(ctx.DATE_ARG().getText()), |
114 | - ParsableDataType.REVISION_DATA, | 119 | + EXIT); |
115 | - String.valueOf(ctx.DATE_ARG().getText()), | ||
116 | - ListenerErrorLocation.EXIT); | ||
117 | 120 | ||
118 | Parsable tmpNode = listener.getParsedDataStack().peek(); | 121 | Parsable tmpNode = listener.getParsedDataStack().peek(); |
119 | switch (tmpNode.getParsableDataType()) { | 122 | switch (tmpNode.getParsableDataType()) { |
... | @@ -128,22 +131,13 @@ public final class RevisionListener { | ... | @@ -128,22 +131,13 @@ public final class RevisionListener { |
128 | break; | 131 | break; |
129 | } | 132 | } |
130 | default: | 133 | default: |
131 | - throw new ParserException( | 134 | + throw new ParserException(constructListenerErrorMessage(INVALID_HOLDER, REVISION_DATA, |
132 | - ListenerErrorMessageConstruction | 135 | + String.valueOf(ctx.DATE_ARG().getText()), |
133 | - .constructListenerErrorMessage(ListenerErrorType.INVALID_HOLDER, | 136 | + EXIT)); |
134 | - ParsableDataType.REVISION_DATA, | ||
135 | - String.valueOf(ctx.DATE_ARG() | ||
136 | - .getText()), | ||
137 | - ListenerErrorLocation.EXIT)); | ||
138 | } | 137 | } |
139 | } else { | 138 | } else { |
140 | - throw new ParserException( | 139 | + throw new ParserException(constructListenerErrorMessage(MISSING_CURRENT_HOLDER, REVISION_DATA, |
141 | - ListenerErrorMessageConstruction | 140 | + String.valueOf(ctx.DATE_ARG().getText()), EXIT)); |
142 | - .constructListenerErrorMessage(ListenerErrorType.MISSING_CURRENT_HOLDER, | ||
143 | - ParsableDataType.REVISION_DATA, String | ||
144 | - .valueOf(ctx.DATE_ARG() | ||
145 | - .getText()), | ||
146 | - ListenerErrorLocation.EXIT)); | ||
147 | } | 141 | } |
148 | } | 142 | } |
149 | 143 | ||
... | @@ -159,4 +153,4 @@ public final class RevisionListener { | ... | @@ -159,4 +153,4 @@ public final class RevisionListener { |
159 | // TODO to be implemented | 153 | // TODO to be implemented |
160 | return true; | 154 | return true; |
161 | } | 155 | } |
162 | -} | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
156 | +} | ... | ... |
utils/yangutils/src/main/java/org/onosproject/yangutils/parser/impl/listeners/SubModuleListener.java
... | @@ -17,14 +17,17 @@ | ... | @@ -17,14 +17,17 @@ |
17 | package org.onosproject.yangutils.parser.impl.listeners; | 17 | package org.onosproject.yangutils.parser.impl.listeners; |
18 | 18 | ||
19 | import org.onosproject.yangutils.datamodel.YangSubModule; | 19 | import org.onosproject.yangutils.datamodel.YangSubModule; |
20 | -import org.onosproject.yangutils.parser.ParsableDataType; | ||
21 | import org.onosproject.yangutils.parser.antlrgencode.GeneratedYangParser; | 20 | import org.onosproject.yangutils.parser.antlrgencode.GeneratedYangParser; |
22 | import org.onosproject.yangutils.parser.exceptions.ParserException; | 21 | import org.onosproject.yangutils.parser.exceptions.ParserException; |
23 | import org.onosproject.yangutils.parser.impl.TreeWalkListener; | 22 | import org.onosproject.yangutils.parser.impl.TreeWalkListener; |
24 | -import org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorLocation; | 23 | + |
25 | -import org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorMessageConstruction; | 24 | +import static org.onosproject.yangutils.parser.ParsableDataType.SUB_MODULE_DATA; |
26 | -import org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorType; | 25 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorLocation.ENTRY; |
27 | -import org.onosproject.yangutils.parser.impl.parserutils.ListenerValidation; | 26 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorLocation.EXIT; |
27 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorMessageConstruction.constructListenerErrorMessage; | ||
28 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorType.*; | ||
29 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerValidation.checkStackIsEmpty; | ||
30 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerValidation.checkStackIsNotEmpty; | ||
28 | 31 | ||
29 | /* | 32 | /* |
30 | * Reference: RFC6020 and YANG ANTLR Grammar | 33 | * Reference: RFC6020 and YANG ANTLR Grammar |
... | @@ -58,9 +61,8 @@ public final class SubModuleListener { | ... | @@ -58,9 +61,8 @@ public final class SubModuleListener { |
58 | } | 61 | } |
59 | 62 | ||
60 | /** | 63 | /** |
61 | - * It is called when parser receives an input matching the grammar | 64 | + * It is called when parser receives an input matching the grammar rule (sub |
62 | - * rule (sub module), perform validations and update the data model | 65 | + * module), perform validations and update the data model tree. |
63 | - * tree. | ||
64 | * | 66 | * |
65 | * @param listener Listener's object. | 67 | * @param listener Listener's object. |
66 | * @param ctx context object of the grammar rule. | 68 | * @param ctx context object of the grammar rule. |
... | @@ -69,9 +71,8 @@ public final class SubModuleListener { | ... | @@ -69,9 +71,8 @@ public final class SubModuleListener { |
69 | GeneratedYangParser.SubModuleStatementContext ctx) { | 71 | GeneratedYangParser.SubModuleStatementContext ctx) { |
70 | 72 | ||
71 | // Check if stack is empty. | 73 | // Check if stack is empty. |
72 | - ListenerValidation | 74 | + checkStackIsEmpty(listener, INVALID_HOLDER, SUB_MODULE_DATA, String.valueOf(ctx.IDENTIFIER().getText()), |
73 | - .checkStackIsEmpty(listener, ListenerErrorType.INVALID_HOLDER, ParsableDataType.SUB_MODULE_DATA, | 75 | + ENTRY); |
74 | - String.valueOf(ctx.IDENTIFIER().getText()), ListenerErrorLocation.ENTRY); | ||
75 | 76 | ||
76 | YangSubModule yangSubModule = new YangSubModule(); | 77 | YangSubModule yangSubModule = new YangSubModule(); |
77 | yangSubModule.setName(ctx.IDENTIFIER().getText()); | 78 | yangSubModule.setName(ctx.IDENTIFIER().getText()); |
... | @@ -90,19 +91,12 @@ public final class SubModuleListener { | ... | @@ -90,19 +91,12 @@ public final class SubModuleListener { |
90 | GeneratedYangParser.SubModuleStatementContext ctx) { | 91 | GeneratedYangParser.SubModuleStatementContext ctx) { |
91 | 92 | ||
92 | // Check for stack to be non empty. | 93 | // Check for stack to be non empty. |
93 | - ListenerValidation.checkStackIsNotEmpty(listener, ListenerErrorType.MISSING_HOLDER, | 94 | + checkStackIsNotEmpty(listener, MISSING_HOLDER, SUB_MODULE_DATA, String.valueOf(ctx.IDENTIFIER().getText()), |
94 | - ParsableDataType.SUB_MODULE_DATA, | 95 | + EXIT); |
95 | - String.valueOf(ctx.IDENTIFIER().getText()), | ||
96 | - ListenerErrorLocation.EXIT); | ||
97 | 96 | ||
98 | if (!(listener.getParsedDataStack().peek() instanceof YangSubModule)) { | 97 | if (!(listener.getParsedDataStack().peek() instanceof YangSubModule)) { |
99 | - throw new ParserException( | 98 | + throw new ParserException(constructListenerErrorMessage(MISSING_CURRENT_HOLDER, SUB_MODULE_DATA, |
100 | - ListenerErrorMessageConstruction | 99 | + String.valueOf(ctx.IDENTIFIER().getText()), EXIT)); |
101 | - .constructListenerErrorMessage(ListenerErrorType.MISSING_CURRENT_HOLDER, | ||
102 | - ParsableDataType.SUB_MODULE_DATA, | ||
103 | - String.valueOf(ctx.IDENTIFIER() | ||
104 | - .getText()), | ||
105 | - ListenerErrorLocation.EXIT)); | ||
106 | } | 100 | } |
107 | } | 101 | } |
108 | -} | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
102 | +} | ... | ... |
... | @@ -19,14 +19,16 @@ package org.onosproject.yangutils.parser.impl.listeners; | ... | @@ -19,14 +19,16 @@ package org.onosproject.yangutils.parser.impl.listeners; |
19 | import org.onosproject.yangutils.datamodel.YangModule; | 19 | import org.onosproject.yangutils.datamodel.YangModule; |
20 | import org.onosproject.yangutils.datamodel.YangSubModule; | 20 | import org.onosproject.yangutils.datamodel.YangSubModule; |
21 | import org.onosproject.yangutils.parser.Parsable; | 21 | import org.onosproject.yangutils.parser.Parsable; |
22 | -import org.onosproject.yangutils.parser.ParsableDataType; | ||
23 | import org.onosproject.yangutils.parser.antlrgencode.GeneratedYangParser; | 22 | import org.onosproject.yangutils.parser.antlrgencode.GeneratedYangParser; |
24 | import org.onosproject.yangutils.parser.exceptions.ParserException; | 23 | import org.onosproject.yangutils.parser.exceptions.ParserException; |
25 | import org.onosproject.yangutils.parser.impl.TreeWalkListener; | 24 | import org.onosproject.yangutils.parser.impl.TreeWalkListener; |
26 | -import org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorLocation; | 25 | + |
27 | -import org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorMessageConstruction; | 26 | +import static org.onosproject.yangutils.parser.ParsableDataType.VERSION_DATA; |
28 | -import org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorType; | 27 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorLocation.ENTRY; |
29 | -import org.onosproject.yangutils.parser.impl.parserutils.ListenerValidation; | 28 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorMessageConstruction.constructListenerErrorMessage; |
29 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorType.INVALID_HOLDER; | ||
30 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorType.MISSING_HOLDER; | ||
31 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerValidation.checkStackIsNotEmpty; | ||
30 | 32 | ||
31 | /* | 33 | /* |
32 | * Reference: RFC6020 and YANG ANTLR Grammar | 34 | * Reference: RFC6020 and YANG ANTLR Grammar |
... | @@ -73,9 +75,8 @@ public final class VersionListener { | ... | @@ -73,9 +75,8 @@ public final class VersionListener { |
73 | } | 75 | } |
74 | 76 | ||
75 | /** | 77 | /** |
76 | - * It is called when parser receives an input matching the grammar | 78 | + * It is called when parser receives an input matching the grammar rule |
77 | - * rule (version), perform validations and update the data model | 79 | + * (version), perform validations and update the data model tree. |
78 | - * tree. | ||
79 | * | 80 | * |
80 | * @param listener Listener's object. | 81 | * @param listener Listener's object. |
81 | * @param ctx context object of the grammar rule. | 82 | * @param ctx context object of the grammar rule. |
... | @@ -84,9 +85,7 @@ public final class VersionListener { | ... | @@ -84,9 +85,7 @@ public final class VersionListener { |
84 | GeneratedYangParser.YangVersionStatementContext ctx) { | 85 | GeneratedYangParser.YangVersionStatementContext ctx) { |
85 | 86 | ||
86 | // Check for stack to be non empty. | 87 | // Check for stack to be non empty. |
87 | - ListenerValidation | 88 | + checkStackIsNotEmpty(listener, MISSING_HOLDER, VERSION_DATA, String.valueOf(ctx.INTEGER().getText()), ENTRY); |
88 | - .checkStackIsNotEmpty(listener, ListenerErrorType.MISSING_HOLDER, ParsableDataType.VERSION_DATA, | ||
89 | - String.valueOf(ctx.INTEGER().getText()), ListenerErrorLocation.ENTRY); | ||
90 | 89 | ||
91 | Integer version = Integer.valueOf(ctx.INTEGER().getText()); | 90 | Integer version = Integer.valueOf(ctx.INTEGER().getText()); |
92 | if (!isVersionValid(version)) { | 91 | if (!isVersionValid(version)) { |
... | @@ -110,10 +109,8 @@ public final class VersionListener { | ... | @@ -110,10 +109,8 @@ public final class VersionListener { |
110 | break; | 109 | break; |
111 | } | 110 | } |
112 | default: | 111 | default: |
113 | - throw new ParserException(ListenerErrorMessageConstruction. | 112 | + throw new ParserException(constructListenerErrorMessage(INVALID_HOLDER, VERSION_DATA, |
114 | - constructListenerErrorMessage(ListenerErrorType.INVALID_HOLDER, | 113 | + String.valueOf(ctx.INTEGER().getText()), ENTRY)); |
115 | - ParsableDataType.VERSION_DATA, String.valueOf(ctx.INTEGER().getText()), | ||
116 | - ListenerErrorLocation.ENTRY)); | ||
117 | } | 114 | } |
118 | } | 115 | } |
119 | 116 | ||
... | @@ -126,4 +123,4 @@ public final class VersionListener { | ... | @@ -126,4 +123,4 @@ public final class VersionListener { |
126 | private static boolean isVersionValid(Integer version) { | 123 | private static boolean isVersionValid(Integer version) { |
127 | return version == 1; | 124 | return version == 1; |
128 | } | 125 | } |
129 | -} | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
126 | +} | ... | ... |
... | @@ -18,6 +18,10 @@ package org.onosproject.yangutils.parser.impl.parserutils; | ... | @@ -18,6 +18,10 @@ package org.onosproject.yangutils.parser.impl.parserutils; |
18 | 18 | ||
19 | import org.onosproject.yangutils.parser.ParsableDataType; | 19 | import org.onosproject.yangutils.parser.ParsableDataType; |
20 | 20 | ||
21 | +import static org.onosproject.yangutils.parser.ParsableDataType.getParsableDataType; | ||
22 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorLocation.getErrorLocationMessage; | ||
23 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorType.getErrorType; | ||
24 | + | ||
21 | /** | 25 | /** |
22 | * It's a utility to help construct detailed error message. | 26 | * It's a utility to help construct detailed error message. |
23 | */ | 27 | */ |
... | @@ -30,13 +34,15 @@ public final class ListenerErrorMessageConstruction { | ... | @@ -30,13 +34,15 @@ public final class ListenerErrorMessageConstruction { |
30 | } | 34 | } |
31 | 35 | ||
32 | /** | 36 | /** |
33 | - * Constructs message for error with extended information and returns the same. | 37 | + * Constructs message for error with extended information and returns the |
38 | + * same. | ||
34 | * | 39 | * |
35 | - * @param errorType error type needs to be set in error message. | 40 | + * @param errorType error type needs to be set in error message. |
36 | - * @param parsableDataType type of parsable data in which error occurred. | 41 | + * @param parsableDataType type of parsable data in which error occurred. |
37 | - * @param parsableDataTypeName identifier/string of parsable data type in which error occurred. | 42 | + * @param parsableDataTypeName identifier/string of parsable data type in |
38 | - * @param errorLocation location where error occurred. | 43 | + * which error occurred. |
39 | - * @param extendedErrorInformation extended error information. | 44 | + * @param errorLocation location where error occurred. |
45 | + * @param extendedErrorInformation extended error information. | ||
40 | * @return constructed error message. | 46 | * @return constructed error message. |
41 | */ | 47 | */ |
42 | public static String constructExtendedListenerErrorMessage(ListenerErrorType errorType, | 48 | public static String constructExtendedListenerErrorMessage(ListenerErrorType errorType, |
... | @@ -46,16 +52,21 @@ public final class ListenerErrorMessageConstruction { | ... | @@ -46,16 +52,21 @@ public final class ListenerErrorMessageConstruction { |
46 | String extendedErrorInformation) { | 52 | String extendedErrorInformation) { |
47 | String newErrorMessage; | 53 | String newErrorMessage; |
48 | newErrorMessage = constructListenerErrorMessage(errorType, parsableDataType, parsableDataTypeName, | 54 | newErrorMessage = constructListenerErrorMessage(errorType, parsableDataType, parsableDataTypeName, |
49 | - errorLocation) + "\n" + "Error Information: " + extendedErrorInformation; | 55 | + errorLocation) |
56 | + + "\n" | ||
57 | + + "Error Information: " | ||
58 | + + extendedErrorInformation; | ||
50 | return newErrorMessage; | 59 | return newErrorMessage; |
51 | } | 60 | } |
52 | 61 | ||
53 | /** | 62 | /** |
54 | - * Constructs message for error during listener based tree walk and returns the same. | 63 | + * Constructs message for error during listener based tree walk and returns |
64 | + * the same. | ||
55 | * | 65 | * |
56 | * @param errorType error type needs to be set in error message. | 66 | * @param errorType error type needs to be set in error message. |
57 | * @param parsableDataType type of parsable data in which error occurred. | 67 | * @param parsableDataType type of parsable data in which error occurred. |
58 | - * @param parsableDataTypeName identifier/string of parsable data type in which error occurred. | 68 | + * @param parsableDataTypeName identifier/string of parsable data type in |
69 | + * which error occurred. | ||
59 | * @param errorLocation location where error occurred. | 70 | * @param errorLocation location where error occurred. |
60 | * @return constructed error message. | 71 | * @return constructed error message. |
61 | */ | 72 | */ |
... | @@ -66,9 +77,8 @@ public final class ListenerErrorMessageConstruction { | ... | @@ -66,9 +77,8 @@ public final class ListenerErrorMessageConstruction { |
66 | 77 | ||
67 | String errorMessage; | 78 | String errorMessage; |
68 | 79 | ||
69 | - errorMessage = "Internal parser error detected: " + ListenerErrorType.getErrorType(errorType) + " " | 80 | + errorMessage = "Internal parser error detected: " + getErrorType(errorType) + " " |
70 | - + ParsableDataType.getParsableDataType(parsableDataType); | 81 | + + getParsableDataType(parsableDataType); |
71 | - | ||
72 | 82 | ||
73 | if (!parsableDataTypeName.isEmpty()) { | 83 | if (!parsableDataTypeName.isEmpty()) { |
74 | errorMessage = errorMessage + " \"" + parsableDataTypeName + "\" "; | 84 | errorMessage = errorMessage + " \"" + parsableDataTypeName + "\" "; |
... | @@ -76,7 +86,7 @@ public final class ListenerErrorMessageConstruction { | ... | @@ -76,7 +86,7 @@ public final class ListenerErrorMessageConstruction { |
76 | errorMessage = errorMessage + " "; | 86 | errorMessage = errorMessage + " "; |
77 | 87 | ||
78 | } | 88 | } |
79 | - errorMessage = errorMessage + ListenerErrorLocation.getErrorLocationMessage(errorLocation) + " processing."; | 89 | + errorMessage = errorMessage + getErrorLocationMessage(errorLocation) + " processing."; |
80 | return errorMessage; | 90 | return errorMessage; |
81 | } | 91 | } |
82 | -} | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
92 | +} | ... | ... |
... | @@ -19,6 +19,7 @@ package org.onosproject.yangutils.parser.impl.parserutils; | ... | @@ -19,6 +19,7 @@ package org.onosproject.yangutils.parser.impl.parserutils; |
19 | import org.onosproject.yangutils.parser.ParsableDataType; | 19 | import org.onosproject.yangutils.parser.ParsableDataType; |
20 | import org.onosproject.yangutils.parser.exceptions.ParserException; | 20 | import org.onosproject.yangutils.parser.exceptions.ParserException; |
21 | import org.onosproject.yangutils.parser.impl.TreeWalkListener; | 21 | import org.onosproject.yangutils.parser.impl.TreeWalkListener; |
22 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorMessageConstruction.constructListenerErrorMessage; | ||
22 | 23 | ||
23 | /** | 24 | /** |
24 | * It's a utility to carry out listener validation. | 25 | * It's a utility to carry out listener validation. |
... | @@ -37,19 +38,21 @@ public final class ListenerValidation { | ... | @@ -37,19 +38,21 @@ public final class ListenerValidation { |
37 | * @param listener Listener's object. | 38 | * @param listener Listener's object. |
38 | * @param errorType error type needs to be set in error message. | 39 | * @param errorType error type needs to be set in error message. |
39 | * @param parsableDataType type of parsable data in which error occurred. | 40 | * @param parsableDataType type of parsable data in which error occurred. |
40 | - * @param parsableDataTypeName name of parsable data type in which error occurred. | 41 | + * @param parsableDataTypeName name of parsable data type in which error |
42 | + * occurred. | ||
41 | * @param errorLocation location where error occurred. | 43 | * @param errorLocation location where error occurred. |
42 | */ | 44 | */ |
43 | public static void checkStackIsNotEmpty(TreeWalkListener listener, ListenerErrorType errorType, | 45 | public static void checkStackIsNotEmpty(TreeWalkListener listener, ListenerErrorType errorType, |
44 | - ParsableDataType parsableDataType, String parsableDataTypeName, | 46 | + ParsableDataType parsableDataType, String parsableDataTypeName, |
45 | - ListenerErrorLocation errorLocation) { | 47 | + ListenerErrorLocation errorLocation) { |
46 | if (listener.getParsedDataStack().empty()) { | 48 | if (listener.getParsedDataStack().empty()) { |
47 | /* | 49 | /* |
48 | - * If stack is empty it indicates error condition, value of parsableDataTypeName will be null in case there | 50 | + * If stack is empty it indicates error condition, value of |
49 | - * is no name attached to parsable data type. | 51 | + * parsableDataTypeName will be null in case there is no name |
52 | + * attached to parsable data type. | ||
50 | */ | 53 | */ |
51 | - String message = ListenerErrorMessageConstruction.constructListenerErrorMessage(errorType, parsableDataType, | 54 | + String message = constructListenerErrorMessage(errorType, parsableDataType, parsableDataTypeName, |
52 | - parsableDataTypeName, errorLocation); | 55 | + errorLocation); |
53 | throw new ParserException(message); | 56 | throw new ParserException(message); |
54 | } | 57 | } |
55 | } | 58 | } |
... | @@ -60,22 +63,24 @@ public final class ListenerValidation { | ... | @@ -60,22 +63,24 @@ public final class ListenerValidation { |
60 | * @param listener Listener's object. | 63 | * @param listener Listener's object. |
61 | * @param errorType error type needs to be set in error message. | 64 | * @param errorType error type needs to be set in error message. |
62 | * @param parsableDataType type of parsable data in which error occurred. | 65 | * @param parsableDataType type of parsable data in which error occurred. |
63 | - * @param parsableDataTypeName name of parsable data type in which error occurred. | 66 | + * @param parsableDataTypeName name of parsable data type in which error |
67 | + * occurred. | ||
64 | * @param errorLocation location where error occurred. | 68 | * @param errorLocation location where error occurred. |
65 | */ | 69 | */ |
66 | 70 | ||
67 | public static void checkStackIsEmpty(TreeWalkListener listener, ListenerErrorType errorType, | 71 | public static void checkStackIsEmpty(TreeWalkListener listener, ListenerErrorType errorType, |
68 | - ParsableDataType parsableDataType, String parsableDataTypeName, | 72 | + ParsableDataType parsableDataType, String parsableDataTypeName, |
69 | - ListenerErrorLocation errorLocation) { | 73 | + ListenerErrorLocation errorLocation) { |
70 | 74 | ||
71 | if (!listener.getParsedDataStack().empty()) { | 75 | if (!listener.getParsedDataStack().empty()) { |
72 | /* | 76 | /* |
73 | - * If stack is empty it indicates error condition, value of parsableDataTypeName will be null in case there | 77 | + * If stack is empty it indicates error condition, value of |
74 | - * is no name attached to parsable data type. | 78 | + * parsableDataTypeName will be null in case there is no name |
79 | + * attached to parsable data type. | ||
75 | */ | 80 | */ |
76 | - String message = ListenerErrorMessageConstruction.constructListenerErrorMessage(errorType, parsableDataType, | 81 | + String message = constructListenerErrorMessage(errorType, parsableDataType, parsableDataTypeName, |
77 | - parsableDataTypeName, errorLocation); | 82 | + errorLocation); |
78 | throw new ParserException(message); | 83 | throw new ParserException(message); |
79 | } | 84 | } |
80 | } | 85 | } |
81 | -} | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
86 | +} | ... | ... |
... | @@ -17,13 +17,14 @@ | ... | @@ -17,13 +17,14 @@ |
17 | package org.onosproject.yangutils.parser.parseutils; | 17 | package org.onosproject.yangutils.parser.parseutils; |
18 | 18 | ||
19 | import org.junit.Test; | 19 | import org.junit.Test; |
20 | -import org.onosproject.yangutils.parser.ParsableDataType; | ||
21 | -import org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorLocation; | ||
22 | -import org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorMessageConstruction; | ||
23 | -import org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorType; | ||
24 | 20 | ||
25 | import static org.hamcrest.core.Is.is; | 21 | import static org.hamcrest.core.Is.is; |
26 | import static org.junit.Assert.assertThat; | 22 | import static org.junit.Assert.assertThat; |
23 | +import static org.onosproject.yangutils.parser.ParsableDataType.CONTACT_DATA; | ||
24 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorLocation.ENTRY; | ||
25 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorMessageConstruction.constructExtendedListenerErrorMessage; | ||
26 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorMessageConstruction.constructListenerErrorMessage; | ||
27 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorType.INVALID_HOLDER; | ||
27 | 28 | ||
28 | /** | 29 | /** |
29 | * Test case for testing listener error message construction util. | 30 | * Test case for testing listener error message construction util. |
... | @@ -37,9 +38,7 @@ public class ListenerErrorMessageConstructionTest { | ... | @@ -37,9 +38,7 @@ public class ListenerErrorMessageConstructionTest { |
37 | public void checkErrorMsgConstructionWithName() { | 38 | public void checkErrorMsgConstructionWithName() { |
38 | 39 | ||
39 | // Create an test error message | 40 | // Create an test error message |
40 | - String testErrorMessage = ListenerErrorMessageConstruction | 41 | + String testErrorMessage = constructListenerErrorMessage(INVALID_HOLDER, CONTACT_DATA, "Test Instance", ENTRY); |
41 | - .constructListenerErrorMessage(ListenerErrorType.INVALID_HOLDER, ParsableDataType.CONTACT_DATA, | ||
42 | - "Test Instance", ListenerErrorLocation.ENTRY); | ||
43 | 42 | ||
44 | // Check message. | 43 | // Check message. |
45 | assertThat(testErrorMessage, is("Internal parser error detected: Invalid holder for contact " | 44 | assertThat(testErrorMessage, is("Internal parser error detected: Invalid holder for contact " |
... | @@ -53,9 +52,7 @@ public class ListenerErrorMessageConstructionTest { | ... | @@ -53,9 +52,7 @@ public class ListenerErrorMessageConstructionTest { |
53 | public void checkErrorMsgConstructionWithoutName() { | 52 | public void checkErrorMsgConstructionWithoutName() { |
54 | 53 | ||
55 | // Create an test error message | 54 | // Create an test error message |
56 | - String testErrorMessage = ListenerErrorMessageConstruction | 55 | + String testErrorMessage = constructListenerErrorMessage(INVALID_HOLDER, CONTACT_DATA, "Test Instance", ENTRY); |
57 | - .constructListenerErrorMessage(ListenerErrorType.INVALID_HOLDER, ParsableDataType.CONTACT_DATA, | ||
58 | - "Test Instance", ListenerErrorLocation.ENTRY); | ||
59 | 56 | ||
60 | // Check message. | 57 | // Check message. |
61 | assertThat(testErrorMessage, | 58 | assertThat(testErrorMessage, |
... | @@ -64,16 +61,16 @@ public class ListenerErrorMessageConstructionTest { | ... | @@ -64,16 +61,16 @@ public class ListenerErrorMessageConstructionTest { |
64 | } | 61 | } |
65 | 62 | ||
66 | /** | 63 | /** |
67 | - * Checks for extended error message construction with parsable data type name. | 64 | + * Checks for extended error message construction with parsable data type |
65 | + * name. | ||
68 | */ | 66 | */ |
69 | @Test | 67 | @Test |
70 | public void checkExtendedErrorMsgConstructionWithName() { | 68 | public void checkExtendedErrorMsgConstructionWithName() { |
71 | 69 | ||
72 | // Create an test error message | 70 | // Create an test error message |
73 | - String testErrorMessage = ListenerErrorMessageConstruction | 71 | + String testErrorMessage = constructExtendedListenerErrorMessage(INVALID_HOLDER, CONTACT_DATA, |
74 | - .constructExtendedListenerErrorMessage(ListenerErrorType.INVALID_HOLDER, | 72 | + "Test Instance", ENTRY, |
75 | - ParsableDataType.CONTACT_DATA, "Test Instance", | 73 | + "Extended Information"); |
76 | - ListenerErrorLocation.ENTRY, "Extended Information"); | ||
77 | 74 | ||
78 | // Check message. | 75 | // Check message. |
79 | assertThat(testErrorMessage, | 76 | assertThat(testErrorMessage, |
... | @@ -82,19 +79,18 @@ public class ListenerErrorMessageConstructionTest { | ... | @@ -82,19 +79,18 @@ public class ListenerErrorMessageConstructionTest { |
82 | } | 79 | } |
83 | 80 | ||
84 | /** | 81 | /** |
85 | - * Checks for extended error message construction without parsable data type name. | 82 | + * Checks for extended error message construction without parsable data type |
83 | + * name. | ||
86 | */ | 84 | */ |
87 | @Test | 85 | @Test |
88 | public void checkExtendedErrorMsgConstructionWithoutName() { | 86 | public void checkExtendedErrorMsgConstructionWithoutName() { |
89 | 87 | ||
90 | // Create an test error message | 88 | // Create an test error message |
91 | - String testErrorMessage = ListenerErrorMessageConstruction | 89 | + String testErrorMessage = constructExtendedListenerErrorMessage(INVALID_HOLDER, CONTACT_DATA, "", ENTRY, |
92 | - .constructExtendedListenerErrorMessage(ListenerErrorType.INVALID_HOLDER, | 90 | + "Extended Information"); |
93 | - ParsableDataType.CONTACT_DATA, "", | ||
94 | - ListenerErrorLocation.ENTRY, "Extended Information"); | ||
95 | 91 | ||
96 | // Check message. | 92 | // Check message. |
97 | assertThat(testErrorMessage, is("Internal parser error detected: Invalid holder for contact" | 93 | assertThat(testErrorMessage, is("Internal parser error detected: Invalid holder for contact" |
98 | + " before processing.\n" + "Error Information: Extended Information")); | 94 | + " before processing.\n" + "Error Information: Extended Information")); |
99 | } | 95 | } |
100 | -} | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
96 | +} | ... | ... |
... | @@ -20,13 +20,15 @@ import org.junit.Rule; | ... | @@ -20,13 +20,15 @@ import org.junit.Rule; |
20 | import org.junit.Test; | 20 | import org.junit.Test; |
21 | import org.junit.rules.ExpectedException; | 21 | import org.junit.rules.ExpectedException; |
22 | import org.onosproject.yangutils.datamodel.YangRevision; | 22 | import org.onosproject.yangutils.datamodel.YangRevision; |
23 | -import org.onosproject.yangutils.parser.ParsableDataType; | ||
24 | import org.onosproject.yangutils.parser.exceptions.ParserException; | 23 | import org.onosproject.yangutils.parser.exceptions.ParserException; |
25 | import org.onosproject.yangutils.parser.impl.TreeWalkListener; | 24 | import org.onosproject.yangutils.parser.impl.TreeWalkListener; |
26 | -import org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorLocation; | 25 | + |
27 | -import org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorMessageConstruction; | 26 | +import static org.onosproject.yangutils.parser.ParsableDataType.YANGBASE_DATA; |
28 | -import org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorType; | 27 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorLocation.EXIT; |
29 | -import org.onosproject.yangutils.parser.impl.parserutils.ListenerValidation; | 28 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorMessageConstruction.constructListenerErrorMessage; |
29 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerErrorType.MISSING_HOLDER; | ||
30 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerValidation.checkStackIsEmpty; | ||
31 | +import static org.onosproject.yangutils.parser.impl.parserutils.ListenerValidation.checkStackIsNotEmpty; | ||
30 | 32 | ||
31 | /** | 33 | /** |
32 | * Test case for testing listener validation util. | 34 | * Test case for testing listener validation util. |
... | @@ -43,9 +45,7 @@ public class ListenerValidationTest { | ... | @@ -43,9 +45,7 @@ public class ListenerValidationTest { |
43 | @Test | 45 | @Test |
44 | public void validateStackIsNotEmptyForEmptyStack() { | 46 | public void validateStackIsNotEmptyForEmptyStack() { |
45 | 47 | ||
46 | - String expectedError = ListenerErrorMessageConstruction | 48 | + String expectedError = constructListenerErrorMessage(MISSING_HOLDER, YANGBASE_DATA, "", EXIT); |
47 | - .constructListenerErrorMessage(ListenerErrorType.MISSING_HOLDER, ParsableDataType.YANGBASE_DATA, "", | ||
48 | - ListenerErrorLocation.EXIT); | ||
49 | 49 | ||
50 | // Get the exception occurred during parsing. | 50 | // Get the exception occurred during parsing. |
51 | thrown.expect(ParserException.class); | 51 | thrown.expect(ParserException.class); |
... | @@ -54,13 +54,12 @@ public class ListenerValidationTest { | ... | @@ -54,13 +54,12 @@ public class ListenerValidationTest { |
54 | // Create test walker and assign test error to it. | 54 | // Create test walker and assign test error to it. |
55 | TreeWalkListener testWalker = new TreeWalkListener(); | 55 | TreeWalkListener testWalker = new TreeWalkListener(); |
56 | 56 | ||
57 | - ListenerValidation.checkStackIsNotEmpty(testWalker, ListenerErrorType.MISSING_HOLDER, | 57 | + checkStackIsNotEmpty(testWalker, MISSING_HOLDER, YANGBASE_DATA, "", EXIT); |
58 | - ParsableDataType.YANGBASE_DATA, "", ListenerErrorLocation.EXIT); | ||
59 | } | 58 | } |
60 | 59 | ||
61 | /** | 60 | /** |
62 | - * Checks if there is no exception in case parsable stack is not empty while validating | 61 | + * Checks if there is no exception in case parsable stack is not empty while |
63 | - * for not empty scenario. | 62 | + * validating for not empty scenario. |
64 | */ | 63 | */ |
65 | @Test | 64 | @Test |
66 | public void validateStackIsNotEmptyForNonEmptyStack() { | 65 | public void validateStackIsNotEmptyForNonEmptyStack() { |
... | @@ -72,8 +71,7 @@ public class ListenerValidationTest { | ... | @@ -72,8 +71,7 @@ public class ListenerValidationTest { |
72 | YangRevision tmpNode = new YangRevision(); | 71 | YangRevision tmpNode = new YangRevision(); |
73 | testWalker.getParsedDataStack().push(tmpNode); | 72 | testWalker.getParsedDataStack().push(tmpNode); |
74 | 73 | ||
75 | - ListenerValidation.checkStackIsNotEmpty(testWalker, ListenerErrorType.MISSING_HOLDER, | 74 | + checkStackIsNotEmpty(testWalker, MISSING_HOLDER, YANGBASE_DATA, "", EXIT); |
76 | - ParsableDataType.YANGBASE_DATA, "", ListenerErrorLocation.EXIT); | ||
77 | } | 75 | } |
78 | 76 | ||
79 | /** | 77 | /** |
... | @@ -83,9 +81,7 @@ public class ListenerValidationTest { | ... | @@ -83,9 +81,7 @@ public class ListenerValidationTest { |
83 | @Test | 81 | @Test |
84 | public void validateStackIsEmptyForNonEmptyStack() { | 82 | public void validateStackIsEmptyForNonEmptyStack() { |
85 | 83 | ||
86 | - String expectedError = ListenerErrorMessageConstruction | 84 | + String expectedError = constructListenerErrorMessage(MISSING_HOLDER, YANGBASE_DATA, "", EXIT); |
87 | - .constructListenerErrorMessage(ListenerErrorType.MISSING_HOLDER, ParsableDataType.YANGBASE_DATA, "", | ||
88 | - ListenerErrorLocation.EXIT); | ||
89 | 85 | ||
90 | // Get the exception occurred during parsing. | 86 | // Get the exception occurred during parsing. |
91 | thrown.expect(ParserException.class); | 87 | thrown.expect(ParserException.class); |
... | @@ -98,13 +94,12 @@ public class ListenerValidationTest { | ... | @@ -98,13 +94,12 @@ public class ListenerValidationTest { |
98 | YangRevision tmpNode = new YangRevision(); | 94 | YangRevision tmpNode = new YangRevision(); |
99 | testWalker.getParsedDataStack().push(tmpNode); | 95 | testWalker.getParsedDataStack().push(tmpNode); |
100 | 96 | ||
101 | - ListenerValidation.checkStackIsEmpty(testWalker, ListenerErrorType.MISSING_HOLDER, | 97 | + checkStackIsEmpty(testWalker, MISSING_HOLDER, YANGBASE_DATA, "", EXIT); |
102 | - ParsableDataType.YANGBASE_DATA, "", ListenerErrorLocation.EXIT); | ||
103 | } | 98 | } |
104 | 99 | ||
105 | /** | 100 | /** |
106 | - * Checks if there is no exception in case parsable stack is empty while validating | 101 | + * Checks if there is no exception in case parsable stack is empty while |
107 | - * for empty scenario. | 102 | + * validating for empty scenario. |
108 | */ | 103 | */ |
109 | @Test | 104 | @Test |
110 | public void validateStackIsEmptyForEmptyStack() { | 105 | public void validateStackIsEmptyForEmptyStack() { |
... | @@ -112,7 +107,6 @@ public class ListenerValidationTest { | ... | @@ -112,7 +107,6 @@ public class ListenerValidationTest { |
112 | // Create test walker and assign test error to it. | 107 | // Create test walker and assign test error to it. |
113 | TreeWalkListener testWalker = new TreeWalkListener(); | 108 | TreeWalkListener testWalker = new TreeWalkListener(); |
114 | 109 | ||
115 | - ListenerValidation.checkStackIsEmpty(testWalker, ListenerErrorType.MISSING_HOLDER, | 110 | + checkStackIsEmpty(testWalker, MISSING_HOLDER, YANGBASE_DATA, "", EXIT); |
116 | - ParsableDataType.YANGBASE_DATA, "", ListenerErrorLocation.EXIT); | ||
117 | } | 111 | } |
118 | -} | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
112 | +} | ... | ... |
-
Please register or login to post a comment