From bc16c5466bdbc8b593b9b62853e4162d4aabc32b Mon Sep 17 00:00:00 2001 From: Prasanna Huddar Date: Mon, 2 Dec 2013 17:03:54 +0530 Subject: [PATCH] Group and Port are not mandatory in Flow. Signed-off-by: Prasanna Huddar Change-Id: Id6e8842a0e78486dfec6b439af716540318349fd --- .../factories/FlowModInputMessageFactory.java | 9 +++++++-- .../factories/OF10FlowModInputMessageFactory.java | 4 +++- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/openflow-protocol-impl/src/main/java/org/opendaylight/openflowjava/protocol/impl/serialization/factories/FlowModInputMessageFactory.java b/openflow-protocol-impl/src/main/java/org/opendaylight/openflowjava/protocol/impl/serialization/factories/FlowModInputMessageFactory.java index 4793c286..8889339a 100644 --- a/openflow-protocol-impl/src/main/java/org/opendaylight/openflowjava/protocol/impl/serialization/factories/FlowModInputMessageFactory.java +++ b/openflow-protocol-impl/src/main/java/org/opendaylight/openflowjava/protocol/impl/serialization/factories/FlowModInputMessageFactory.java @@ -49,8 +49,13 @@ public class FlowModInputMessageFactory implements OFSerializer { out.writeShort(message.getHardTimeout().intValue()); out.writeShort(message.getPriority()); out.writeInt(message.getBufferId().intValue()); - out.writeInt(message.getOutPort().getValue().intValue()); - out.writeInt(message.getOutGroup().intValue()); + if (message.getOutPort() != null) { + out.writeInt(message.getOutPort().getValue().intValue()); + } + + if (message.getOutGroup() != null) { + out.writeInt(message.getOutGroup().intValue()); + } out.writeShort(createFlowModFlagsBitmask(message.getFlags())); ByteBufUtils.padBuffer(PADDING_IN_FLOW_MOD_MESSAGE, out); MatchSerializer.encodeMatch(message.getMatch(), out); diff --git a/openflow-protocol-impl/src/main/java/org/opendaylight/openflowjava/protocol/impl/serialization/factories/OF10FlowModInputMessageFactory.java b/openflow-protocol-impl/src/main/java/org/opendaylight/openflowjava/protocol/impl/serialization/factories/OF10FlowModInputMessageFactory.java index 7821cd49..f0858af0 100644 --- a/openflow-protocol-impl/src/main/java/org/opendaylight/openflowjava/protocol/impl/serialization/factories/OF10FlowModInputMessageFactory.java +++ b/openflow-protocol-impl/src/main/java/org/opendaylight/openflowjava/protocol/impl/serialization/factories/OF10FlowModInputMessageFactory.java @@ -48,7 +48,9 @@ public class OF10FlowModInputMessageFactory implements OFSerializer