MD-SAL Statistics Manager - Fixed bug to show actions of the bucket 51/3351/3
authorAnilkumar Vishnoi <avishnoi@in.ibm.com>
Mon, 2 Dec 2013 16:28:19 +0000 (21:58 +0530)
committerAnilkumar Vishnoi <avishnoi@in.ibm.com>
Mon, 2 Dec 2013 19:01:36 +0000 (00:31 +0530)
send by switch in response to group description multipart request

Change-Id: Ie7e469ab1f744453137b2c0a19869d5e3832aa4c
Signed-off-by: Anilkumar Vishnoi <avishnoi@in.ibm.com>
openflowplugin/src/main/java/org/opendaylight/openflowplugin/openflow/md/core/sal/convertor/ActionConvertor.java
openflowplugin/src/main/java/org/opendaylight/openflowplugin/openflow/md/core/sal/convertor/GroupStatsResponseConvertor.java

index fd62d6c7435f3aba2c95f76c2fc08cb2e6460601..a75a5b04c6bb89d59ebeb50c840b4bf7f99a8d96 100644 (file)
@@ -431,52 +431,59 @@ public final class ActionConvertor {
             org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.actions.actions.list.Action action = actionDesc
                     .getAction();
 
-            if (action instanceof org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.Output)
+            if (action.getType().equals(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.Output.class))
                 bucketActions.add(ofToSALOutputAction(action));
-            else if (action instanceof org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.Group)
+            else if (action.getType().equals(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.Group.class))
                 bucketActions.add(ofToSALGroupAction(action));
-            else if (action instanceof org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.CopyTtlOut) {
+            else if (action.getType().equals(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.CopyTtlOut.class)){
                 CopyTtlOutBuilder copyTtlOutaction = new CopyTtlOutBuilder();
                 bucketActions.add(copyTtlOutaction.build());
-            } else if (action instanceof org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.CopyTtlIn) {
+            }
+            else if (action.getType().equals(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.CopyTtlIn.class)){
                 CopyTtlInBuilder copyTtlInaction = new CopyTtlInBuilder();
                 bucketActions.add(copyTtlInaction.build());
-            } else if (action instanceof org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.SetMplsTtl)
+            }
+            else if (action.getType().equals(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.SetMplsTtl.class))
                 bucketActions.add(ofToSALSetMplsTtl(action));
-            else if (action instanceof org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.DecMplsTtl) {
-                DecMplsTtlBuilder decMplsTtl = new DecMplsTtlBuilder();
+            else if (action.getType().equals(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.DecMplsTtl.class)){
+                DecMplsTtlBuilder decMplsTtl = new DecMplsTtlBuilder(); 
                 bucketActions.add(decMplsTtl.build());
-            } else if (action instanceof org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.PushVlan)
+            }
+            else if (action.getType().equals(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.PushVlan.class))
                 bucketActions.add(ofToSALPushVlanAction(action));
-            else if (action instanceof org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.PopVlan) {
+            else if (action.getType().equals(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.PopVlan.class)){
                 PopVlanActionBuilder popVlan = new PopVlanActionBuilder();
                 bucketActions.add(popVlan.build());
-            } else if (action instanceof org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.PushMpls) {
-                PushMplsActionBuilder pushMpls = new PushMplsActionBuilder();
+            }
+            else if (action.getType().equals(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.PushMpls.class)){
+                PushMplsActionBuilder pushMpls = new PushMplsActionBuilder(); 
                 bucketActions.add(pushMpls.build());
-            } else if (action instanceof org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.PopMpls) {
-                PopMplsActionBuilder popMpls = new PopMplsActionBuilder();
+            }
+            else if (action.getType().equals(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.PopMpls.class)){
+                PopMplsActionBuilder popMpls = new PopMplsActionBuilder(); 
                 bucketActions.add(popMpls.build());
-            } else if (action instanceof org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.SetQueue)
+            }
+            else if (action.getType().equals(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.SetQueue.class))
                 bucketActions.add(ofToSALSetQueue(action));
 
-            else if (action instanceof org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.SetNwTtl)
+            else if (action.getType().equals(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.SetNwTtl.class))
                 bucketActions.add(ofToSALSetNwTtl(action));
-            else if (action instanceof org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.DecNwTtl) {
+            else if (action.getType().equals(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.DecNwTtl.class)){
                 DecNwTtlBuilder decNwTtl = new DecNwTtlBuilder();
                 bucketActions.add(decNwTtl.build());
-            } else if (action instanceof org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.SetField)
+            }
+            else if (action.getType().equals(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.SetField.class))
                 bucketActions.add(FlowConvertor.ofToSALSetField(action));
 
-            else if (action instanceof org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.PushPbb)
+            else if (action.getType().equals(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.PushPbb.class))
                 bucketActions.add(ofToSALPushPbbAction(action));
-            else if (action instanceof org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.PopPbb) {
-                PopPbbActionBuilder popPbb = new PopPbbActionBuilder();
+            else if (action.getType().equals(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.PopPbb.class)){
+                PopPbbActionBuilder popPbb = new PopPbbActionBuilder(); 
                 bucketActions.add(popPbb.build());
-            } else if (action instanceof org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.Experimenter) {
-                // bucketActions.add(ofToSALExperimenter(action));
-                // TODO: Need to explore/discuss on how to handle experimenter
-                // case.
+            }
+            else if (action.getType().equals(org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.common.action.rev130731.Experimenter.class)){
+                //bucketActions.add(ofToSALExperimenter(action));
+                // TODO: Need to explore/discuss on how to handle experimenter case.
             }
 
         }
index 2691ab46eb7d8f585c540f191357321155b5ecee..4b68c70879749f3d497fcf71ce4e33bcfb77e4e3 100644 (file)
@@ -114,7 +114,6 @@ public class GroupStatsResponseConvertor {
         
         org.opendaylight.yang.gen.v1.urn.opendaylight.group.types.rev131018.group.BucketsBuilder salBucketsDesc  = 
                 new org.opendaylight.yang.gen.v1.urn.opendaylight.group.types.rev131018.group.BucketsBuilder();
-        
         List<Bucket> allBuckets = new ArrayList<Bucket>();
         
         for( org.opendaylight.yang.gen.v1.urn.opendaylight.openflow.protocol.rev130731.buckets.BucketsList bucketDetails : bucketDescStats){