import org.opendaylight.openflowplugin.openflow.md.core.sal.convertor.MeterConvertor;
import org.opendaylight.openflowplugin.openflow.md.core.sal.convertor.PortConvertor;
import org.opendaylight.openflowplugin.openflow.md.core.sal.convertor.data.VersionConvertorData;
+import org.opendaylight.openflowplugin.openflow.md.core.sal.convertor.data.VersionDatapathIdConvertorData;
import org.opendaylight.openflowplugin.openflow.md.core.sal.convertor.match.MatchReactor;
import org.opendaylight.openflowplugin.openflow.md.util.FlowCreatorUtil;
import org.opendaylight.openflowplugin.openflow.md.util.InventoryDataServiceUtil;
@Override
public ListenableFuture<RpcResult<UpdateGroupOutput>> call() {
ListenableFuture<RpcResult<UpdateGroupOutput>> result = SettableFuture.create();
+ final VersionDatapathIdConvertorData data = new VersionDatapathIdConvertorData(getVersion());
+ data.setDatapathId(getSession().getFeatures().getDatapathId());
// Convert the AddGroupInput to GroupModInput
- GroupModInputBuilder ofGroupModInput = GroupConvertor.toGroupModInput(getInput(),
- getVersion(), getSession().getFeatures().getDatapathId());
- final Long xId = getSession().getNextXid();
- ofGroupModInput.setXid(xId);
+ final java.util.Optional<GroupModInputBuilder> ofGroupModInput = ConvertorManager.getInstance().convert(getInput(), data);
+ final GroupModInputBuilder groupModInputBuilder = ofGroupModInput
+ .orElse(GroupConvertor.defaultResult(getVersion()))
+ .setXid(getSession().getNextXid());
Future<RpcResult<UpdateGroupOutput>> resultFromOFLib = getMessageService()
- .groupMod(ofGroupModInput.build(), getCookie());
+ .groupMod(groupModInputBuilder.build(), getCookie());
result = JdkFutureAdapters.listenInPoolThread(resultFromOFLib);
-
result = OFRpcTaskUtil.chainFutureBarrier(this, result);
OFRpcTaskUtil.hookFutureNotification(this, result,
getRpcNotificationProviderService(), createGroupAddedNotification(getInput()));
@Override
public ListenableFuture<RpcResult<UpdateGroupOutput>> call() {
ListenableFuture<RpcResult<UpdateGroupOutput>> result = null;
+ final VersionDatapathIdConvertorData data = new VersionDatapathIdConvertorData(getVersion());
+ data.setDatapathId(getSession().getFeatures().getDatapathId());
// Convert the UpdateGroupInput to GroupModInput
- GroupModInputBuilder ofGroupModInput = GroupConvertor.toGroupModInput(
- getInput().getUpdatedGroup(), getVersion(),
- getSession().getFeatures().getDatapathId());
- final Long xId = getSession().getNextXid();
- ofGroupModInput.setXid(xId);
+ final java.util.Optional<GroupModInputBuilder> ofGroupModInput =
+ ConvertorManager.getInstance().convert(getInput().getUpdatedGroup(), data);
+
+ final GroupModInputBuilder groupModInputBuilder = ofGroupModInput
+ .orElse(GroupConvertor.defaultResult(getVersion()))
+ .setXid(getSession().getNextXid());
Future<RpcResult<UpdateGroupOutput>> resultFromOFLib =
- getMessageService().groupMod(ofGroupModInput.build(), getCookie());
+ getMessageService().groupMod(groupModInputBuilder.build(), getCookie());
result = JdkFutureAdapters.listenInPoolThread(resultFromOFLib);
result = OFRpcTaskUtil.chainFutureBarrier(this, result);
@Override
public ListenableFuture<RpcResult<UpdateGroupOutput>> call() {
ListenableFuture<RpcResult<UpdateGroupOutput>> result = SettableFuture.create();
+ final VersionDatapathIdConvertorData data = new VersionDatapathIdConvertorData(getVersion());
+ data.setDatapathId(getSession().getFeatures().getDatapathId());
// Convert the AddGroupInput to GroupModInput
- GroupModInputBuilder ofGroupModInput = GroupConvertor.toGroupModInput(getInput(),
- getVersion(), getSession().getFeatures().getDatapathId());
- final Long xId = getSession().getNextXid();
- ofGroupModInput.setXid(xId);
+ final java.util.Optional<GroupModInputBuilder> ofGroupModInput =
+ ConvertorManager.getInstance().convert(getInput(), data);
+
+ final GroupModInputBuilder groupModInputBuilder = ofGroupModInput
+ .orElse(GroupConvertor.defaultResult(getVersion()))
+ .setXid(getSession().getNextXid());
Future<RpcResult<UpdateGroupOutput>> resultFromOFLib = getMessageService()
- .groupMod(ofGroupModInput.build(), getCookie());
+ .groupMod(groupModInputBuilder.build(), getCookie());
result = JdkFutureAdapters.listenInPoolThread(resultFromOFLib);
-
result = OFRpcTaskUtil.chainFutureBarrier(this, result);
OFRpcTaskUtil.hookFutureNotification(this, result,
getRpcNotificationProviderService(), createGroupRemovedNotification(getInput()));