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);
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();