[ONOS-3291] Match fields added in LOXI for NSH extension

Change-Id: I3a51c914afb9ee3c836de2800ae9cb87d9a1470a
diff --git a/java_gen/java_type.py b/java_gen/java_type.py
index 6b47fc3..9bce653 100644
--- a/java_gen/java_type.py
+++ b/java_gen/java_type.py
@@ -807,6 +807,24 @@
 
         'of_oxm_reg7' : { 'value' : u32obj },
         'of_oxm_reg7_masked' : { 'value' : u32obj, 'value_mask' : u32obj },
+
+        'of_oxm_nsh_spi' : { 'value' : u32obj },
+        'of_oxm_nsh_spi_masked' : { 'value' : u32obj, 'value_mask' : u32obj },
+
+        'of_oxm_nsh_si' : { 'value' : u8obj },
+        'of_oxm_nsh_si_masked' : { 'value' : u8obj, 'value_mask' : u8obj },
+
+        'of_oxm_nsh_ch1' : { 'value' : u32obj },
+        'of_oxm_nsh_ch1_masked' : { 'value' : u32obj, 'value_mask' : u32obj },
+
+        'of_oxm_nsh_ch2' : { 'value' : u32obj },
+        'of_oxm_nsh_ch2_masked' : { 'value' : u32obj, 'value_mask' : u32obj },
+
+        'of_oxm_nsh_ch3' : { 'value' : u32obj },
+        'of_oxm_nsh_ch3_masked' : { 'value' : u32obj, 'value_mask' : u32obj },
+
+        'of_oxm_nsh_ch4' : { 'value' : u32obj },
+        'of_oxm_nsh_ch4_masked' : { 'value' : u32obj, 'value_mask' : u32obj },
 }
 
 
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 c911132..45887a2 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
@@ -328,6 +328,24 @@
     public final static MatchField<U32> REG7 =
             new MatchField<U32>("reg7", MatchFields.REG7);
 
+    public final static MatchField<U32> NSH_SPI =
+            new MatchField<U32>("set_nsp", MatchFields.NSH_SPI);
+
+    public final static MatchField<U8> NSH_SI =
+            new MatchField<U8>("set_nsi", MatchFields.NSH_SI);
+
+    public final static MatchField<U32> NSH_CH1 =
+            new MatchField<U32>("set_nshc1", MatchFields.NSH_CH1);
+
+    public final static MatchField<U32> NSH_CH2 =
+            new MatchField<U32>("set_nshc2", MatchFields.NSH_CH2);
+
+    public final static MatchField<U32> NSH_CH3 =
+            new MatchField<U32>("set_nshc3", MatchFields.NSH_CH3);
+
+    public final static MatchField<U32> NSH_CH4 =
+            new MatchField<U32>("set_nshc4", MatchFields.NSH_CH4);
+
     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 be36713..ed8a230 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
@@ -85,4 +85,10 @@
     REG5,
     REG6,
     REG7,
+    NSH_SPI,
+    NSH_SI,
+    NSH_CH1,
+    NSH_CH2,
+    NSH_CH3,
+    NSH_CH4,
 }