X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?p=controller.git;a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fsal-clustering-commons%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fcluster%2Fdatastore%2Fnode%2Futils%2Fstream%2FNormalizedNodeOutputStreamWriter.java;h=84e7f335874f5ccf4b01d48e942da526a621e16d;hp=5eaa7fc1b7cf1d9a82ae44a454f09cd8fa089853;hb=ba411b9ab99dc4420f2ba180a91a4e9a3af1d5d8;hpb=d2794d1ff53103a4e6863325e4eaf9e86da78ce1 diff --git a/opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/datastore/node/utils/stream/NormalizedNodeOutputStreamWriter.java b/opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/datastore/node/utils/stream/NormalizedNodeOutputStreamWriter.java index 5eaa7fc1b7..84e7f33587 100644 --- a/opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/datastore/node/utils/stream/NormalizedNodeOutputStreamWriter.java +++ b/opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/datastore/node/utils/stream/NormalizedNodeOutputStreamWriter.java @@ -5,14 +5,9 @@ * terms of the Eclipse Public License v1.0 which accompanies this distribution, * and is available at http://www.eclipse.org/legal/epl-v10.html */ - package org.opendaylight.controller.cluster.datastore.node.utils.stream; import java.io.DataOutput; -import java.io.IOException; -import java.util.HashMap; -import java.util.Map; -import org.opendaylight.yangtools.yang.common.QName; /** * NormalizedNodeOutputStreamWriter will be used by distributed datastore to send normalized node in @@ -25,42 +20,11 @@ import org.opendaylight.yangtools.yang.common.QName; * {@link #leafNode(org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier.NodeIdentifier, Object)} twice * and then, {@link #endNode()} to end container node. * - * Based on the each node, the node type is also written to the stream, that helps in reconstructing the object, + *

Based on the each node, the node type is also written to the stream, that helps in reconstructing the object, * while reading. */ -final class NormalizedNodeOutputStreamWriter extends AbstractNormalizedNodeDataOutput { - private final Map stringCodeMap = new HashMap<>(); - +class NormalizedNodeOutputStreamWriter extends NeonSR2NormalizedNodeOutputStreamWriter { NormalizedNodeOutputStreamWriter(final DataOutput output) { super(output); } - - @Override - protected final short streamVersion() { - return TokenTypes.LITHIUM_VERSION; - } - - @Override - protected void writeQName(final QName qname) throws IOException { - writeString(qname.getLocalName()); - writeString(qname.getNamespace().toString()); - writeString(qname.getFormattedRevision()); - } - - @Override - protected void writeString(final String string) throws IOException { - if (string != null) { - final Integer value = stringCodeMap.get(string); - if (value == null) { - stringCodeMap.put(string, stringCodeMap.size()); - writeByte(TokenTypes.IS_STRING_VALUE); - writeUTF(string); - } else { - writeByte(TokenTypes.IS_CODE_VALUE); - writeInt(value); - } - } else { - writeByte(TokenTypes.IS_NULL_VALUE); - } - } }