FlowRule api no longer uses TableTypes. Existing usages are converted to
integer representations via Type.ordinal() call

Change-Id: Ie2a26c5ced166e12f0e1ea22e39cd5195455a1ad
diff --git a/providers/openflow/flow/src/main/java/org/onosproject/provider/of/flow/impl/FlowModBuilderVer13.java b/providers/openflow/flow/src/main/java/org/onosproject/provider/of/flow/impl/FlowModBuilderVer13.java
index f0ce1f4..30711ad 100644
--- a/providers/openflow/flow/src/main/java/org/onosproject/provider/of/flow/impl/FlowModBuilderVer13.java
+++ b/providers/openflow/flow/src/main/java/org/onosproject/provider/of/flow/impl/FlowModBuilderVer13.java
@@ -124,7 +124,7 @@
                 .setMatch(match)
                 .setFlags(Collections.singleton(OFFlowModFlags.SEND_FLOW_REM))
                 .setPriority(flowRule().priority())
-                .setTableId(TableId.of(flowRule().type().ordinal()))
+                .setTableId(TableId.of(flowRule().tableId()))
                 .build();
 
         return fm;
@@ -161,7 +161,7 @@
                 .setMatch(match)
                 .setFlags(Collections.singleton(OFFlowModFlags.SEND_FLOW_REM))
                 .setPriority(flowRule().priority())
-                .setTableId(TableId.of(flowRule().type().ordinal()))
+                .setTableId(TableId.of(flowRule().tableId()))
                 .build();
 
         return fm;
@@ -180,7 +180,7 @@
                 .setMatch(match)
                 .setFlags(Collections.singleton(OFFlowModFlags.SEND_FLOW_REM))
                 .setPriority(flowRule().priority())
-                .setTableId(TableId.of(flowRule().type().ordinal()))
+                .setTableId(TableId.of(flowRule().tableId()))
                 .build();
 
         return fm;
diff --git a/providers/openflow/flow/src/main/java/org/onosproject/provider/of/flow/impl/OpenFlowRuleProvider.java b/providers/openflow/flow/src/main/java/org/onosproject/provider/of/flow/impl/OpenFlowRuleProvider.java
index d19a231..32042fe 100644
--- a/providers/openflow/flow/src/main/java/org/onosproject/provider/of/flow/impl/OpenFlowRuleProvider.java
+++ b/providers/openflow/flow/src/main/java/org/onosproject/provider/of/flow/impl/OpenFlowRuleProvider.java
@@ -144,11 +144,11 @@
 
     private void applyRule(FlowRule flowRule) {
         OpenFlowSwitch sw = controller.getSwitch(Dpid.dpid(flowRule.deviceId().uri()));
-        if (flowRule.type() == FlowRule.Type.DEFAULT) {
+        if (flowRule.tableId() == 0) {
             sw.sendMsg(FlowModBuilder.builder(flowRule, sw.factory(),
                     Optional.empty()).buildFlowAdd());
         } else {
-            OpenFlowSwitch.TableType type = getTableType(flowRule.type());
+            OpenFlowSwitch.TableType type = getTableType(flowRule.tableId());
             sw.transformAndSendMsg(FlowModBuilder.builder(flowRule, sw.factory(),
                                               Optional.empty()).buildFlowAdd(),
                                               type);
@@ -166,12 +166,12 @@
 
     private void removeRule(FlowRule flowRule) {
         OpenFlowSwitch sw = controller.getSwitch(Dpid.dpid(flowRule.deviceId().uri()));
-        if (flowRule.type() == FlowRule.Type.DEFAULT) {
+        if (flowRule.tableId() == 0) {
             sw.sendMsg(FlowModBuilder.builder(flowRule, sw.factory(),
                     Optional.empty()).buildFlowDel());
         } else {
             sw.transformAndSendMsg(FlowModBuilder.builder(flowRule, sw.factory(),
-                    Optional.empty()).buildFlowDel(), getTableType(flowRule.type()));
+                    Optional.empty()).buildFlowDel(), getTableType(flowRule.tableId()));
         }
     }
 
@@ -211,10 +211,10 @@
                               fbe.operator(), fbe);
                     continue;
                 }
-            if (fbe.target().type() == FlowRule.Type.DEFAULT) {
+            if (fbe.target().tableId() == 0) {
                 sw.sendMsg(mod);
             } else {
-                sw.transformAndSendMsg(mod, getTableType(fbe.target().type()));
+                sw.transformAndSendMsg(mod, getTableType(fbe.target().tableId()));
             }
         }
         OFBarrierRequest.Builder builder = sw.factory()
@@ -223,8 +223,8 @@
         sw.sendMsg(builder.build());
     }
 
-    private OpenFlowSwitch.TableType getTableType(FlowRule.Type type) {
-        switch (type) {
+    private OpenFlowSwitch.TableType getTableType(int type) {
+        switch (FlowRule.Type.values()[type]) {
 
             case DEFAULT:
                 return OpenFlowSwitch.TableType.NONE;