Remove SchemaPath from TypeDefinition implementations
[yangtools.git] / yang / yang-model-util / src / main / java / org / opendaylight / yangtools / yang / model / util / type / AbstractTypeDefinition.java
index f4dd5949399dc86439eaccd36a0627d22e7188c8..b4ab82da8e733d6dd12784299ce98967b35fec24 100644 (file)
@@ -7,35 +7,28 @@
  */
 package org.opendaylight.yangtools.yang.model.util.type;
 
+import static java.util.Objects.requireNonNull;
+
 import com.google.common.collect.ImmutableList;
 import java.util.Collection;
 import org.eclipse.jdt.annotation.NonNull;
-import org.eclipse.jdt.annotation.Nullable;
 import org.opendaylight.yangtools.concepts.Immutable;
 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.TypeDefinition;
 import org.opendaylight.yangtools.yang.model.api.UnknownSchemaNode;
 
 abstract class AbstractTypeDefinition<T extends TypeDefinition<T>> implements Immutable, TypeDefinition<T> {
     private final @NonNull ImmutableList<UnknownSchemaNode> unknownSchemaNodes;
-    private final @Nullable SchemaPath path;
+    private final @NonNull QName qname;
 
-    AbstractTypeDefinition(final SchemaPath path, final Collection<? extends UnknownSchemaNode> unknownSchemaNodes) {
-        this.path = path;
+    AbstractTypeDefinition(final QName qname, final Collection<? extends UnknownSchemaNode> unknownSchemaNodes) {
+        this.qname = requireNonNull(qname);
         this.unknownSchemaNodes = ImmutableList.copyOf(unknownSchemaNodes);
     }
 
     @Override
     public final QName getQName() {
-        return path.getLastComponent();
-    }
-
-    @Override
-    @Deprecated
-    public final SchemaPath getPath() {
-        return SchemaNodeDefaults.throwUnsupportedIfNull(this, path);
+        return qname;
     }
 
     @Override