Refactor InferenceAction
[yangtools.git] / yang / yang-parser-impl / src / main / java / org / opendaylight / yangtools / yang / parser / stmt / rfc6020 / BelongsToStatementImpl.java
index 0aa835b46c1f779bc1253ad2245d69b9fc7f616c..97faf388ccda5ac0399d50d00e0f46e2bdec3f29 100644 (file)
@@ -23,6 +23,7 @@ import org.opendaylight.yangtools.yang.parser.spi.meta.AbstractStatementSupport;
 import org.opendaylight.yangtools.yang.parser.spi.meta.InferenceException;
 import org.opendaylight.yangtools.yang.parser.spi.meta.ModelActionBuilder;
 import org.opendaylight.yangtools.yang.parser.spi.meta.ModelActionBuilder.InferenceAction;
+import org.opendaylight.yangtools.yang.parser.spi.meta.ModelActionBuilder.InferenceContext;
 import org.opendaylight.yangtools.yang.parser.spi.meta.ModelProcessingPhase;
 import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext;
 import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContextUtils;
@@ -77,8 +78,8 @@ public class BelongsToStatementImpl extends AbstractDeclaredStatement<String>
 
             belongsToAction.apply(new InferenceAction() {
                 @Override
-                public void apply() {
-                    StmtContext<?, ?, ?> belongsToModuleCtx = belongsToPrereq.get();
+                public void apply(final InferenceContext ctx) {
+                    StmtContext<?, ?, ?> belongsToModuleCtx = belongsToPrereq.resolve(ctx);
 
                     belongsToCtx.addToNs(BelongsToModuleContext.class, belongsToModuleIdentifier, belongsToModuleCtx);
                     belongsToCtx.addToNs(BelongsToPrefixToModuleIdentifier.class,
@@ -104,10 +105,8 @@ public class BelongsToStatementImpl extends AbstractDeclaredStatement<String>
         }
 
         @Override
-        public void onFullDefinitionDeclared(final StmtContext.Mutable<String, BelongsToStatement,
-                EffectiveStatement<String, BelongsToStatement>> stmt) {
-            super.onFullDefinitionDeclared(stmt);
-            SUBSTATEMENT_VALIDATOR.validate(stmt);
+        protected SubstatementValidator getSubstatementValidator() {
+            return SUBSTATEMENT_VALIDATOR;
         }
     }