Refactor anydata-related interfaces
[yangtools.git] / yang / yang-data-util / src / main / java / org / opendaylight / yangtools / yang / data / util / ImmutableNormalizedAnydata.java
similarity index 64%
rename from yang/yang-data-util/src/main/java/org/opendaylight/yangtools/yang/data/util/NormalizedAnydata.java
rename to yang/yang-data-util/src/main/java/org/opendaylight/yangtools/yang/data/util/ImmutableNormalizedAnydata.java
index d831822291c7fa6729695a990b6df69679682b66..6c21226f711d1c99c9df2da662d44a849baae095 100644 (file)
@@ -12,32 +12,21 @@ import static java.util.Objects.requireNonNull;
 import com.google.common.annotations.Beta;
 import com.google.common.base.MoreObjects;
 import com.google.common.base.MoreObjects.ToStringHelper;
-import java.io.IOException;
 import org.eclipse.jdt.annotation.NonNullByDefault;
 import org.eclipse.jdt.annotation.Nullable;
-import org.opendaylight.yangtools.concepts.Immutable;
+import org.opendaylight.yangtools.yang.data.api.schema.NormalizedAnydata;
 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.DataSchemaNode;
 import org.opendaylight.yangtools.yang.model.api.SchemaContext;
-import org.opendaylight.yangtools.yang.model.api.SchemaContextProvider;
 
-/**
- * The contents of an {@code anydata} node in a normalized format. This representation acts as a schema-bound bridge
- * between the various (mostly parser-based) representations.
- *
- * <p>
- * Note this class (and all of its subclasses) rely on identity for their equality contract.
- */
 @Beta
 @NonNullByDefault
-public class NormalizedAnydata implements Immutable, SchemaContextProvider {
+public class ImmutableNormalizedAnydata implements NormalizedAnydata {
     private final SchemaContext schemaContext;
     private final DataSchemaNode contextNode;
     private final NormalizedNode<?, ?> data;
 
-    public NormalizedAnydata(final SchemaContext schemaContext, final DataSchemaNode contextNode,
+    public ImmutableNormalizedAnydata(final SchemaContext schemaContext, final DataSchemaNode contextNode,
             final NormalizedNode<?, ?> data) {
         this.schemaContext = requireNonNull(schemaContext);
         this.contextNode = requireNonNull(contextNode);
@@ -49,22 +38,16 @@ public class NormalizedAnydata implements Immutable, SchemaContextProvider {
         return schemaContext;
     }
 
+    @Override
     public final DataSchemaNode getContextNode() {
         return contextNode;
     }
 
+    @Override
     public final NormalizedNode<?, ?> getData() {
         return data;
     }
 
-    public final void writeTo(final NormalizedNodeStreamWriter writer) throws IOException {
-        writeTo(writer, true);
-    }
-
-    public void writeTo(final NormalizedNodeStreamWriter writer, final boolean orderKeyLeaves) throws IOException {
-        NormalizedNodeWriter.forStreamWriter(writer, orderKeyLeaves).write(data).flush();
-    }
-
     @Override
     public final int hashCode() {
         return super.hashCode();