Add OFDPA_MPLS_TYPE support

Change-Id: I8cf8eccc82e8454fb5219b050b67482e629faf33
diff --git a/java_gen/java_type.py b/java_gen/java_type.py
index b14b72b..af3abd5 100644
--- a/java_gen/java_type.py
+++ b/java_gen/java_type.py
@@ -866,6 +866,8 @@
 
         'of_oxm_tun_gpe_flags' : { 'value' : u8obj },
         'of_oxm_tun_gpe_flags_masked' : { 'value' : u8obj, 'value_mask' : u8obj },
+
+        'of_oxm_ofdpa_mpls_type': { 'value': u16obj },
 }
 
 
diff --git a/java_gen/pre-written/src/main/java/org/projectfloodlight/openflow/protocol/match/MatchField.java b/java_gen/pre-written/src/main/java/org/projectfloodlight/openflow/protocol/match/MatchField.java
index eeb734f..de3af17 100644
--- a/java_gen/pre-written/src/main/java/org/projectfloodlight/openflow/protocol/match/MatchField.java
+++ b/java_gen/pre-written/src/main/java/org/projectfloodlight/openflow/protocol/match/MatchField.java
@@ -384,6 +384,9 @@
     public final static MatchField<U8> TUN_GPE_FLAGS =
             new MatchField<U8>("tun_gpe_flags", MatchFields.TUN_GPE_NP);
 
+    public final static MatchField<U16> OFDPA_MPLS_TYPE =
+            new MatchField<U16>("ofdpa_mpls_type", MatchFields.OFDPA_MPLS_TYPE);
+
     public String getName() {
         return name;
     }
diff --git a/java_gen/pre-written/src/main/java/org/projectfloodlight/openflow/protocol/match/MatchFields.java b/java_gen/pre-written/src/main/java/org/projectfloodlight/openflow/protocol/match/MatchFields.java
index 7d1b09e..bdf44ea 100644
--- a/java_gen/pre-written/src/main/java/org/projectfloodlight/openflow/protocol/match/MatchFields.java
+++ b/java_gen/pre-written/src/main/java/org/projectfloodlight/openflow/protocol/match/MatchFields.java
@@ -103,4 +103,5 @@
     TUN_GBP_FLAGS,
     TUN_GPE_NP,
     TUN_GPE_FLAGS,
+    OFDPA_MPLS_TYPE,
 }
diff --git a/openflow_input/ofdpa b/openflow_input/ofdpa
new file mode 100644
index 0000000..47aa11e
--- /dev/null
+++ b/openflow_input/ofdpa
@@ -0,0 +1,7 @@
+#version 4
+
+struct of_oxm_ofdpa_mpls_type : of_oxm {
+    uint32_t type_len == 0xFFFF2E06;
+    uint32_t experimenter_id == 0x1018;
+    uint16_t value;
+};