VlanVid: fix special case handling (untagged+present)

OF1.0 and OF1.3 differ in the magic values they assign to matching
untagged packets (OF1.0: 0xFFFF, OF1.3: 0x0000), and the presence
of the OFPVID_PRESENT flag (0x1000) in OF1.3. This change attempts
to handle these changes in a transparent way for the OF1.0 and OF1.3
line protocols.

Internally, the class uses the OF1.3 representation.
diff --git a/java_gen/java_type.py b/java_gen/java_type.py
index 6acdb83..83c56b4 100644
--- a/java_gen/java_type.py
+++ b/java_gen/java_type.py
@@ -324,9 +324,9 @@
             write="$name.write2Bytes(bb)",
             default="EthType.NONE")
 vlan_vid = JType("VlanVid")\
-        .op(read="VlanVid.read2Bytes(bb)",
-            write="$name.write2Bytes(bb)",
-            default="VlanVid.NONE")
+        .op(version=1, read="VlanVid.read2BytesOF10(bb)", write="$name.write2BytesOF10(bb)", default="VlanVid.NONE") \
+        .op(version=2, read="VlanVid.read2BytesOF10(bb)", write="$name.write2BytesOF10(bb)", default="VlanVid.NONE") \
+        .op(version=ANY, read="VlanVid.read2Bytes(bb)", write="$name.write2Bytes(bb)", default="VlanVid.NONE")
 vlan_pcp = JType("VlanPcp")\
         .op(read="VlanPcp.readByte(bb)",
             write="$name.writeByte(bb)",