Promote UnknownEffectiveStatementBase to yang-model-spi
[yangtools.git] / parser / rfc6643-parser-support / src / main / java / org / opendaylight / yangtools / rfc6643 / parser / DisplayHintEffectiveStatementImpl.java
index cb836ce2e50b266bea8047f106f861c86609b2eb..6174b45f0ccdf67fcd580bdbe3746f58ebc069ab 100644 (file)
@@ -13,21 +13,15 @@ import org.opendaylight.yangtools.rfc6643.model.api.DisplayHintEffectiveStatemen
 import org.opendaylight.yangtools.rfc6643.model.api.DisplayHintSchemaNode;
 import org.opendaylight.yangtools.rfc6643.model.api.DisplayHintStatement;
 import org.opendaylight.yangtools.yang.common.QName;
-import org.opendaylight.yangtools.yang.model.api.SchemaNodeDefaults;
-import org.opendaylight.yangtools.yang.model.api.SchemaPath;
 import org.opendaylight.yangtools.yang.model.api.meta.EffectiveStatement;
-import org.opendaylight.yangtools.yang.parser.rfc7950.stmt.UnknownEffectiveStatementBase;
+import org.opendaylight.yangtools.yang.model.spi.meta.AbstractEffectiveUnknownSchmemaNode;
 import org.opendaylight.yangtools.yang.parser.spi.meta.EffectiveStmtCtx.Current;
-import org.opendaylight.yangtools.yang.parser.spi.meta.SchemaPathSupport;
 
-final class DisplayHintEffectiveStatementImpl extends UnknownEffectiveStatementBase<String, DisplayHintStatement>
+final class DisplayHintEffectiveStatementImpl extends AbstractEffectiveUnknownSchmemaNode<String, DisplayHintStatement>
         implements DisplayHintEffectiveStatement, DisplayHintSchemaNode {
-    private final SchemaPath path;
-
     DisplayHintEffectiveStatementImpl(final Current<String, DisplayHintStatement> stmt,
             final ImmutableList<? extends EffectiveStatement<?, ?>> substatements) {
-        super(stmt, substatements);
-        path = SchemaPathSupport.toOptionalPath(stmt.getEffectiveParent().getSchemaPath().createChild(getNodeType()));
+        super(stmt.declared(), stmt.argument(), stmt.history(), substatements);
     }
 
     @Override
@@ -35,12 +29,6 @@ final class DisplayHintEffectiveStatementImpl extends UnknownEffectiveStatementB
         return getNodeType();
     }
 
-    @Override
-    @Deprecated
-    public SchemaPath getPath() {
-        return SchemaNodeDefaults.throwUnsupportedIfNull(this, path);
-    }
-
     @Override
     public DisplayHintEffectiveStatement asEffectiveStatement() {
         return this;
@@ -48,7 +36,7 @@ final class DisplayHintEffectiveStatementImpl extends UnknownEffectiveStatementB
 
     @Override
     public int hashCode() {
-        return Objects.hash(path, getNodeType(), getNodeParameter());
+        return Objects.hash(getNodeType(), getNodeParameter());
     }
 
     @Override
@@ -61,6 +49,6 @@ final class DisplayHintEffectiveStatementImpl extends UnknownEffectiveStatementB
         }
         final DisplayHintEffectiveStatementImpl other = (DisplayHintEffectiveStatementImpl) obj;
         return Objects.equals(getNodeType(), other.getNodeType())
-            && Objects.equals(getNodeParameter(), other.getNodeParameter()) && Objects.equals(path, other.path);
+            && Objects.equals(getNodeParameter(), other.getNodeParameter());
     }
 }