Clean up instance checks and casts
[openflowplugin.git] / openflowplugin-impl / src / main / java / org / opendaylight / openflowplugin / impl / protocol / serialization / util / ActionUtil.java
index fa13526a7172a7cc9f8b5fb8dfcfb3a358258045..f71a23d2bebe587837e95fbe7e1491cbb3fe737f 100644 (file)
@@ -30,9 +30,12 @@ import org.slf4j.LoggerFactory;
 /**
  * Utility class for action serialization.
  */
-public class ActionUtil {
+public final class ActionUtil {
     private static final Logger LOG = LoggerFactory.getLogger(ActionUtil.class);
 
+    private ActionUtil() {
+    }
+
     /**
      * Serialize OpenFlow action, using extension converter if available.
      * TODO: Remove also extension converters
@@ -47,8 +50,8 @@ public class ActionUtil {
         try {
             Optional.ofNullable(OFSessionUtil.getExtensionConvertorProvider())
                     .flatMap(provider ->
-                            (GeneralExtensionGrouping.class.isInstance(action)
-                                    ? convertExtensionGrouping(provider, action, version)
+                            (action instanceof GeneralExtensionGrouping
+                                    ? convertExtensionGrouping(provider, (GeneralExtensionGrouping)action, version)
                                     : convertGenericAction(provider, action, version))
                                     .map(ofjAction -> {
                                         final OFSerializer<org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common
@@ -86,8 +89,8 @@ public class ActionUtil {
         try {
             Optional.ofNullable(OFSessionUtil.getExtensionConvertorProvider())
                     .flatMap(provider ->
-                            (GeneralExtensionGrouping.class.isInstance(action)
-                                    ? convertExtensionGrouping(provider, action, version)
+                            (action instanceof GeneralExtensionGrouping
+                                    ? convertExtensionGrouping(provider, (GeneralExtensionGrouping)action, version)
                                     : convertGenericAction(provider, action, version))
                                     .map(ofjAction -> {
                                         final HeaderSerializer<org.opendaylight.yang.gen.v1.urn.opendaylight.openflow
@@ -120,21 +123,21 @@ public class ActionUtil {
      * to OpenFlowJava action
      *
      * @param provider extension converter provider
-     * @param action   OpenFlowPlugin action
+     * @param action   GeneralExtensionGrouping action
      * @param version  OpenFlow version
      * @return optional OpenFlowJava action
      */
     private static Optional<org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.actions
             .grouping.Action> convertExtensionGrouping(final ExtensionConverterProvider provider,
-                                                       final Action action,
+                                                       final GeneralExtensionGrouping action,
                                                        final short version) {
         final ConverterExtensionKey<? extends ExtensionKey> key =
-                new ConverterExtensionKey<>(GeneralExtensionGrouping.class.cast(action).getExtensionKey(), version);
+                new ConverterExtensionKey<>(action.getExtensionKey(), version);
 
         final ConvertorToOFJava<org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev150203.actions
                 .grouping.Action> converter = provider.getConverter(key);
 
-        return Optional.ofNullable(converter).map(c -> c.convert(((GeneralExtensionGrouping) action).getExtension()));
+        return Optional.ofNullable(converter).map(c -> c.convert(action.getExtension()));
     }
 
     /**