Remove getSemanticVersion()
[yangtools.git] / parser / yang-parser-rfc7950 / src / main / java / org / opendaylight / yangtools / yang / parser / rfc7950 / stmt / AbstractEffectiveModule.java
index aea840322ec7f100082269f0ad8cc8b7fc66113b..323587af5c780dca35a877317616e5eff5413cf5 100644 (file)
@@ -11,7 +11,6 @@ import static com.google.common.base.Verify.verifyNotNull;
 import static java.util.Objects.requireNonNull;
 
 import com.google.common.annotations.Beta;
-import com.google.common.base.MoreObjects;
 import com.google.common.collect.Collections2;
 import com.google.common.collect.ImmutableList;
 import com.google.common.collect.ImmutableMap.Builder;
@@ -21,10 +20,8 @@ import java.util.LinkedHashSet;
 import java.util.Optional;
 import java.util.Set;
 import org.eclipse.jdt.annotation.NonNull;
-import org.opendaylight.yangtools.concepts.SemVer;
-import org.opendaylight.yangtools.openconfig.model.api.OpenConfigVersionEffectiveStatement;
 import org.opendaylight.yangtools.yang.common.QName;
-import org.opendaylight.yangtools.yang.common.UnqualifiedQName;
+import org.opendaylight.yangtools.yang.common.UnresolvedQName.Unqualified;
 import org.opendaylight.yangtools.yang.common.YangVersion;
 import org.opendaylight.yangtools.yang.model.api.AugmentationSchemaNode;
 import org.opendaylight.yangtools.yang.model.api.DataSchemaNode;
@@ -50,7 +47,7 @@ import org.opendaylight.yangtools.yang.model.api.stmt.PrefixEffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.TypedefEffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.YangVersionEffectiveStatement;
 import org.opendaylight.yangtools.yang.model.api.stmt.compat.NotificationNodeContainerCompat;
-import org.opendaylight.yangtools.yang.model.spi.meta.AbstractDeclaredEffectiveStatement.DefaultWithDataTree;
+import org.opendaylight.yangtools.yang.model.spi.meta.AbstractDeclaredEffectiveStatement.DefaultWithDataTree.WithTypedefNamespace;
 import org.opendaylight.yangtools.yang.model.spi.meta.EffectiveStatementMixins.DocumentedNodeMixin;
 import org.opendaylight.yangtools.yang.parser.spi.meta.CommonStmtCtx;
 import org.opendaylight.yangtools.yang.parser.spi.meta.EffectiveStmtCtx.Current;
@@ -59,17 +56,16 @@ import org.opendaylight.yangtools.yang.parser.spi.source.ImportPrefixToModuleCtx
 import org.opendaylight.yangtools.yang.parser.spi.source.SourceException;
 
 @Beta
-public abstract class AbstractEffectiveModule<D extends DeclaredStatement<UnqualifiedQName>,
-        E extends DataTreeAwareEffectiveStatement<UnqualifiedQName, D>>
-        extends DefaultWithDataTree<UnqualifiedQName, D, E>
-        implements ModuleLike, DocumentedNodeMixin<UnqualifiedQName, D>,
-            NotificationNodeContainerCompat<UnqualifiedQName, D, E> {
+public abstract class AbstractEffectiveModule<D extends DeclaredStatement<Unqualified>,
+        E extends DataTreeAwareEffectiveStatement<Unqualified, D>>
+        extends WithTypedefNamespace<Unqualified, D>
+        implements ModuleLike, DocumentedNodeMixin<Unqualified, D>, NotificationNodeContainerCompat<Unqualified, D, E> {
     private final String prefix;
     private final ImmutableSet<GroupingDefinition> groupings;
     private final ImmutableSet<UsesNode> uses;
     private final ImmutableSet<TypeDefinition<?>> typeDefinitions;
 
-    protected AbstractEffectiveModule(final Current<UnqualifiedQName, D> stmt,
+    protected AbstractEffectiveModule(final Current<Unqualified, D> stmt,
             final ImmutableList<? extends EffectiveStatement<?, ?>> substatements, final String prefix) {
         super(stmt.declared(), substatements);
 
@@ -101,7 +97,7 @@ public abstract class AbstractEffectiveModule<D extends DeclaredStatement<Unqual
     }
 
     @Override
-    public UnqualifiedQName argument() {
+    public Unqualified argument() {
         return getDeclared().argument();
     }
 
@@ -197,22 +193,6 @@ public abstract class AbstractEffectiveModule<D extends DeclaredStatement<Unqual
         return uses;
     }
 
-    @Override
-    public Optional<SemVer> getSemanticVersion() {
-        return findFirstEffectiveSubstatementArgument(OpenConfigVersionEffectiveStatement.class);
-    }
-
-    @Override
-    public String toString() {
-        return MoreObjects.toStringHelper(this).omitNullValues()
-                .add("name", getName())
-                .add("namespace", getNamespace())
-                .add("revision", getRevision().orElse(null))
-                .add("prefix", prefix)
-                .add("yangVersion", getYangVersion())
-                .toString();
-    }
-
     protected static final @NonNull String findPrefix(final CommonStmtCtx stmt,
             final Collection<? extends EffectiveStatement<?, ?>> substatements, final String type, final String name) {
         return substatements.stream()