From: Basheeruddin Ahmed Date: Wed, 9 Jul 2014 17:36:48 +0000 (-0700) Subject: ReadData and ReadDataReply protobuff messages X-Git-Tag: release/helium~408 X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?p=controller.git;a=commitdiff_plain;h=c6618cb0df8fc41ccfcb7578b11f5ecfa0403f39 ReadData and ReadDataReply protobuff messages in distributed datastore Signed-off-by: Basheeruddin Ahmed Change-Id: Ia8353fc70d7af8589de855fee82ec79f06c7a36b Signed-off-by: Basheeruddin Ahmed --- diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/ShardTransaction.java b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/ShardTransaction.java index 835ad68bf2..7a0b19742e 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/ShardTransaction.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/ShardTransaction.java @@ -123,8 +123,8 @@ public class ShardTransaction extends AbstractUntypedActor { @Override public void handleReceive(Object message) throws Exception { - if (message instanceof ReadData) { - readData((ReadData) message); + if (ReadData.SERIALIZABLE_CLASS.equals(message.getClass())) { + readData(ReadData.fromSerializable(message)); } else if (WriteData.SERIALIZABLE_CLASS.equals(message.getClass())) { writeData(WriteData.fromSerializable(message, schemaContext)); } else if (MergeData.SERIALIZABLE_CLASS.equals(message.getClass())) { @@ -139,6 +139,8 @@ public class ShardTransaction extends AbstractUntypedActor { // This is here for testing only getSender().tell(new GetCompositeModificationReply( new ImmutableCompositeModification(modification)), getSelf()); + }else{ + throw new Exception ("handleRecieve received an unknown mesages"+message); } } @@ -155,9 +157,9 @@ public class ShardTransaction extends AbstractUntypedActor { try { Optional> optional = future.get(); if (optional.isPresent()) { - sender.tell(new ReadDataReply(optional.get()), self); + sender.tell(new ReadDataReply(schemaContext,optional.get()).toSerializable(), self); } else { - sender.tell(new ReadDataReply(null), self); + sender.tell(new ReadDataReply(schemaContext,null).toSerializable(), self); } } catch (InterruptedException | ExecutionException e) { log.error(e, diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/TransactionProxy.java b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/TransactionProxy.java index aefe357e68..e30076d09e 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/TransactionProxy.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/TransactionProxy.java @@ -94,10 +94,10 @@ public class TransactionProxy implements DOMStoreReadWriteTransaction { @Override public Optional> call() throws Exception { Object response = actorContext - .executeRemoteOperation(remoteTransaction, new ReadData(path), + .executeRemoteOperation(remoteTransaction, new ReadData(path).toSerializable(), ActorContext.ASK_DURATION); - if(response instanceof ReadDataReply){ - ReadDataReply reply = (ReadDataReply) response; + if(response.getClass().equals(ReadDataReply.SERIALIZABLE_CLASS)){ + ReadDataReply reply = ReadDataReply.fromSerializable(schemaContext,path, response); if(reply.getNormalizedNode() == null){ return Optional.absent(); } diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/messages/ReadData.java b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/messages/ReadData.java index f3d623e17b..cb6347f3e5 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/messages/ReadData.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/messages/ReadData.java @@ -26,7 +26,7 @@ public class ReadData { public Object toSerializable(){ return ShardTransactionMessages.ReadData.newBuilder() - .setInstanceIdentifierPathArguments(InstanceIdentifierUtils.getParentPath(path.toString())) + .setInstanceIdentifierPathArguments(path.toString()) .build(); } diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/messages/ReadDataReply.java b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/messages/ReadDataReply.java index 52e2c29249..a8926be779 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/messages/ReadDataReply.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/messages/ReadDataReply.java @@ -8,17 +8,41 @@ package org.opendaylight.controller.cluster.datastore.messages; +import org.opendaylight.controller.cluster.datastore.node.NormalizedNodeToNodeCodec; +import org.opendaylight.controller.protobuff.messages.transaction.ShardTransactionMessages; +import org.opendaylight.yangtools.yang.data.api.InstanceIdentifier; import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; +import org.opendaylight.yangtools.yang.model.api.SchemaContext; -public class ReadDataReply { +public class ReadDataReply implements SerializableMessage{ private final NormalizedNode normalizedNode; - - public ReadDataReply(NormalizedNode normalizedNode){ + private final SchemaContext schemaContext; + public static final Class SERIALIZABLE_CLASS = ShardTransactionMessages.ReadDataReply.class; + public ReadDataReply(SchemaContext context,NormalizedNode normalizedNode){ this.normalizedNode = normalizedNode; + this.schemaContext = context; } public NormalizedNode getNormalizedNode() { return normalizedNode; } + + public Object toSerializable(){ + if(normalizedNode != null) { + return ShardTransactionMessages.ReadDataReply.newBuilder() + .setNormalizedNode(new NormalizedNodeToNodeCodec(schemaContext) + .encode(InstanceIdentifier.builder().build(), normalizedNode).getNormalizedNode() + ).build(); + }else{ + return ShardTransactionMessages.ReadDataReply.newBuilder().build(); + + } + + } + + public static ReadDataReply fromSerializable(SchemaContext schemaContext,InstanceIdentifier id,Object serializable){ + ShardTransactionMessages.ReadDataReply o = (ShardTransactionMessages.ReadDataReply) serializable; + return new ReadDataReply(schemaContext,new NormalizedNodeToNodeCodec(schemaContext).decode(id, o.getNormalizedNode())); + } } diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/ShardTransactionTest.java b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/ShardTransactionTest.java index abea785211..68cee1fcac 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/ShardTransactionTest.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/ShardTransactionTest.java @@ -51,22 +51,22 @@ public class ShardTransactionTest extends AbstractActorTest { new JavaTestKit(getSystem()) {{ final ActorRef shard = getSystem().actorOf(Shard.props("config")); final Props props = - ShardTransaction.props(store.newReadWriteTransaction(), shard, TestModel.createTestContext()); + ShardTransaction.props(store.newReadWriteTransaction(), shard, testSchemaContext); final ActorRef subject = getSystem().actorOf(props, "testReadData"); new Within(duration("1 seconds")) { protected void run() { subject.tell( - new ReadData(InstanceIdentifier.builder().build()), + new ReadData(InstanceIdentifier.builder().build()).toSerializable(), getRef()); final String out = new ExpectMsg("match hint") { // do not put code outside this method, will run afterwards protected String match(Object in) { - if (in instanceof ReadDataReply) { - if (((ReadDataReply) in).getNormalizedNode() - != null) { + if (in.getClass().equals(ReadDataReply.SERIALIZABLE_CLASS)) { + if (ReadDataReply.fromSerializable(testSchemaContext,InstanceIdentifier.builder().build(), in) + .getNormalizedNode()!= null) { return "match"; } return null; @@ -91,21 +91,22 @@ public class ShardTransactionTest extends AbstractActorTest { new JavaTestKit(getSystem()) {{ final ActorRef shard = getSystem().actorOf(Shard.props("config")); final Props props = - ShardTransaction.props(store.newReadWriteTransaction(), shard, TestModel.createTestContext()); + ShardTransaction.props(store.newReadWriteTransaction(), shard, testSchemaContext); final ActorRef subject = getSystem().actorOf(props, "testReadDataWhenDataNotFound"); new Within(duration("1 seconds")) { protected void run() { subject.tell( - new ReadData(TestModel.TEST_PATH), + new ReadData(TestModel.TEST_PATH).toSerializable(), getRef()); final String out = new ExpectMsg("match hint") { // do not put code outside this method, will run afterwards protected String match(Object in) { - if (in instanceof ReadDataReply) { - if (((ReadDataReply) in).getNormalizedNode() + if (in.getClass().equals(ReadDataReply.SERIALIZABLE_CLASS)) { + if (ReadDataReply.fromSerializable(testSchemaContext,TestModel.TEST_PATH, in) + .getNormalizedNode() == null) { return "match"; } diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/TransactionProxyTest.java b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/TransactionProxyTest.java index ac1ac376e9..1e9fc90a6e 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/TransactionProxyTest.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/TransactionProxyTest.java @@ -40,6 +40,7 @@ public class TransactionProxyTest extends AbstractActorTest { actorContext.setExecuteShardOperationResponse(createTransactionReply(actorRef)); actorContext.setExecuteRemoteOperationResponse("message"); + TransactionProxy transactionProxy = new TransactionProxy(actorContext, TransactionProxy.TransactionType.READ_ONLY, transactionExecutor, TestModel.createTestContext()); @@ -53,7 +54,7 @@ public class TransactionProxyTest extends AbstractActorTest { Assert.assertFalse(normalizedNodeOptional.isPresent()); actorContext.setExecuteRemoteOperationResponse(new ReadDataReply( - ImmutableNodes.containerNode(TestModel.TEST_QNAME))); + TestModel.createTestContext(),ImmutableNodes.containerNode(TestModel.TEST_QNAME)).toSerializable()); read = transactionProxy.read(TestModel.TEST_PATH); @@ -84,7 +85,7 @@ public class TransactionProxyTest extends AbstractActorTest { Assert.assertFalse(normalizedNodeOptional.isPresent()); actorContext.setExecuteRemoteOperationResponse(new ReadDataReply( - null)); + TestModel.createTestContext(), null).toSerializable()); read = transactionProxy.read(TestModel.TEST_PATH); diff --git a/opendaylight/md-sal/sal-protocolbuffer-encoding/src/main/java/org/opendaylight/controller/cluster/datastore/node/NodeToNormalizedNodeBuilder.java b/opendaylight/md-sal/sal-protocolbuffer-encoding/src/main/java/org/opendaylight/controller/cluster/datastore/node/NodeToNormalizedNodeBuilder.java index cac3382d56..b0ba487177 100644 --- a/opendaylight/md-sal/sal-protocolbuffer-encoding/src/main/java/org/opendaylight/controller/cluster/datastore/node/NodeToNormalizedNodeBuilder.java +++ b/opendaylight/md-sal/sal-protocolbuffer-encoding/src/main/java/org/opendaylight/controller/cluster/datastore/node/NodeToNormalizedNodeBuilder.java @@ -193,7 +193,8 @@ public abstract class NodeToNormalizedNodeBuilder public final NormalizedNodeContainer normalize( final QName nodeType, final Node node) { checkArgument(node != null); - if (!node.getType().equals(AugmentationNode.class.getSimpleName())) { + + if (!node.getType().equals(AugmentationNode.class.getSimpleName())&& !node.getType().equals(ContainerNode.class.getSimpleName())) { checkArgument(nodeType != null); } diff --git a/opendaylight/md-sal/sal-protocolbuffer-encoding/src/main/java/org/opendaylight/controller/cluster/datastore/node/NormalizedNodeToNodeCodec.java b/opendaylight/md-sal/sal-protocolbuffer-encoding/src/main/java/org/opendaylight/controller/cluster/datastore/node/NormalizedNodeToNodeCodec.java index 23d412708e..8a940af8bc 100644 --- a/opendaylight/md-sal/sal-protocolbuffer-encoding/src/main/java/org/opendaylight/controller/cluster/datastore/node/NormalizedNodeToNodeCodec.java +++ b/opendaylight/md-sal/sal-protocolbuffer-encoding/src/main/java/org/opendaylight/controller/cluster/datastore/node/NormalizedNodeToNodeCodec.java @@ -54,7 +54,11 @@ public class NormalizedNodeToNodeCodec { } } try { - return currentOp.normalize(nodeType , node); + if((node != null)&& (!node.getType().isEmpty())){ + return currentOp.normalize(nodeType, node); + }else{ + return null; + } } catch(RuntimeException e){ throw e; } diff --git a/opendaylight/md-sal/sal-protocolbuffer-encoding/src/main/java/org/opendaylight/controller/cluster/datastore/node/NormalizedNodeToProtocolBufferNode.java b/opendaylight/md-sal/sal-protocolbuffer-encoding/src/main/java/org/opendaylight/controller/cluster/datastore/node/NormalizedNodeToProtocolBufferNode.java index 6b2f1bd187..255af561ba 100644 --- a/opendaylight/md-sal/sal-protocolbuffer-encoding/src/main/java/org/opendaylight/controller/cluster/datastore/node/NormalizedNodeToProtocolBufferNode.java +++ b/opendaylight/md-sal/sal-protocolbuffer-encoding/src/main/java/org/opendaylight/controller/cluster/datastore/node/NormalizedNodeToProtocolBufferNode.java @@ -1,5 +1,5 @@ package org.opendaylight.controller.cluster.datastore.node; -import com.google.common.base.Preconditions; + import org.opendaylight.controller.protobuff.messages.common.NormalizedNodeMessages; import org.opendaylight.controller.protobuff.messages.common.NormalizedNodeMessages.Node; import org.opendaylight.yangtools.yang.common.QName; @@ -46,15 +46,21 @@ public class NormalizedNodeToProtocolBufferNode { parentPath = ""; } - Preconditions.checkArgument(normalizedNode!=null); - - navigateNormalizedNode(0, parentPath,normalizedNode, builderRoot); - // here we need to put back the Node Tree in Container NormalizedNodeMessages.Container.Builder containerBuilder = NormalizedNodeMessages.Container.newBuilder(); - containerBuilder.setParentPath(parentPath).setNormalizedNode( - builderRoot.build()); - container = containerBuilder.build(); + + if(normalizedNode != null) { + + navigateNormalizedNode(0, parentPath, normalizedNode, builderRoot); + // here we need to put back the Node Tree in Container + + container= containerBuilder.setParentPath(parentPath).setNormalizedNode( + builderRoot.build()).build(); + }else { + //this can happen when an attempt was made to read from datastore and normalized node was null. + container = containerBuilder.setParentPath(parentPath).build(); + + } } diff --git a/opendaylight/md-sal/sal-protocolbuffer-encoding/src/main/java/org/opendaylight/controller/protobuff/messages/common/NormalizedNodeMessages.java b/opendaylight/md-sal/sal-protocolbuffer-encoding/src/main/java/org/opendaylight/controller/protobuff/messages/common/NormalizedNodeMessages.java index 3a19ab2dd3..61193abe71 100644 --- a/opendaylight/md-sal/sal-protocolbuffer-encoding/src/main/java/org/opendaylight/controller/protobuff/messages/common/NormalizedNodeMessages.java +++ b/opendaylight/md-sal/sal-protocolbuffer-encoding/src/main/java/org/opendaylight/controller/protobuff/messages/common/NormalizedNodeMessages.java @@ -2200,17 +2200,17 @@ public final class NormalizedNodeMessages { com.google.protobuf.ByteString getParentPathBytes(); - // required .org.opendaylight.controller.mdsal.Node normalizedNode = 2; + // optional .org.opendaylight.controller.mdsal.Node normalizedNode = 2; /** - * required .org.opendaylight.controller.mdsal.Node normalizedNode = 2; + * optional .org.opendaylight.controller.mdsal.Node normalizedNode = 2; */ boolean hasNormalizedNode(); /** - * required .org.opendaylight.controller.mdsal.Node normalizedNode = 2; + * optional .org.opendaylight.controller.mdsal.Node normalizedNode = 2; */ org.opendaylight.controller.protobuff.messages.common.NormalizedNodeMessages.Node getNormalizedNode(); /** - * required .org.opendaylight.controller.mdsal.Node normalizedNode = 2; + * optional .org.opendaylight.controller.mdsal.Node normalizedNode = 2; */ org.opendaylight.controller.protobuff.messages.common.NormalizedNodeMessages.NodeOrBuilder getNormalizedNodeOrBuilder(); } @@ -2366,23 +2366,23 @@ public final class NormalizedNodeMessages { } } - // required .org.opendaylight.controller.mdsal.Node normalizedNode = 2; + // optional .org.opendaylight.controller.mdsal.Node normalizedNode = 2; public static final int NORMALIZEDNODE_FIELD_NUMBER = 2; private org.opendaylight.controller.protobuff.messages.common.NormalizedNodeMessages.Node normalizedNode_; /** - * required .org.opendaylight.controller.mdsal.Node normalizedNode = 2; + * optional .org.opendaylight.controller.mdsal.Node normalizedNode = 2; */ public boolean hasNormalizedNode() { return ((bitField0_ & 0x00000002) == 0x00000002); } /** - * required .org.opendaylight.controller.mdsal.Node normalizedNode = 2; + * optional .org.opendaylight.controller.mdsal.Node normalizedNode = 2; */ public org.opendaylight.controller.protobuff.messages.common.NormalizedNodeMessages.Node getNormalizedNode() { return normalizedNode_; } /** - * required .org.opendaylight.controller.mdsal.Node normalizedNode = 2; + * optional .org.opendaylight.controller.mdsal.Node normalizedNode = 2; */ public org.opendaylight.controller.protobuff.messages.common.NormalizedNodeMessages.NodeOrBuilder getNormalizedNodeOrBuilder() { return normalizedNode_; @@ -2401,13 +2401,11 @@ public final class NormalizedNodeMessages { memoizedIsInitialized = 0; return false; } - if (!hasNormalizedNode()) { - memoizedIsInitialized = 0; - return false; - } - if (!getNormalizedNode().isInitialized()) { - memoizedIsInitialized = 0; - return false; + if (hasNormalizedNode()) { + if (!getNormalizedNode().isInitialized()) { + memoizedIsInitialized = 0; + return false; + } } memoizedIsInitialized = 1; return true; @@ -2637,13 +2635,11 @@ public final class NormalizedNodeMessages { return false; } - if (!hasNormalizedNode()) { - - return false; - } - if (!getNormalizedNode().isInitialized()) { + if (hasNormalizedNode()) { + if (!getNormalizedNode().isInitialized()) { - return false; + return false; + } } return true; } @@ -2741,18 +2737,18 @@ public final class NormalizedNodeMessages { return this; } - // required .org.opendaylight.controller.mdsal.Node normalizedNode = 2; + // optional .org.opendaylight.controller.mdsal.Node normalizedNode = 2; private org.opendaylight.controller.protobuff.messages.common.NormalizedNodeMessages.Node normalizedNode_ = org.opendaylight.controller.protobuff.messages.common.NormalizedNodeMessages.Node.getDefaultInstance(); private com.google.protobuf.SingleFieldBuilder< org.opendaylight.controller.protobuff.messages.common.NormalizedNodeMessages.Node, org.opendaylight.controller.protobuff.messages.common.NormalizedNodeMessages.Node.Builder, org.opendaylight.controller.protobuff.messages.common.NormalizedNodeMessages.NodeOrBuilder> normalizedNodeBuilder_; /** - * required .org.opendaylight.controller.mdsal.Node normalizedNode = 2; + * optional .org.opendaylight.controller.mdsal.Node normalizedNode = 2; */ public boolean hasNormalizedNode() { return ((bitField0_ & 0x00000002) == 0x00000002); } /** - * required .org.opendaylight.controller.mdsal.Node normalizedNode = 2; + * optional .org.opendaylight.controller.mdsal.Node normalizedNode = 2; */ public org.opendaylight.controller.protobuff.messages.common.NormalizedNodeMessages.Node getNormalizedNode() { if (normalizedNodeBuilder_ == null) { @@ -2762,7 +2758,7 @@ public final class NormalizedNodeMessages { } } /** - * required .org.opendaylight.controller.mdsal.Node normalizedNode = 2; + * optional .org.opendaylight.controller.mdsal.Node normalizedNode = 2; */ public Builder setNormalizedNode(org.opendaylight.controller.protobuff.messages.common.NormalizedNodeMessages.Node value) { if (normalizedNodeBuilder_ == null) { @@ -2778,7 +2774,7 @@ public final class NormalizedNodeMessages { return this; } /** - * required .org.opendaylight.controller.mdsal.Node normalizedNode = 2; + * optional .org.opendaylight.controller.mdsal.Node normalizedNode = 2; */ public Builder setNormalizedNode( org.opendaylight.controller.protobuff.messages.common.NormalizedNodeMessages.Node.Builder builderForValue) { @@ -2792,7 +2788,7 @@ public final class NormalizedNodeMessages { return this; } /** - * required .org.opendaylight.controller.mdsal.Node normalizedNode = 2; + * optional .org.opendaylight.controller.mdsal.Node normalizedNode = 2; */ public Builder mergeNormalizedNode(org.opendaylight.controller.protobuff.messages.common.NormalizedNodeMessages.Node value) { if (normalizedNodeBuilder_ == null) { @@ -2811,7 +2807,7 @@ public final class NormalizedNodeMessages { return this; } /** - * required .org.opendaylight.controller.mdsal.Node normalizedNode = 2; + * optional .org.opendaylight.controller.mdsal.Node normalizedNode = 2; */ public Builder clearNormalizedNode() { if (normalizedNodeBuilder_ == null) { @@ -2824,7 +2820,7 @@ public final class NormalizedNodeMessages { return this; } /** - * required .org.opendaylight.controller.mdsal.Node normalizedNode = 2; + * optional .org.opendaylight.controller.mdsal.Node normalizedNode = 2; */ public org.opendaylight.controller.protobuff.messages.common.NormalizedNodeMessages.Node.Builder getNormalizedNodeBuilder() { bitField0_ |= 0x00000002; @@ -2832,7 +2828,7 @@ public final class NormalizedNodeMessages { return getNormalizedNodeFieldBuilder().getBuilder(); } /** - * required .org.opendaylight.controller.mdsal.Node normalizedNode = 2; + * optional .org.opendaylight.controller.mdsal.Node normalizedNode = 2; */ public org.opendaylight.controller.protobuff.messages.common.NormalizedNodeMessages.NodeOrBuilder getNormalizedNodeOrBuilder() { if (normalizedNodeBuilder_ != null) { @@ -2842,7 +2838,7 @@ public final class NormalizedNodeMessages { } } /** - * required .org.opendaylight.controller.mdsal.Node normalizedNode = 2; + * optional .org.opendaylight.controller.mdsal.Node normalizedNode = 2; */ private com.google.protobuf.SingleFieldBuilder< org.opendaylight.controller.protobuff.messages.common.NormalizedNodeMessages.Node, org.opendaylight.controller.protobuff.messages.common.NormalizedNodeMessages.Node.Builder, org.opendaylight.controller.protobuff.messages.common.NormalizedNodeMessages.NodeOrBuilder> @@ -2900,7 +2896,7 @@ public final class NormalizedNodeMessages { "aylight.controller.mdsal.Attribute\0226\n\005ch" + "ild\030\004 \003(\0132\'.org.opendaylight.controller." + "mdsal.Node\022\r\n\005value\030\005 \001(\t\"`\n\tContainer\022\022" + - "\n\nparentPath\030\001 \002(\t\022?\n\016normalizedNode\030\002 \002" + + "\n\nparentPath\030\001 \002(\t\022?\n\016normalizedNode\030\002 \001" + "(\0132\'.org.opendaylight.controller.mdsal.N" + "odeBO\n5org.opendaylight.controller.proto", "buff.messages.commonB\026NormalizedNodeMess" + diff --git a/opendaylight/md-sal/sal-protocolbuffer-encoding/src/main/java/org/opendaylight/controller/protobuff/messages/transaction/ShardTransactionMessages.java b/opendaylight/md-sal/sal-protocolbuffer-encoding/src/main/java/org/opendaylight/controller/protobuff/messages/transaction/ShardTransactionMessages.java index 76fe604008..8dbb28acb0 100644 --- a/opendaylight/md-sal/sal-protocolbuffer-encoding/src/main/java/org/opendaylight/controller/protobuff/messages/transaction/ShardTransactionMessages.java +++ b/opendaylight/md-sal/sal-protocolbuffer-encoding/src/main/java/org/opendaylight/controller/protobuff/messages/transaction/ShardTransactionMessages.java @@ -3636,17 +3636,17 @@ public final class ShardTransactionMessages { public interface ReadDataReplyOrBuilder extends com.google.protobuf.MessageOrBuilder { - // required .org.opendaylight.controller.mdsal.Node normalizedNode = 1; + // optional .org.opendaylight.controller.mdsal.Node normalizedNode = 1; /** - * required .org.opendaylight.controller.mdsal.Node normalizedNode = 1; + * optional .org.opendaylight.controller.mdsal.Node normalizedNode = 1; */ boolean hasNormalizedNode(); /** - * required .org.opendaylight.controller.mdsal.Node normalizedNode = 1; + * optional .org.opendaylight.controller.mdsal.Node normalizedNode = 1; */ org.opendaylight.controller.protobuff.messages.common.NormalizedNodeMessages.Node getNormalizedNode(); /** - * required .org.opendaylight.controller.mdsal.Node normalizedNode = 1; + * optional .org.opendaylight.controller.mdsal.Node normalizedNode = 1; */ org.opendaylight.controller.protobuff.messages.common.NormalizedNodeMessages.NodeOrBuilder getNormalizedNodeOrBuilder(); } @@ -3754,23 +3754,23 @@ public final class ShardTransactionMessages { } private int bitField0_; - // required .org.opendaylight.controller.mdsal.Node normalizedNode = 1; + // optional .org.opendaylight.controller.mdsal.Node normalizedNode = 1; public static final int NORMALIZEDNODE_FIELD_NUMBER = 1; private org.opendaylight.controller.protobuff.messages.common.NormalizedNodeMessages.Node normalizedNode_; /** - * required .org.opendaylight.controller.mdsal.Node normalizedNode = 1; + * optional .org.opendaylight.controller.mdsal.Node normalizedNode = 1; */ public boolean hasNormalizedNode() { return ((bitField0_ & 0x00000001) == 0x00000001); } /** - * required .org.opendaylight.controller.mdsal.Node normalizedNode = 1; + * optional .org.opendaylight.controller.mdsal.Node normalizedNode = 1; */ public org.opendaylight.controller.protobuff.messages.common.NormalizedNodeMessages.Node getNormalizedNode() { return normalizedNode_; } /** - * required .org.opendaylight.controller.mdsal.Node normalizedNode = 1; + * optional .org.opendaylight.controller.mdsal.Node normalizedNode = 1; */ public org.opendaylight.controller.protobuff.messages.common.NormalizedNodeMessages.NodeOrBuilder getNormalizedNodeOrBuilder() { return normalizedNode_; @@ -3784,13 +3784,11 @@ public final class ShardTransactionMessages { byte isInitialized = memoizedIsInitialized; if (isInitialized != -1) return isInitialized == 1; - if (!hasNormalizedNode()) { - memoizedIsInitialized = 0; - return false; - } - if (!getNormalizedNode().isInitialized()) { - memoizedIsInitialized = 0; - return false; + if (hasNormalizedNode()) { + if (!getNormalizedNode().isInitialized()) { + memoizedIsInitialized = 0; + return false; + } } memoizedIsInitialized = 1; return true; @@ -3998,13 +3996,11 @@ public final class ShardTransactionMessages { } public final boolean isInitialized() { - if (!hasNormalizedNode()) { - - return false; - } - if (!getNormalizedNode().isInitialized()) { + if (hasNormalizedNode()) { + if (!getNormalizedNode().isInitialized()) { - return false; + return false; + } } return true; } @@ -4028,18 +4024,18 @@ public final class ShardTransactionMessages { } private int bitField0_; - // required .org.opendaylight.controller.mdsal.Node normalizedNode = 1; + // optional .org.opendaylight.controller.mdsal.Node normalizedNode = 1; private org.opendaylight.controller.protobuff.messages.common.NormalizedNodeMessages.Node normalizedNode_ = org.opendaylight.controller.protobuff.messages.common.NormalizedNodeMessages.Node.getDefaultInstance(); private com.google.protobuf.SingleFieldBuilder< org.opendaylight.controller.protobuff.messages.common.NormalizedNodeMessages.Node, org.opendaylight.controller.protobuff.messages.common.NormalizedNodeMessages.Node.Builder, org.opendaylight.controller.protobuff.messages.common.NormalizedNodeMessages.NodeOrBuilder> normalizedNodeBuilder_; /** - * required .org.opendaylight.controller.mdsal.Node normalizedNode = 1; + * optional .org.opendaylight.controller.mdsal.Node normalizedNode = 1; */ public boolean hasNormalizedNode() { return ((bitField0_ & 0x00000001) == 0x00000001); } /** - * required .org.opendaylight.controller.mdsal.Node normalizedNode = 1; + * optional .org.opendaylight.controller.mdsal.Node normalizedNode = 1; */ public org.opendaylight.controller.protobuff.messages.common.NormalizedNodeMessages.Node getNormalizedNode() { if (normalizedNodeBuilder_ == null) { @@ -4049,7 +4045,7 @@ public final class ShardTransactionMessages { } } /** - * required .org.opendaylight.controller.mdsal.Node normalizedNode = 1; + * optional .org.opendaylight.controller.mdsal.Node normalizedNode = 1; */ public Builder setNormalizedNode(org.opendaylight.controller.protobuff.messages.common.NormalizedNodeMessages.Node value) { if (normalizedNodeBuilder_ == null) { @@ -4065,7 +4061,7 @@ public final class ShardTransactionMessages { return this; } /** - * required .org.opendaylight.controller.mdsal.Node normalizedNode = 1; + * optional .org.opendaylight.controller.mdsal.Node normalizedNode = 1; */ public Builder setNormalizedNode( org.opendaylight.controller.protobuff.messages.common.NormalizedNodeMessages.Node.Builder builderForValue) { @@ -4079,7 +4075,7 @@ public final class ShardTransactionMessages { return this; } /** - * required .org.opendaylight.controller.mdsal.Node normalizedNode = 1; + * optional .org.opendaylight.controller.mdsal.Node normalizedNode = 1; */ public Builder mergeNormalizedNode(org.opendaylight.controller.protobuff.messages.common.NormalizedNodeMessages.Node value) { if (normalizedNodeBuilder_ == null) { @@ -4098,7 +4094,7 @@ public final class ShardTransactionMessages { return this; } /** - * required .org.opendaylight.controller.mdsal.Node normalizedNode = 1; + * optional .org.opendaylight.controller.mdsal.Node normalizedNode = 1; */ public Builder clearNormalizedNode() { if (normalizedNodeBuilder_ == null) { @@ -4111,7 +4107,7 @@ public final class ShardTransactionMessages { return this; } /** - * required .org.opendaylight.controller.mdsal.Node normalizedNode = 1; + * optional .org.opendaylight.controller.mdsal.Node normalizedNode = 1; */ public org.opendaylight.controller.protobuff.messages.common.NormalizedNodeMessages.Node.Builder getNormalizedNodeBuilder() { bitField0_ |= 0x00000001; @@ -4119,7 +4115,7 @@ public final class ShardTransactionMessages { return getNormalizedNodeFieldBuilder().getBuilder(); } /** - * required .org.opendaylight.controller.mdsal.Node normalizedNode = 1; + * optional .org.opendaylight.controller.mdsal.Node normalizedNode = 1; */ public org.opendaylight.controller.protobuff.messages.common.NormalizedNodeMessages.NodeOrBuilder getNormalizedNodeOrBuilder() { if (normalizedNodeBuilder_ != null) { @@ -4129,7 +4125,7 @@ public final class ShardTransactionMessages { } } /** - * required .org.opendaylight.controller.mdsal.Node normalizedNode = 1; + * optional .org.opendaylight.controller.mdsal.Node normalizedNode = 1; */ private com.google.protobuf.SingleFieldBuilder< org.opendaylight.controller.protobuff.messages.common.NormalizedNodeMessages.Node, org.opendaylight.controller.protobuff.messages.common.NormalizedNodeMessages.Node.Builder, org.opendaylight.controller.protobuff.messages.common.NormalizedNodeMessages.NodeOrBuilder> @@ -6238,7 +6234,7 @@ public final class ShardTransactionMessages { "thArguments\030\001 \002(\t\"\021\n\017DeleteDataReply\"3\n\010" + "ReadData\022\'\n\037instanceIdentifierPathArgume", "nts\030\001 \002(\t\"P\n\rReadDataReply\022?\n\016normalized" + - "Node\030\001 \002(\0132\'.org.opendaylight.controller" + + "Node\030\001 \001(\0132\'.org.opendaylight.controller" + ".mdsal.Node\"u\n\tWriteData\022\'\n\037instanceIden" + "tifierPathArguments\030\001 \002(\t\022?\n\016normalizedN" + "ode\030\002 \002(\0132\'.org.opendaylight.controller." + diff --git a/opendaylight/md-sal/sal-protocolbuffer-encoding/src/main/resources/Common.proto b/opendaylight/md-sal/sal-protocolbuffer-encoding/src/main/resources/Common.proto index 657e5060c3..44d9468391 100644 --- a/opendaylight/md-sal/sal-protocolbuffer-encoding/src/main/resources/Common.proto +++ b/opendaylight/md-sal/sal-protocolbuffer-encoding/src/main/resources/Common.proto @@ -19,5 +19,5 @@ message Node{ message Container{ required string parentPath =1 ; - required Node normalizedNode=2; + optional Node normalizedNode=2; } \ No newline at end of file diff --git a/opendaylight/md-sal/sal-protocolbuffer-encoding/src/main/resources/ShardTransaction.proto b/opendaylight/md-sal/sal-protocolbuffer-encoding/src/main/resources/ShardTransaction.proto index 35449337e4..a2a2cac29d 100644 --- a/opendaylight/md-sal/sal-protocolbuffer-encoding/src/main/resources/ShardTransaction.proto +++ b/opendaylight/md-sal/sal-protocolbuffer-encoding/src/main/resources/ShardTransaction.proto @@ -42,7 +42,7 @@ required string instanceIdentifierPathArguments=1; } message ReadDataReply{ - required Node normalizedNode=1; + optional Node normalizedNode=1; } message WriteData {