Fix somar complaints in equals methods
[yangtools.git] / yang / rfc6643-parser-support / src / main / java / org / opendaylight / yangtools / rfc6643 / parser / DefValEffectiveStatementImpl.java
index 1ed84019984a0c9d5ce085f81a9bb2caa540b1f6..61f580ad101ec1fb22a0b3ef70d1023278c9ffea 100644 (file)
@@ -13,20 +13,21 @@ import org.opendaylight.yangtools.rfc6643.model.api.DefValEffectiveStatement;
 import org.opendaylight.yangtools.rfc6643.model.api.DefValSchemaNode;
 import org.opendaylight.yangtools.rfc6643.model.api.DefValStatement;
 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.parser.spi.meta.StmtContext;
+import org.opendaylight.yangtools.yang.parser.spi.meta.EffectiveStmtCtx.Current;
+import org.opendaylight.yangtools.yang.parser.spi.meta.SchemaPathSupport;
 
 final class DefValEffectiveStatementImpl extends UnknownEffectiveStatementBase<String, DefValStatement>
         implements DefValEffectiveStatement, DefValSchemaNode {
     private final SchemaPath path;
 
-    DefValEffectiveStatementImpl(final DefValStatement declared,
-            final ImmutableList<? extends EffectiveStatement<?, ?>> substatements,
-            final StmtContext<String, DefValStatement, ?> ctx) {
-        super(ctx.coerceStatementArgument(), declared, substatements, ctx);
-        path = ctx.coerceParentContext().getSchemaPath().get().createChild(getNodeType());
+    DefValEffectiveStatementImpl(final Current<String, DefValStatement> stmt,
+            final ImmutableList<? extends EffectiveStatement<?, ?>> substatements) {
+        super(stmt, substatements);
+        path = SchemaPathSupport.wrap(stmt.getEffectiveParent().getSchemaPath().createChild(getNodeType()));
     }
 
     @Override
@@ -37,7 +38,7 @@ final class DefValEffectiveStatementImpl extends UnknownEffectiveStatementBase<S
     @Override
     @Deprecated
     public SchemaPath getPath() {
-        return path;
+        return SchemaNodeDefaults.throwUnsupportedIfNull(this, path);
     }
 
     @Override
@@ -55,22 +56,11 @@ final class DefValEffectiveStatementImpl extends UnknownEffectiveStatementBase<S
         if (this == obj) {
             return true;
         }
-        if (obj == null) {
-            return false;
-        }
-        if (getClass() != obj.getClass()) {
+        if (!(obj instanceof DefValEffectiveStatementImpl)) {
             return false;
         }
         final DefValEffectiveStatementImpl other = (DefValEffectiveStatementImpl) obj;
-        if (!Objects.equals(path, other.path)) {
-            return false;
-        }
-        if (!Objects.equals(getNodeType(), other.getNodeType())) {
-            return false;
-        }
-        if (!Objects.equals(getNodeParameter(), other.getNodeParameter())) {
-            return false;
-        }
-        return true;
+        return Objects.equals(getNodeType(), other.getNodeType())
+            && Objects.equals(getNodeParameter(), other.getNodeParameter()) && Objects.equals(path, other.path);
     }
 }