* 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.openflowplugin.impl.protocol.serialization.match;
import io.netty.buffer.ByteBuf;
-import java.util.Objects;
import org.opendaylight.openflowjava.protocol.api.util.EncodeConstants;
import org.opendaylight.openflowjava.protocol.api.util.OxmMatchConstants;
import org.opendaylight.openflowplugin.api.openflow.md.util.OpenflowVersion;
@Override
public void serialize(Match match, ByteBuf outBuffer) {
super.serialize(match, outBuffer);
- outBuffer.writeInt(InventoryDataServiceUtil.portNumberfromNodeConnectorId(
+ Long value = InventoryDataServiceUtil.portNumberfromNodeConnectorId(
OpenflowVersion.OF13,
- match.getInPort().getValue()).intValue());
+ match.getInPort().getValue());
+ if (value == null) {
+ throw new IllegalArgumentException("Not a valid port number: " + match.getInPort().getValue());
+ }
+ outBuffer.writeInt(value.intValue());
}
@Override
public boolean matchTypeCheck(Match match) {
- return Objects.nonNull(match.getInPort());
+ return match.getInPort() != null;
}
@Override
protected int getValueLength() {
return EncodeConstants.SIZE_OF_INT_IN_BYTES;
}
-
}