Fix warnings in test-provider
[openflowplugin.git] / test-provider / src / main / java / org / opendaylight / openflowplugin / test / OpenflowpluginMeterTestCommandProvider.java
index 9ca3d4fdae88474657192ed113bb224fc5e03f5f..9045b3468ddcaa1054e8957212819b6b14d2c8f3 100644 (file)
@@ -5,21 +5,18 @@
  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
  * and is available at http://www.eclipse.org/legal/epl-v10.html
  */
-
 package org.opendaylight.openflowplugin.test;
 
 import com.google.common.util.concurrent.FutureCallback;
-import com.google.common.util.concurrent.Futures;
-import com.google.common.util.concurrent.ListenableFuture;
 import com.google.common.util.concurrent.MoreExecutors;
-import java.util.ArrayList;
-import java.util.List;
+import org.eclipse.jdt.annotation.NonNull;
 import org.eclipse.osgi.framework.console.CommandInterpreter;
 import org.eclipse.osgi.framework.console.CommandProvider;
-import org.opendaylight.controller.md.sal.binding.api.DataBroker;
-import org.opendaylight.controller.md.sal.binding.api.ReadWriteTransaction;
-import org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType;
-import org.opendaylight.controller.sal.binding.api.NotificationService;
+import org.opendaylight.mdsal.binding.api.DataBroker;
+import org.opendaylight.mdsal.binding.api.NotificationService;
+import org.opendaylight.mdsal.binding.api.ReadWriteTransaction;
+import org.opendaylight.mdsal.common.api.CommitInfo;
+import org.opendaylight.mdsal.common.api.LogicalDatastoreType;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.flow.inventory.rev130819.FlowCapableNode;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.flow.inventory.rev130819.meters.Meter;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.flow.inventory.rev130819.meters.MeterBuilder;
@@ -28,7 +25,6 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.NodeId;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.Nodes;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.Node;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.NodeBuilder;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.inventory.rev130819.nodes.NodeKey;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.meter.service.rev130918.MeterAdded;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.meter.service.rev130918.MeterRemoved;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.meter.service.rev130918.MeterUpdated;
@@ -39,19 +35,20 @@ import org.opendaylight.yang.gen.v1.urn.opendaylight.meter.types.rev130918.Meter
 import org.opendaylight.yang.gen.v1.urn.opendaylight.meter.types.rev130918.MeterId;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.meter.types.rev130918.band.type.band.type.DscpRemarkBuilder;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.meter.types.rev130918.meter.MeterBandHeadersBuilder;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.meter.types.rev130918.meter.meter.band.headers.MeterBandHeader;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.meter.types.rev130918.meter.meter.band.headers.MeterBandHeaderBuilder;
 import org.opendaylight.yang.gen.v1.urn.opendaylight.meter.types.rev130918.meter.meter.band.headers.meter.band.header.MeterBandTypesBuilder;
 import org.opendaylight.yangtools.concepts.Registration;
 import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
+import org.opendaylight.yangtools.yang.binding.util.BindingMap;
+import org.opendaylight.yangtools.yang.common.Uint32;
+import org.opendaylight.yangtools.yang.common.Uint8;
 import org.osgi.framework.BundleContext;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-@SuppressWarnings("checkstyle:MethodName")
 public class OpenflowpluginMeterTestCommandProvider implements CommandProvider {
-
     private static final Logger LOG = LoggerFactory.getLogger(OpenflowpluginMeterTestCommandProvider.class);
+
     private final DataBroker dataBroker;
     private final BundleContext ctx;
     private Meter testMeter;
@@ -64,8 +61,8 @@ public class OpenflowpluginMeterTestCommandProvider implements CommandProvider {
     private final NotificationService notificationService;
     private Registration listener1Reg;
 
-    public OpenflowpluginMeterTestCommandProvider(DataBroker dataBroker, NotificationService notificationService,
-            BundleContext ctx) {
+    public OpenflowpluginMeterTestCommandProvider(final DataBroker dataBroker,
+            final NotificationService notificationService, final BundleContext ctx) {
         this.dataBroker = dataBroker;
         this.notificationService = notificationService;
         this.ctx = ctx;
@@ -80,143 +77,118 @@ public class OpenflowpluginMeterTestCommandProvider implements CommandProvider {
         createTestMeter();
     }
 
-    private void createUserNode(String nodeRef) {
-        NodeBuilder builder = new NodeBuilder();
-        builder.setId(new NodeId(nodeRef));
-        builder.withKey(new NodeKey(builder.getId()));
-        testNode = builder.build();
+    private void createUserNode(final String nodeRef) {
+        testNode = new NodeBuilder().setId(new NodeId(nodeRef)).build();
     }
 
     private void createTestNode() {
-        NodeBuilder builder = new NodeBuilder();
-        builder.setId(new NodeId(OpenflowpluginTestActivator.NODE_ID));
-        builder.withKey(new NodeKey(builder.getId()));
-        testNode = builder.build();
+        testNode = new NodeBuilder().setId(new NodeId(OpenflowpluginTestActivator.NODE_ID)).build();
     }
 
-    private InstanceIdentifier<Node> nodeToInstanceId(Node node) {
+    private static @NonNull InstanceIdentifier<Node> nodeToInstanceId(final Node node) {
         return InstanceIdentifier.create(Nodes.class).child(Node.class, node.key());
     }
 
     private static final class MeterEventListener implements SalMeterListener {
-
         @Override
-        public void onMeterAdded(MeterAdded notification) {
-            LOG.info("Meter to be added.........................." + notification.toString());
-            LOG.info("Meter  Xid........................." + notification.getTransactionId().getValue());
-            LOG.info("-----------------------------------------------------------------------------------");
+        @Deprecated
+        public void onMeterAdded(final MeterAdded notification) {
+            LOG.info("Meter to be added {}", notification.toString());
+            LOG.info("Meter  Xid {}", notification.getTransactionId().getValue());
         }
 
         @Override
-        public void onMeterRemoved(MeterRemoved notification) {
-            LOG.info("Meter to be removed.........................." + notification.toString());
-            LOG.info("Meter  Xid........................." + notification.getTransactionId().getValue());
-            LOG.info("-----------------------------------------------------------------------------------");
+        @Deprecated
+        public void onMeterRemoved(final MeterRemoved notification) {
+            LOG.info("Meter to be removed {}", notification.toString());
+            LOG.info("Meter  Xid {}", notification.getTransactionId().getValue());
         }
 
         @Override
-        public void onMeterUpdated(MeterUpdated notification) {
-            LOG.info("Meter to be updated.........................." + notification.toString());
-            LOG.info("Meter  Xid........................." + notification.getTransactionId().getValue());
-            LOG.info("-----------------------------------------------------------------------------------");
+        @Deprecated
+        public void onMeterUpdated(final MeterUpdated notification) {
+            LOG.info("Meter to be updated {}", notification.toString());
+            LOG.info("Meter  Xid {}", notification.getTransactionId().getValue());
         }
-
     }
 
     private MeterBuilder createTestMeter() {
         // Sample data , committing to DataStore
-
-        long id = 12;
-        MeterKey key = new MeterKey(new MeterId(id));
-        MeterBuilder meter = new MeterBuilder();
-        meter.setContainerName("abcd");
-        meter.withKey(key);
-        meter.setMeterId(new MeterId(9L));
-        meter.setMeterName(originalMeterName);
-        meter.setFlags(new MeterFlags(true, false, false, false));
-        MeterBandHeaderBuilder bandHeader = new MeterBandHeaderBuilder();
-        bandHeader.setBandRate((long) 234);
-        bandHeader.setBandBurstSize((long) 444);
-        DscpRemarkBuilder dscpRemark = new DscpRemarkBuilder();
-        dscpRemark.setDscpRemarkBurstSize((long) 5);
-        dscpRemark.setPrecLevel((short) 1);
-        dscpRemark.setDscpRemarkRate((long) 12);
-        bandHeader.setBandType(dscpRemark.build());
-        MeterBandTypesBuilder bandTypes = new MeterBandTypesBuilder();
-        MeterBandType bandType = new MeterBandType(false, true, false);
-        bandTypes.setFlags(bandType);
-        bandHeader.setMeterBandTypes(bandTypes.build());
-        bandHeader.setBandId(new BandId(0L));
-
-        List<MeterBandHeader> bandHdr = new ArrayList<>();
-        bandHdr.add(bandHeader.build());
-
-        MeterBandHeadersBuilder bandHeaders = new MeterBandHeadersBuilder();
-        bandHeaders.setMeterBandHeader(bandHdr);
-        meter.setMeterBandHeaders(bandHeaders.build());
+        final MeterBuilder meter = new MeterBuilder()
+            .setContainerName("abcd")
+            .withKey(new MeterKey(new MeterId(Uint32.valueOf(12))))
+            .setMeterId(new MeterId(Uint32.valueOf(9)))
+            .setMeterName(originalMeterName)
+            .setFlags(new MeterFlags(true, false, false, false))
+            .setMeterBandHeaders(new MeterBandHeadersBuilder()
+                .setMeterBandHeader(BindingMap.of(new MeterBandHeaderBuilder()
+                    .setBandRate(Uint32.valueOf(234))
+                    .setBandBurstSize(Uint32.valueOf(444))
+                    .setBandType(new DscpRemarkBuilder()
+                        .setDscpRemarkBurstSize(Uint32.valueOf(5))
+                        .setPrecLevel(Uint8.ONE)
+                        .setDscpRemarkRate(Uint32.valueOf(12))
+                        .build())
+                    .setMeterBandTypes(new MeterBandTypesBuilder()
+                        .setFlags(new MeterBandType(false, true, false))
+                        .build())
+                    .setBandId(new BandId(Uint32.ZERO))
+                    .build()))
+                .build());
 
         testMeter = meter.build();
         return meter;
     }
 
-    private MeterBuilder createTestMeters(String s1, String s2) {
+    private MeterBuilder createTestMeters(final String s1, final String s2) {
         // Sample data , committing to DataStore
-        long id = Integer.parseInt(s1);
-        MeterKey key = new MeterKey(new MeterId(id));
-        MeterBuilder meter = new MeterBuilder();
-        meter.setContainerName("abcd");
-        meter.withKey(key);
-        meter.setMeterId(new MeterId(9L));
-        MeterBandHeaderBuilder bandHeader = new MeterBandHeaderBuilder();
+        final MeterBuilder meter = new MeterBuilder()
+            .setContainerName("abcd")
+            .withKey(new MeterKey(new MeterId(Uint32.valueOf(s1))))
+            .setMeterId(new MeterId(Uint32.valueOf(9)))
+            .setFlags(new MeterFlags(true, false, false, false));
+        final MeterBandHeaderBuilder bandHeader = new MeterBandHeaderBuilder()
+            .setBandBurstSize(Uint32.valueOf(444))
+            .setBandType(new DscpRemarkBuilder()
+                .setDscpRemarkBurstSize(Uint32.valueOf(5)).setPrecLevel(Uint8.ONE).setDscpRemarkRate(Uint32.valueOf(12))
+                .build())
+            .setMeterBandTypes(new MeterBandTypesBuilder().setFlags(new MeterBandType(false, true, false)).build())
+            .setBandId(new BandId(Uint32.ZERO));
+
         if (s2.equalsIgnoreCase("modify")) {
             meter.setMeterName(updatedMeterName);
-            bandHeader.setBandRate((long) 234);
+            bandHeader.setBandRate(Uint32.valueOf(234));
         } else {
             meter.setMeterName(originalMeterName);
-            bandHeader.setBandRate((long) 123);
+            bandHeader.setBandRate(Uint32.valueOf(123));
         }
-        meter.setFlags(new MeterFlags(true, false, false, false));
-
-        bandHeader.setBandBurstSize((long) 444);
-        DscpRemarkBuilder dscpRemark = new DscpRemarkBuilder();
-        dscpRemark.setDscpRemarkBurstSize((long) 5);
-        dscpRemark.setPrecLevel((short) 1);
-        dscpRemark.setDscpRemarkRate((long) 12);
-        bandHeader.setBandType(dscpRemark.build());
-        MeterBandTypesBuilder bandTypes = new MeterBandTypesBuilder();
-        MeterBandType bandType = new MeterBandType(false, true, false);
-        bandTypes.setFlags(bandType);
-        bandHeader.setMeterBandTypes(bandTypes.build());
-        bandHeader.setBandId(new BandId(0L));
-
-        List<MeterBandHeader> bandHdr = new ArrayList<>();
-        bandHdr.add(bandHeader.build());
-
-        MeterBandHeadersBuilder bandHeaders = new MeterBandHeadersBuilder();
-        bandHeaders.setMeterBandHeader(bandHdr);
-        meter.setMeterBandHeaders(bandHeaders.build());
-
-        if (Integer.parseInt(s1) == 1) {
-            testMeter1 = meter.build();
-        } else if (Integer.parseInt(s1) == 2) {
-            testMeter2 = meter.build();
-        } else if (Integer.parseInt(s1) == 3) {
-            testMeter1 = meter.build();
-        } else if (Integer.parseInt(s1) == 4) {
-            testMeter2 = meter.build();
-        } else if (Integer.parseInt(s1) == 5) {
-            testMeter1 = meter.build();
-        } else if (Integer.parseInt(s1) == 6) {
-            testMeter2 = meter.build();
-        } else if (Integer.parseInt(s1) == 7) {
-            testMeter1 = meter.build();
-        } else if (Integer.parseInt(s1) == 8) {
-            testMeter2 = meter.build();
+
+        meter.setMeterBandHeaders(new MeterBandHeadersBuilder()
+            .setMeterBandHeader(BindingMap.of(bandHeader.build()))
+            .build());
+
+        int firstInt = Integer.parseInt(s1);
+        switch (firstInt) {
+            case 1:
+            case 3:
+            case 5:
+            case 7:
+                testMeter1 = meter.build();
+                break;
+            case 2:
+            case 4:
+            case 6:
+            case 8:
+                testMeter2 = meter.build();
+                break;
+            default:
+                // No-op?
         }
 
         return meter;
     }
 
+    @SuppressWarnings("checkstyle:MethodName")
     public void _removeMeter(final CommandInterpreter ci) {
         String nref = ci.nextArgument();
 
@@ -232,20 +204,20 @@ public class OpenflowpluginMeterTestCommandProvider implements CommandProvider {
         InstanceIdentifier<Meter> path1 = InstanceIdentifier.create(Nodes.class).child(Node.class, testNode.key())
                 .augmentation(FlowCapableNode.class).child(Meter.class, new MeterKey(testMeter.getMeterId()));
         modification.delete(LogicalDatastoreType.CONFIGURATION, path1);
-        ListenableFuture<Void> commitFuture = modification.submit();
-        Futures.addCallback(commitFuture, new FutureCallback<Void>() {
+        modification.commit().addCallback(new FutureCallback<CommitInfo>() {
             @Override
-            public void onSuccess(Void notUsed) {
+            public void onSuccess(final CommitInfo notUsed) {
                 ci.println("Status of Group Data Loaded Transaction: success.");
             }
 
             @Override
-            public void onFailure(Throwable throwable) {
+            public void onFailure(final Throwable throwable) {
                 ci.println(String.format("Status of Group Data Loaded Transaction : failure. Reason : %s", throwable));
             }
         }, MoreExecutors.directExecutor());
     }
 
+    @SuppressWarnings("checkstyle:MethodName")
     public void _removeMeters(final CommandInterpreter ci) {
         String nref = ci.nextArgument();
 
@@ -257,7 +229,7 @@ public class OpenflowpluginMeterTestCommandProvider implements CommandProvider {
             createUserNode(nref);
         }
 
-        Integer count = Integer.parseInt(ci.nextArgument());
+        int count = Integer.parseInt(ci.nextArgument());
 
         ReadWriteTransaction modification = dataBroker.newReadWriteTransaction();
         switch (count) {
@@ -314,21 +286,21 @@ public class OpenflowpluginMeterTestCommandProvider implements CommandProvider {
                 break;
         }
 
-        ListenableFuture<Void> commitFuture = modification.submit();
-        Futures.addCallback(commitFuture, new FutureCallback<Void>() {
+        modification.commit().addCallback(new FutureCallback<CommitInfo>() {
             @Override
-            public void onSuccess(Void notUsed) {
+            public void onSuccess(final CommitInfo notUsed) {
                 ci.println("Status of Group Data Loaded Transaction: success.");
             }
 
             @Override
-            public void onFailure(Throwable throwable) {
+            public void onFailure(final Throwable throwable) {
                 ci.println(String.format("Status of Group Data Loaded Transaction : failure. Reason : %s", throwable));
             }
         }, MoreExecutors.directExecutor());
     }
 
-    public void _addMeter(CommandInterpreter ci) {
+    @SuppressWarnings("checkstyle:MethodName")
+    public void _addMeter(final CommandInterpreter ci) {
         String nref = ci.nextArgument();
 
         if (nref == null) {
@@ -342,7 +314,8 @@ public class OpenflowpluginMeterTestCommandProvider implements CommandProvider {
         writeMeter(ci, testMeter);
     }
 
-    public void _addMeters(CommandInterpreter ci) {
+    @SuppressWarnings("checkstyle:MethodName")
+    public void _addMeters(final CommandInterpreter ci) {
         String nref = ci.nextArgument();
 
         if (nref == null) {
@@ -352,7 +325,7 @@ public class OpenflowpluginMeterTestCommandProvider implements CommandProvider {
             ci.println("User node added" + nref);
             createUserNode(nref);
         }
-        Integer count = Integer.parseInt(ci.nextArgument());
+        int count = Integer.parseInt(ci.nextArgument());
         switch (count) {
             case 1:
                 createTestMeters("1", "add");
@@ -381,52 +354,54 @@ public class OpenflowpluginMeterTestCommandProvider implements CommandProvider {
         // writeMeter(ci, testMeter);
     }
 
-    private void writeMeter(final CommandInterpreter ci, Meter meter) {
+    private void writeMeter(final CommandInterpreter ci, final Meter meter) {
         ReadWriteTransaction modification = dataBroker.newReadWriteTransaction();
         InstanceIdentifier<Meter> path1 = InstanceIdentifier.create(Nodes.class).child(Node.class, testNode.key())
                 .augmentation(FlowCapableNode.class).child(Meter.class, new MeterKey(meter.getMeterId()));
-        modification.merge(LogicalDatastoreType.CONFIGURATION, nodeToInstanceId(testNode), testNode, true);
-        modification.merge(LogicalDatastoreType.CONFIGURATION, path1, meter, true);
-        ListenableFuture<Void> commitFuture = modification.submit();
-        Futures.addCallback(commitFuture, new FutureCallback<Void>() {
+        modification.mergeParentStructureMerge(LogicalDatastoreType.CONFIGURATION, nodeToInstanceId(testNode),
+                testNode);
+        modification.mergeParentStructureMerge(LogicalDatastoreType.CONFIGURATION, path1, meter);
+        modification.commit().addCallback(new FutureCallback<CommitInfo>() {
             @Override
-            public void onSuccess(Void notUsed) {
+            public void onSuccess(final CommitInfo notUsed) {
                 ci.println("Status of Group Data Loaded Transaction: success.");
             }
 
             @Override
-            public void onFailure(Throwable throwable) {
+            public void onFailure(final Throwable throwable) {
                 ci.println(String.format("Status of Group Data Loaded Transaction : failure. Reason : %s", throwable));
             }
         }, MoreExecutors.directExecutor());
     }
 
-    private void writeMeter(final CommandInterpreter ci, Meter meter, Meter meter1) {
+    private void writeMeter(final CommandInterpreter ci, final Meter meter, final Meter meter1) {
         ReadWriteTransaction modification = dataBroker.newReadWriteTransaction();
         InstanceIdentifier<Meter> path1 = InstanceIdentifier.create(Nodes.class).child(Node.class, testNode.key())
                 .augmentation(FlowCapableNode.class).child(Meter.class, new MeterKey(meter.getMeterId()));
-        modification.merge(LogicalDatastoreType.CONFIGURATION, nodeToInstanceId(testNode), testNode, true);
-        modification.merge(LogicalDatastoreType.CONFIGURATION, path1, meter, true);
+        modification.mergeParentStructureMerge(LogicalDatastoreType.CONFIGURATION, nodeToInstanceId(testNode),
+                testNode);
+        modification.mergeParentStructureMerge(LogicalDatastoreType.CONFIGURATION, path1, meter);
         InstanceIdentifier<Meter> path2 = InstanceIdentifier.create(Nodes.class).child(Node.class, testNode.key())
                 .augmentation(FlowCapableNode.class).child(Meter.class, new MeterKey(meter1.getMeterId()));
-        modification.merge(LogicalDatastoreType.CONFIGURATION, nodeToInstanceId(testNode), testNode, true);
-        modification.merge(LogicalDatastoreType.CONFIGURATION, path2, meter1, true);
+        modification.mergeParentStructureMerge(LogicalDatastoreType.CONFIGURATION, nodeToInstanceId(testNode),
+                testNode);
+        modification.mergeParentStructureMerge(LogicalDatastoreType.CONFIGURATION, path2, meter1);
 
-        ListenableFuture<Void> commitFuture = modification.submit();
-        Futures.addCallback(commitFuture, new FutureCallback<Void>() {
+        modification.commit().addCallback(new FutureCallback<CommitInfo>() {
             @Override
-            public void onSuccess(Void notUsed) {
+            public void onSuccess(final CommitInfo notUsed) {
                 ci.println("Status of Group Data Loaded Transaction: success.");
             }
 
             @Override
-            public void onFailure(Throwable throwable) {
+            public void onFailure(final Throwable throwable) {
                 ci.println(String.format("Status of Group Data Loaded Transaction : failure. Reason : %s", throwable));
             }
         }, MoreExecutors.directExecutor());
     }
 
-    public void _modifyMeter(CommandInterpreter ci) {
+    @SuppressWarnings("checkstyle:MethodName")
+    public void _modifyMeter(final CommandInterpreter ci) {
         String nref = ci.nextArgument();
 
         if (nref == null) {
@@ -443,7 +418,8 @@ public class OpenflowpluginMeterTestCommandProvider implements CommandProvider {
         writeMeter(ci, meter.build());
     }
 
-    public void _modifyMeters(CommandInterpreter ci) {
+    @SuppressWarnings("checkstyle:MethodName")
+    public void _modifyMeters(final CommandInterpreter ci) {
         String nref = ci.nextArgument();
 
         if (nref == null) {
@@ -454,7 +430,7 @@ public class OpenflowpluginMeterTestCommandProvider implements CommandProvider {
             createUserNode(nref);
         }
 
-        Integer count = Integer.parseInt(ci.nextArgument());
+        int count = Integer.parseInt(ci.nextArgument());
         switch (count) {
             case 1:
                 createTestMeters("1", "modify");