qosservice: drop nullToEmpty and reqNonNullOrElse 21/79921/4
authorStephen Kitt <skitt@redhat.com>
Fri, 25 Jan 2019 08:53:24 +0000 (09:53 +0100)
committerSam Hague <shague@redhat.com>
Sat, 26 Jan 2019 22:45:37 +0000 (22:45 +0000)
Change-Id: I65eb7a162a2d8cdcc16654945259e111bc4c7c1f
Signed-off-by: Stephen Kitt <skitt@redhat.com>
qosservice/impl/src/main/java/org/opendaylight/netvirt/qosservice/QosNeutronUtils.java
qosservice/impl/src/main/java/org/opendaylight/netvirt/qosservice/QosPolicyChangeListener.java

index 01d5001dd42fa6c1f7793201ba9b7a20f42ca126..2ebf70f964bc3f1a7900fac98a60280e2d0cf49c 100644 (file)
@@ -187,7 +187,8 @@ public class QosNeutronUtils {
                 .child(NetworkMap.class, new NetworkMapKey(networkId)).build();
         Optional<NetworkMap> optionalNetworkMap = MDSALUtil.read(LogicalDatastoreType.CONFIGURATION,
                 networkMapId, dataBroker);
-        return optionalNetworkMap.isPresent() ? nullToEmpty(optionalNetworkMap.get().getSubnetIdList()) : emptyList();
+        return (optionalNetworkMap.isPresent() && optionalNetworkMap.get().getSubnetIdList() != null)
+            ? optionalNetworkMap.get().getSubnetIdList() : emptyList();
     }
 
     @Nonnull
@@ -197,7 +198,8 @@ public class QosNeutronUtils {
                 .child(Subnetmap.class, new SubnetmapKey(subnetId)).build();
         Optional<Subnetmap> optionalSubnetmap = MDSALUtil.read(LogicalDatastoreType.CONFIGURATION,
                 subnetMapId,dataBroker);
-        return optionalSubnetmap.isPresent() ? nullToEmpty(optionalSubnetmap.get().getPortList()) : emptyList();
+        return (optionalSubnetmap.isPresent() && optionalSubnetmap.get().getPortList() != null)
+            ? optionalSubnetmap.get().getPortList() : emptyList();
     }
 
     public void handleNeutronPortQosAdd(Port port, Uuid qosUuid) {
@@ -880,10 +882,4 @@ public class QosNeutronUtils {
     public boolean hasIpv6Addr(int versions) {
         return (versions & (1 << QosConstants.IPV6_ADDR_MASK_BIT)) != 0;
     }
-
-    // TODO Replace this with mdsal's DataObjectUtils.nullToEmpty when upgrading to mdsal 3
-    @Nonnull
-    public static <T> List<T> nullToEmpty(final @Nullable List<T> input) {
-        return input != null ? input : emptyList();
-    }
 }
index 8a89f922f9194df5614789d3d0de82dfd67ac8cf..fb1f75962a3fc14ceca2cbd7c59bd5892a0a5d65 100644 (file)
@@ -9,7 +9,6 @@ package org.opendaylight.netvirt.qosservice;
 
 import static org.opendaylight.genius.infra.Datastore.CONFIGURATION;
 import static org.opendaylight.genius.infra.Datastore.OPERATIONAL;
-import static org.opendaylight.netvirt.qosservice.QosNeutronUtils.nullToEmpty;
 
 import java.math.BigInteger;
 import java.util.ArrayList;
@@ -21,6 +20,7 @@ import java.util.Map.Entry;
 import javax.annotation.PostConstruct;
 import javax.inject.Inject;
 import javax.inject.Singleton;
+import org.eclipse.jdt.annotation.NonNull;
 import org.opendaylight.controller.md.sal.binding.api.DataBroker;
 import org.opendaylight.controller.md.sal.binding.api.DataTreeModification;
 import org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType;
@@ -252,15 +252,17 @@ public class QosPolicyChangeListener extends AsyncClusteredDataTreeChangeListene
             return;
         }
 
-        if (!nullToEmpty(qosNeutronUtils.getQosPolicyMap().get(policyUuid).getBandwidthLimitRules()).isEmpty()) {
-            BandwidthLimitRules bandwidthLimitRules =
-                    qosNeutronUtils.getQosPolicyMap().get(policyUuid).getBandwidthLimitRules().get(0);
+        @NonNull List<BandwidthLimitRules> nonnullBandwidthLimitRules =
+            qosNeutronUtils.getQosPolicyMap().get(policyUuid).nonnullBandwidthLimitRules();
+        if (!nonnullBandwidthLimitRules.isEmpty()) {
+            BandwidthLimitRules bandwidthLimitRules = nonnullBandwidthLimitRules.get(0);
             update(policyUuid, bandwidthLimitRules);
         }
 
-        if (!nullToEmpty(qosNeutronUtils.getQosPolicyMap().get(policyUuid).getDscpmarkingRules()).isEmpty()) {
-            DscpmarkingRules dscpmarkingRules =
-                    qosNeutronUtils.getQosPolicyMap().get(policyUuid).getDscpmarkingRules().get(0);
+        @NonNull List<DscpmarkingRules> nonnullDscpmarkingRules =
+            qosNeutronUtils.getQosPolicyMap().get(policyUuid).nonnullDscpmarkingRules();
+        if (!nonnullDscpmarkingRules.isEmpty()) {
+            DscpmarkingRules dscpmarkingRules = nonnullDscpmarkingRules.get(0);
             update(policyUuid, dscpmarkingRules);
         }
     }