OPNFLWPLUG-1032: Neon-MRI: Bump odlparent, yangtools, mdsal
[openflowplugin.git] / openflowplugin-impl / src / main / java / org / opendaylight / openflowplugin / impl / services / AbstractExperimenterMultipartService.java
index a2fc1429b0376e72d35e14874eca7f28b98db087..8b043a2581ade3532137a33484f071562a55b43e 100644 (file)
@@ -8,29 +8,17 @@
 
 package org.opendaylight.openflowplugin.impl.services;
 
-import java.util.Objects;
 import java.util.concurrent.Future;
 import org.opendaylight.openflowplugin.api.openflow.device.DeviceContext;
 import org.opendaylight.openflowplugin.api.openflow.device.RequestContextStack;
-import org.opendaylight.openflowplugin.api.openflow.device.Xid;
-import org.opendaylight.openflowplugin.extension.api.ConvertorMessageToOFJava;
-import org.opendaylight.openflowplugin.extension.api.TypeVersionKey;
 import org.opendaylight.openflowplugin.extension.api.core.extension.ExtensionConverterProvider;
-import org.opendaylight.openflowplugin.extension.api.exception.ConversionException;
-import org.opendaylight.openflowplugin.extension.api.exception.ConverterNotFoundException;
-import org.opendaylight.openflowplugin.impl.services.util.RequestInputUtils;
-import org.opendaylight.openflowplugin.impl.services.util.ServiceException;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.experimenter.mp.message.service.rev151020.SendExperimenterMpRequestInput;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.experimenter.mp.message.service.rev151020.SendExperimenterMpRequestOutput;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.types.rev130731.MultipartType;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.OfHeader;
-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.multipart.request.multipart.request.body.MultipartRequestExperimenterCaseBuilder;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.multipart.request.multipart.request.body.multipart.request.experimenter._case.MultipartRequestExperimenterBuilder;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.openflowplugin.experimenter.types.rev151020.experimenter.core.message.ExperimenterMessageOfChoice;
 import org.opendaylight.yangtools.yang.common.RpcResult;
 
-public abstract class AbstractExperimenterMultipartService<T extends OfHeader> extends AbstractMultipartService<SendExperimenterMpRequestInput, T> {
+public abstract class AbstractExperimenterMultipartService<T extends OfHeader>
+        extends AbstractMultipartService<SendExperimenterMpRequestInput, T> {
 
     private final ExtensionConverterProvider extensionConverterProvider;
 
@@ -40,39 +28,8 @@ public abstract class AbstractExperimenterMultipartService<T extends OfHeader> e
         this.extensionConverterProvider = extensionConverterProvider;
     }
 
-    @Override
-    @SuppressWarnings("unchecked")
-    protected OfHeader buildRequest(Xid xid, SendExperimenterMpRequestInput input) throws ServiceException {
-        final TypeVersionKey key = new TypeVersionKey<>(
-                input.getExperimenterMessageOfChoice().getImplementedInterface(),
-                getVersion());
-
-        final ConvertorMessageToOFJava<ExperimenterMessageOfChoice, ExperimenterDataOfChoice> messageConverter =
-                getExtensionConverterProvider().getMessageConverter(key);
-
-        if (Objects.isNull(messageConverter)) {
-            throw new ServiceException(new ConverterNotFoundException(key.toString()));
-        }
-
-        try {
-            return RequestInputUtils
-                .createMultipartHeader(MultipartType.OFPMPEXPERIMENTER, xid.getValue(), getVersion())
-                .setMultipartRequestBody(new MultipartRequestExperimenterCaseBuilder()
-                        .setMultipartRequestExperimenter(new MultipartRequestExperimenterBuilder()
-                                .setExperimenter(messageConverter.getExperimenterId())
-                                .setExpType(messageConverter.getType())
-                                .setExperimenterDataOfChoice(messageConverter
-                                        .convert(input.getExperimenterMessageOfChoice()))
-                                .build())
-                        .build())
-                .build();
-        } catch (final ConversionException e) {
-            throw new ServiceException(e);
-        }
-    }
-
     /**
-     * Get extension converter provider
+     * Get extension converter provider.
      * @return extension converter provider
      */
     protected ExtensionConverterProvider getExtensionConverterProvider() {
@@ -80,10 +37,10 @@ public abstract class AbstractExperimenterMultipartService<T extends OfHeader> e
     }
 
     /**
-     * Process experimenter input and result experimenter output
+     * Process experimenter input and result experimenter output.
      * @param input experimenter input
      * @return experimenter output
      */
-    public abstract Future<RpcResult<SendExperimenterMpRequestOutput>> handleAndReply(SendExperimenterMpRequestInput input);
-
+    public abstract Future<RpcResult<SendExperimenterMpRequestOutput>>
+        handleAndReply(SendExperimenterMpRequestInput input);
 }