Add bundle messages serializers
[openflowjava.git] / openflowjava-util / src / main / java / org / opendaylight / openflowjava / util / ExperimenterSerializerKeyFactory.java
index 613cd804aef4ef069b6b47478f19aeacf9c61a32..24e78debc76c5e1c837ab68c2a6554f1f60cdb3a 100755 (executable)
@@ -11,6 +11,7 @@ package org.opendaylight.openflowjava.util;
 import org.opendaylight.openflowjava.protocol.api.keys.ExperimenterIdMeterSubTypeSerializerKey;
 import org.opendaylight.openflowjava.protocol.api.keys.ExperimenterIdSerializerKey;
 import org.opendaylight.openflowjava.protocol.api.keys.ExperimenterIdTypeSerializerKey;
+import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.approved.extensions.rev160802.bundle.properties.bundle.property.bundle.property.entry.bundle.experimenter.property.BundleExperimenterPropertyData;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.types.rev130731.ExperimenterMeterBandSubType;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.experimenter.core.ExperimenterDataOfChoice;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.meter.band.header.meter.band.MeterBandExperimenterCase;
@@ -67,4 +68,15 @@ public abstract class ExperimenterSerializerKeyFactory {
             short msgVersion, long experimenterId, Class<? extends ExperimenterMeterBandSubType> meterSubType) {
         return new ExperimenterIdMeterSubTypeSerializerKey<>(msgVersion, experimenterId, MeterBandExperimenterCase.class, meterSubType);
     }
+
+    /**
+     * @param msgVersion openflow wire version
+     * @param experimenterId experimenter ID
+     * @param type experimenter type according to vendor implementation
+     * @return key instance
+     */
+    public static ExperimenterIdSerializerKey<BundleExperimenterPropertyData> createBundlePropertySerializerKey(
+            short msgVersion, long experimenterId, long type) {
+        return new ExperimenterIdTypeSerializerKey<>(msgVersion, experimenterId, type, BundleExperimenterPropertyData.class);
+    }
 }
\ No newline at end of file