Update MRI projects for Aluminium
[openflowplugin.git] / openflowplugin / src / main / java / org / opendaylight / openflowplugin / openflow / md / core / sal / convertor / MeterConfigStatsResponseConvertor.java
index bc63700d7746cd09d29c0b3ef23635ff5fa4a66e..dd12e99f043dd2ef9f4379cc805e3f34012d451d 100644 (file)
@@ -38,11 +38,11 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.meter.band.header.meter.band.meter.band.experimenter._case.MeterBandExperimenter;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.multipart.reply.multipart.reply.body.multipart.reply.meter.config._case.multipart.reply.meter.config.MeterConfig;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.multipart.reply.multipart.reply.body.multipart.reply.meter.config._case.multipart.reply.meter.config.meter.config.Bands;
-import org.opendaylight.yangtools.yang.binding.DataContainer;
 
 /**
  * Converts list of OF library config meter stats to MD-SAL config meter stats.
  *
+ * <p>
  * Example usage:
  * <pre>
  * {@code
@@ -51,7 +51,8 @@ import org.opendaylight.yangtools.yang.binding.DataContainer;
  * }
  * </pre>
  */
-public class MeterConfigStatsResponseConvertor extends Convertor<List<MeterConfig>, List<MeterConfigStats>, VersionConvertorData> {
+public class MeterConfigStatsResponseConvertor extends Convertor<List<MeterConfig>, List<MeterConfigStats>,
+        VersionConvertorData> {
 
     private static final Set<Class<?>> TYPES = Collections.singleton(MeterConfig.class);
 
@@ -61,15 +62,14 @@ public class MeterConfigStatsResponseConvertor extends Convertor<List<MeterConfi
     }
 
     @Override
-    public List<MeterConfigStats> convert(List<MeterConfig> source, VersionConvertorData data) {
+    public List<MeterConfigStats> convert(final List<MeterConfig> source, final VersionConvertorData data) {
         List<MeterConfigStats> listMeterConfigStats = new ArrayList<>();
 
         for (MeterConfig meterConfig : source) {
             MeterConfigStatsBuilder meterConfigStatsBuilder = new MeterConfigStatsBuilder();
             meterConfigStatsBuilder.setMeterId(new MeterId(meterConfig.getMeterId().getValue()));
-            meterConfigStatsBuilder.setKey(new MeterConfigStatsKey(meterConfigStatsBuilder.getMeterId()));
+            meterConfigStatsBuilder.withKey(new MeterConfigStatsKey(meterConfigStatsBuilder.getMeterId()));
             MeterBandHeadersBuilder meterBandHeadersBuilder = new MeterBandHeadersBuilder();
-            List<Bands> bands = meterConfig.getBands();
 
             MeterFlags meterFlags = new MeterFlags(meterConfig.getFlags().isOFPMFBURST(),
                     meterConfig.getFlags().isOFPMFKBPS(),
@@ -80,7 +80,7 @@ public class MeterConfigStatsResponseConvertor extends Convertor<List<MeterConfi
             List<MeterBandHeader> listBandHeaders = new ArrayList<>();
             int bandKey = 0;
 
-            for (Bands band : bands) {
+            for (Bands band : meterConfig.nonnullBands()) {
                 MeterBandHeaderBuilder meterBandHeaderBuilder = new MeterBandHeaderBuilder();
                 if (band.getMeterBand() instanceof MeterBandDropCase) {
                     MeterBandDropCase dropCaseBand = (MeterBandDropCase) band.getMeterBand();
@@ -93,7 +93,7 @@ public class MeterConfigStatsResponseConvertor extends Convertor<List<MeterConfi
                     meterBandHeaderBuilder.setBandBurstSize(dropBand.getBurstSize());
                     meterBandHeaderBuilder.setBandRate(dropBand.getRate());
                     BandId bandId = new BandId((long) bandKey);
-                    meterBandHeaderBuilder.setKey(new MeterBandHeaderKey(bandId));
+                    meterBandHeaderBuilder.withKey(new MeterBandHeaderKey(bandId));
                     meterBandHeaderBuilder.setBandId(bandId);
 
                     MeterBandTypesBuilder meterBandTypesBuilder = new MeterBandTypesBuilder();
@@ -113,12 +113,13 @@ public class MeterConfigStatsResponseConvertor extends Convertor<List<MeterConfi
                     meterBandHeaderBuilder.setBandBurstSize(dscpRemarkBand.getBurstSize());
                     meterBandHeaderBuilder.setBandRate(dscpRemarkBand.getRate());
                     BandId bandId = new BandId((long) bandKey);
-                    meterBandHeaderBuilder.setKey(new MeterBandHeaderKey(bandId));
+                    meterBandHeaderBuilder.withKey(new MeterBandHeaderKey(bandId));
                     meterBandHeaderBuilder.setBandId(bandId);
 
                     MeterBandTypesBuilder meterBandTypesBuilder = new MeterBandTypesBuilder();
                     meterBandTypesBuilder.setFlags(new MeterBandType(false, true, false));
                     meterBandHeaderBuilder.setMeterBandTypes(meterBandTypesBuilder.build());
+                    meterBandHeaderBuilder.withKey(new MeterBandHeaderKey(bandId));
                     listBandHeaders.add(meterBandHeaderBuilder.build());
 
                 } else if (band.getMeterBand() instanceof MeterBandExperimenterCase) {
@@ -132,17 +133,17 @@ public class MeterConfigStatsResponseConvertor extends Convertor<List<MeterConfi
                     meterBandHeaderBuilder.setBandBurstSize(experimenterBand.getBurstSize());
                     meterBandHeaderBuilder.setBandRate(experimenterBand.getRate());
                     BandId bandId = new BandId((long) bandKey);
-                    meterBandHeaderBuilder.setKey(new MeterBandHeaderKey(bandId));
+                    meterBandHeaderBuilder.withKey(new MeterBandHeaderKey(bandId));
                     meterBandHeaderBuilder.setBandId(bandId);
 
                     MeterBandTypesBuilder meterBandTypesBuilder = new MeterBandTypesBuilder();
                     meterBandTypesBuilder.setFlags(new MeterBandType(false, false, true));
                     meterBandHeaderBuilder.setMeterBandTypes(meterBandTypesBuilder.build());
+                    meterBandHeaderBuilder.withKey(new MeterBandHeaderKey(bandId));
 
                     listBandHeaders.add(meterBandHeaderBuilder.build());
 
                 }
-
                 bandKey++;
             }
 
@@ -153,4 +154,4 @@ public class MeterConfigStatsResponseConvertor extends Convertor<List<MeterConfi
 
         return listMeterConfigStats;
     }
-}
\ No newline at end of file
+}