- org.opendaylight.controller.mdsal.CompositeModificationPayload.modification);
- payload.getExtension(KeyValueMessages.value);
+ org.opendaylight.controller.protobuff.messages.shard.CompositeModificationPayload.modification);
+
+
+
+ // The extension was put in the unknown field.
+ // This is because extensions need to be registered
+ // see org.opendaylight.controller.mdsal.CompositeModificationPayload.registerAllExtensions
+ // also see https://developers.google.com/protocol-buffers/docs/reference/java/com/google/protobuf/ExtensionRegistry
+ // If that is not done then on the other end the extension shows up as an unknown field
+ // Need to figure out a better way to do this
+ if(payload.getUnknownFields().hasField(2)){
+ UnknownFieldSet.Field field =
+ payload.getUnknownFields().getField(2);
+
+ try {
+ modification =
+ PersistentMessages.CompositeModification
+ .parseFrom(field.getLengthDelimitedList().get(0));
+ } catch (InvalidProtocolBufferException e) {
+
+ }
+ }
+