Merge "BUG 2667 : Handle null value type"
authorTom Pantelis <tpanteli@brocade.com>
Wed, 4 Feb 2015 16:11:01 +0000 (16:11 +0000)
committerGerrit Code Review <gerrit@opendaylight.org>
Wed, 4 Feb 2015 16:11:01 +0000 (16:11 +0000)
1  2 
opendaylight/md-sal/sal-clustering-commons/src/main/java/org/opendaylight/controller/cluster/datastore/node/utils/stream/NormalizedNodeOutputStreamWriter.java

index 2c8e259711a74d9ac9a7b3497fb82a4e1b94f6e0,fc381c19a98053161fbc93c3525ca8219d006720..088f4dfbe98a1358a980a84e8ad3adaa99736b57
@@@ -21,9 -21,7 +21,9 @@@ import java.util.Map
  import java.util.Set;
  import org.opendaylight.yangtools.yang.common.QName;
  import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier;
 +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.slf4j.Logger;
  import org.slf4j.LoggerFactory;
  
@@@ -54,8 -52,6 +54,8 @@@ public class NormalizedNodeOutputStream
  
      private final Map<String, Integer> stringCodeMap = new HashMap<>();
  
 +    private NormalizedNodeWriter normalizedNodeWriter;
 +
      public NormalizedNodeOutputStreamWriter(OutputStream stream) throws IOException {
          Preconditions.checkNotNull(stream);
          output = new DataOutputStream(stream);
          this.output = Preconditions.checkNotNull(output);
      }
  
 +    private NormalizedNodeWriter normalizedNodeWriter() {
 +        if(normalizedNodeWriter == null) {
 +            normalizedNodeWriter = NormalizedNodeWriter.forStreamWriter(this);
 +        }
 +
 +        return normalizedNodeWriter;
 +    }
 +
 +    public void writeNormalizedNode(NormalizedNode<?, ?> node) throws IOException {
 +        normalizedNodeWriter().write(node);
 +    }
 +
      @Override
      public void leafNode(YangInstanceIdentifier.NodeIdentifier name, Object value) throws IOException, IllegalArgumentException {
          Preconditions.checkNotNull(name, "Node identifier should not be null");
              case ValueTypes.YANG_IDENTIFIER_TYPE:
                  writeYangInstanceIdentifier((YangInstanceIdentifier) value);
                  break;
+             case ValueTypes.NULL_TYPE :
+                 break;
              default:
                  output.writeUTF(value.toString());
                  break;