Remove support for reading/writing SchemaPaths 11/102011/4
authorRobert Varga <robert.varga@pantheon.tech>
Mon, 8 Aug 2022 09:18:27 +0000 (11:18 +0200)
committerRobert Varga <nite@hq.sk>
Wed, 10 Aug 2022 09:21:50 +0000 (09:21 +0000)
SchemaPaths are no longer used anywhere downstream, remove support for
their IO.

JIRA: YANGTOOLS-1244
Change-Id: I8992ff3e789b8e9a007678b7a72b793db638db6d
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
codec/yang-data-codec-binfmt/src/main/java/org/opendaylight/yangtools/yang/data/codec/binfmt/AbstractNormalizedNodeDataInput.java
codec/yang-data-codec-binfmt/src/main/java/org/opendaylight/yangtools/yang/data/codec/binfmt/AbstractNormalizedNodeDataOutput.java
codec/yang-data-codec-binfmt/src/main/java/org/opendaylight/yangtools/yang/data/codec/binfmt/ForwardingNormalizedNodeDataInput.java
codec/yang-data-codec-binfmt/src/main/java/org/opendaylight/yangtools/yang/data/codec/binfmt/NormalizedNodeDataInput.java
codec/yang-data-codec-binfmt/src/main/java/org/opendaylight/yangtools/yang/data/codec/binfmt/NormalizedNodeDataOutput.java

index 1610e9ae4ea496263dd315d2419895511bc2222d..d0a44a66e117fed478a770a0b264a9c61a8be916 100644 (file)
@@ -10,12 +10,10 @@ package org.opendaylight.yangtools.yang.data.codec.binfmt;
 import static java.util.Objects.requireNonNull;
 
 import com.google.common.collect.ImmutableList;
-import com.google.common.collect.ImmutableList.Builder;
 import java.io.DataInput;
 import java.io.IOException;
 import org.eclipse.jdt.annotation.NonNull;
 import org.opendaylight.yangtools.yang.common.QName;
-import org.opendaylight.yangtools.yang.model.api.SchemaPath;
 import org.opendaylight.yangtools.yang.model.api.stmt.SchemaNodeIdentifier;
 import org.opendaylight.yangtools.yang.model.api.stmt.SchemaNodeIdentifier.Absolute;
 import org.opendaylight.yangtools.yang.model.api.stmt.SchemaNodeIdentifier.Descendant;
@@ -33,26 +31,16 @@ abstract class AbstractNormalizedNodeDataInput extends ForwardingDataInput imple
         return input;
     }
 
-    @Override
-    @Deprecated
-    public final SchemaPath readSchemaPath() throws IOException {
-        final boolean absolute = input.readBoolean();
-        return SchemaPath.create(readQNames(), absolute);
-    }
-
     @Override
     public final SchemaNodeIdentifier readSchemaNodeIdentifier() throws IOException {
         final boolean absolute = input.readBoolean();
-        final ImmutableList<QName> qnames = readQNames();
-        return absolute ? Absolute.of(qnames) : Descendant.of(qnames);
-    }
-
-    private ImmutableList<QName> readQNames() throws IOException {
         final int size = input.readInt();
-        final Builder<QName> qnames = ImmutableList.builderWithExpectedSize(size);
+        final var builder = ImmutableList.<QName>builderWithExpectedSize(size);
         for (int i = 0; i < size; ++i) {
-            qnames.add(readQName());
+            builder.add(readQName());
         }
-        return qnames.build();
+
+        final var qnames = builder.build();
+        return absolute ? Absolute.of(qnames) : Descendant.of(qnames);
     }
 }
index e03cb8655863c6f67e8f9fcd179aea8146bd1313..eb9a76ef796dc404111be5afba2048e719a1fe62 100755 (executable)
@@ -9,7 +9,6 @@ package org.opendaylight.yangtools.yang.data.codec.binfmt;
 
 import static java.util.Objects.requireNonNull;
 
-import com.google.common.collect.Iterables;
 import java.io.DataOutput;
 import java.io.IOException;
 import java.io.OutputStream;
@@ -21,7 +20,6 @@ import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgum
 import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode;
 import org.opendaylight.yangtools.yang.data.api.schema.stream.NormalizedNodeStreamWriter;
 import org.opendaylight.yangtools.yang.data.api.schema.stream.NormalizedNodeWriter;
-import org.opendaylight.yangtools.yang.model.api.SchemaPath;
 import org.opendaylight.yangtools.yang.model.api.stmt.SchemaNodeIdentifier;
 import org.opendaylight.yangtools.yang.model.api.stmt.SchemaNodeIdentifier.Absolute;
 
@@ -165,22 +163,13 @@ abstract class AbstractNormalizedNodeDataOutput implements NormalizedNodeDataOut
         writeYangInstanceIdentifierInternal(identifier);
     }
 
-    @Override
-    @Deprecated
-    public final void writeSchemaPath(final SchemaPath path) throws IOException {
-        writeSchemaNodeIdentifier(path.isAbsolute(), path.getPathFromRoot());
-    }
-
     @Override
     public final void writeSchemaNodeIdentifier(final SchemaNodeIdentifier path) throws IOException {
-        writeSchemaNodeIdentifier(path instanceof Absolute, path.getNodeIdentifiers());
-    }
-
-    private void writeSchemaNodeIdentifier(final boolean absolute, final Iterable<QName> qnames) throws IOException {
         ensureHeaderWritten();
 
-        output.writeBoolean(absolute);
-        output.writeInt(Iterables.size(qnames));
+        output.writeBoolean(path instanceof Absolute);
+        final var qnames = path.getNodeIdentifiers();
+        output.writeInt(qnames.size());
         for (QName qname : qnames) {
             writeQNameInternal(qname);
         }
index c725df17e45b7fbc76f74433a2511f26f082ba09..9527523b3de7e5ced2d74464ce985f9eccf67ced 100644 (file)
@@ -15,7 +15,6 @@ import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgum
 import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode;
 import org.opendaylight.yangtools.yang.data.api.schema.stream.NormalizedNodeStreamWriter;
 import org.opendaylight.yangtools.yang.data.api.schema.stream.ReusableStreamReceiver;
-import org.opendaylight.yangtools.yang.model.api.SchemaPath;
 import org.opendaylight.yangtools.yang.model.api.stmt.SchemaNodeIdentifier;
 
 abstract class ForwardingNormalizedNodeDataInput extends ForwardingDataInput implements NormalizedNodeDataInput {
@@ -53,12 +52,6 @@ abstract class ForwardingNormalizedNodeDataInput extends ForwardingDataInput imp
         return delegate().readPathArgument();
     }
 
-    @Override
-    @Deprecated(forRemoval = true)
-    public final SchemaPath readSchemaPath() throws IOException {
-        return delegate().readSchemaPath();
-    }
-
     @Override
     public final SchemaNodeIdentifier readSchemaNodeIdentifier() throws IOException {
         return delegate().readSchemaNodeIdentifier();
index 03bebc4652d3122632c8fb8af7c8c7017435e169..848e9328afe893ad1ea4875c43ec3b1bba01c170 100644 (file)
@@ -19,12 +19,11 @@ import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode;
 import org.opendaylight.yangtools.yang.data.api.schema.stream.NormalizedNodeStreamWriter;
 import org.opendaylight.yangtools.yang.data.api.schema.stream.ReusableStreamReceiver;
 import org.opendaylight.yangtools.yang.data.impl.schema.ReusableImmutableNormalizedNodeStreamWriter;
-import org.opendaylight.yangtools.yang.model.api.SchemaPath;
 import org.opendaylight.yangtools.yang.model.api.stmt.SchemaNodeIdentifier;
 
 /**
  * Interface for reading {@link NormalizedNode}s, {@link YangInstanceIdentifier}s, {@link PathArgument}s
- * and {@link SchemaPath}s.
+ * and {@link SchemaNodeIdentifier}s.
  */
 @Beta
 public interface NormalizedNodeDataInput extends QNameAwareDataInput {
@@ -70,9 +69,6 @@ public interface NormalizedNodeDataInput extends QNameAwareDataInput {
 
     PathArgument readPathArgument() throws IOException;
 
-    @Deprecated(since = "5.0.0", forRemoval = true)
-    SchemaPath readSchemaPath() throws IOException;
-
     SchemaNodeIdentifier readSchemaNodeIdentifier() throws IOException;
 
     /**
index d6da68ae805bb9f3db2fcf761dd4a3ee3f9256f5..bfb5b9c28d82d6edd164643b21a1a5e39e7f20d6 100644 (file)
@@ -15,12 +15,11 @@ import org.opendaylight.yangtools.yang.common.QName.QNameAwareDataOutput;
 import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier;
 import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.PathArgument;
 import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode;
-import org.opendaylight.yangtools.yang.model.api.SchemaPath;
 import org.opendaylight.yangtools.yang.model.api.stmt.SchemaNodeIdentifier;
 
 /**
  * Interface for emitting {@link NormalizedNode}s, {@link YangInstanceIdentifier}s, {@link PathArgument}s
- * and {@link SchemaPath}s.
+ * and {@link SchemaNodeIdentifier}s.
  */
 @Beta
 @NonNullByDefault
@@ -32,9 +31,6 @@ public interface NormalizedNodeDataOutput extends AutoCloseable, QNameAwareDataO
 
     void writeYangInstanceIdentifier(YangInstanceIdentifier identifier) throws IOException;
 
-    @Deprecated(since = "5.0.0", forRemoval = true)
-    void writeSchemaPath(SchemaPath path) throws IOException;
-
     void writeSchemaNodeIdentifier(SchemaNodeIdentifier path) throws IOException;
 
     @Override