public void read(org.apache.thrift.protocol.TProtocol iprot, MegaStruct struct) throws org.apache.thrift.TException {
      org.apache.thrift.protocol.TField schemeField;
      iprot.readStructBegin();
      while (true)
      {
        schemeField = iprot.readFieldBegin();
        if (schemeField.type == org.apache.thrift.protocol.TType.STOP) { 
          break;
        }
        switch (schemeField.id) {
          case 1: // MY_BOOL
            if (schemeField.type == org.apache.thrift.protocol.TType.BOOL) {
              struct.my_bool = iprot.readBool();
              struct.setMy_boolIsSet(true);
            } else { 
              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
            }
            break;
          case 2: // MY_BYTE
            if (schemeField.type == org.apache.thrift.protocol.TType.BYTE) {
              struct.my_byte = iprot.readByte();
              struct.setMy_byteIsSet(true);
            } else { 
              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
            }
            break;
          case 3: // MY_16BIT_INT
            if (schemeField.type == org.apache.thrift.protocol.TType.I16) {
              struct.my_16bit_int = iprot.readI16();
              struct.setMy_16bit_intIsSet(true);
            } else { 
              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
            }
            break;
          case 4: // MY_32BIT_INT
            if (schemeField.type == org.apache.thrift.protocol.TType.I32) {
              struct.my_32bit_int = iprot.readI32();
              struct.setMy_32bit_intIsSet(true);
            } else { 
              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
            }
            break;
          case 5: // MY_64BIT_INT
            if (schemeField.type == org.apache.thrift.protocol.TType.I64) {
              struct.my_64bit_int = iprot.readI64();
              struct.setMy_64bit_intIsSet(true);
            } else { 
              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
            }
            break;
          case 6: // MY_DOUBLE
            if (schemeField.type == org.apache.thrift.protocol.TType.DOUBLE) {
              struct.my_double = iprot.readDouble();
              struct.setMy_doubleIsSet(true);
            } else { 
              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
            }
            break;
          case 7: // MY_STRING
            if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
              struct.my_string = iprot.readString();
              struct.setMy_stringIsSet(true);
            } else { 
              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
            }
            break;
          case 8: // MY_BINARY
            if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
              struct.my_binary = iprot.readBinary();
              struct.setMy_binaryIsSet(true);
            } else { 
              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
            }
            break;
          case 9: // MY_STRING_STRING_MAP
            if (schemeField.type == org.apache.thrift.protocol.TType.MAP) {
              {
                org.apache.thrift.protocol.TMap _map0 = iprot.readMapBegin();
                struct.my_string_string_map = new java.util.HashMap<java.lang.String,java.lang.String>(2*_map0.size);
                @org.apache.thrift.annotation.Nullable java.lang.String _key1;
                @org.apache.thrift.annotation.Nullable java.lang.String _val2;
                for (int _i3 = 0; _i3 < _map0.size; ++_i3)
                {
                  _key1 = iprot.readString();
                  _val2 = iprot.readString();
                  struct.my_string_string_map.put(_key1, _val2);
                }
                iprot.readMapEnd();
              }
              struct.setMy_string_string_mapIsSet(true);
            } else { 
              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
            }
            break;
          case 10: // MY_STRING_ENUM_MAP
            if (schemeField.type == org.apache.thrift.protocol.TType.MAP) {
              {
                org.apache.thrift.protocol.TMap _map4 = iprot.readMapBegin();
                struct.my_string_enum_map = new java.util.HashMap<java.lang.String,MyEnum>(2*_map4.size);
                @org.apache.thrift.annotation.Nullable java.lang.String _key5;
                @org.apache.thrift.annotation.Nullable MyEnum _val6;
                for (int _i7 = 0; _i7 < _map4.size; ++_i7)
                {
                  _key5 = iprot.readString();
                  _val6 = org.apache.hadoop.hive.serde2.thrift.test.MyEnum.findByValue(iprot.readI32());
                  struct.my_string_enum_map.put(_key5, _val6);
                }
                iprot.readMapEnd();
              }
              struct.setMy_string_enum_mapIsSet(true);
            } else { 
              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
            }
            break;
          case 11: // MY_ENUM_STRING_MAP
            if (schemeField.type == org.apache.thrift.protocol.TType.MAP) {
              {
                org.apache.thrift.protocol.TMap _map8 = iprot.readMapBegin();
                struct.my_enum_string_map = new java.util.EnumMap<MyEnum,java.lang.String>(MyEnum.class);
                @org.apache.thrift.annotation.Nullable MyEnum _key9;
                @org.apache.thrift.annotation.Nullable java.lang.String _val10;
                for (int _i11 = 0; _i11 < _map8.size; ++_i11)
                {
                  _key9 = org.apache.hadoop.hive.serde2.thrift.test.MyEnum.findByValue(iprot.readI32());
                  _val10 = iprot.readString();
                  if (_key9 != null)
                  {
                    struct.my_enum_string_map.put(_key9, _val10);
                  }
                }
                iprot.readMapEnd();
              }
              struct.setMy_enum_string_mapIsSet(true);
            } else { 
              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
            }
            break;
          case 12: // MY_ENUM_STRUCT_MAP
            if (schemeField.type == org.apache.thrift.protocol.TType.MAP) {
              {
                org.apache.thrift.protocol.TMap _map12 = iprot.readMapBegin();
                struct.my_enum_struct_map = new java.util.EnumMap<MyEnum,MiniStruct>(MyEnum.class);
                @org.apache.thrift.annotation.Nullable MyEnum _key13;
                @org.apache.thrift.annotation.Nullable MiniStruct _val14;
                for (int _i15 = 0; _i15 < _map12.size; ++_i15)
                {
                  _key13 = org.apache.hadoop.hive.serde2.thrift.test.MyEnum.findByValue(iprot.readI32());
                  _val14 = new MiniStruct();
                  _val14.read(iprot);
                  if (_key13 != null)
                  {
                    struct.my_enum_struct_map.put(_key13, _val14);
                  }
                }
                iprot.readMapEnd();
              }
              struct.setMy_enum_struct_mapIsSet(true);
            } else { 
              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
            }
            break;
          case 13: // MY_ENUM_STRINGLIST_MAP
            if (schemeField.type == org.apache.thrift.protocol.TType.MAP) {
              {
                org.apache.thrift.protocol.TMap _map16 = iprot.readMapBegin();
                struct.my_enum_stringlist_map = new java.util.EnumMap<MyEnum,java.util.List<java.lang.String>>(MyEnum.class);
                @org.apache.thrift.annotation.Nullable MyEnum _key17;
                @org.apache.thrift.annotation.Nullable java.util.List<java.lang.String> _val18;
                for (int _i19 = 0; _i19 < _map16.size; ++_i19)
                {
                  _key17 = org.apache.hadoop.hive.serde2.thrift.test.MyEnum.findByValue(iprot.readI32());
                  {
                    org.apache.thrift.protocol.TList _list20 = iprot.readListBegin();
                    _val18 = new java.util.ArrayList<java.lang.String>(_list20.size);
                    @org.apache.thrift.annotation.Nullable java.lang.String _elem21;
                    for (int _i22 = 0; _i22 < _list20.size; ++_i22)
                    {
                      _elem21 = iprot.readString();
                      _val18.add(_elem21);
                    }
                    iprot.readListEnd();
                  }
                  if (_key17 != null)
                  {
                    struct.my_enum_stringlist_map.put(_key17, _val18);
                  }
                }
                iprot.readMapEnd();
              }
              struct.setMy_enum_stringlist_mapIsSet(true);
            } else { 
              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
            }
            break;
          case 14: // MY_ENUM_STRUCTLIST_MAP
            if (schemeField.type == org.apache.thrift.protocol.TType.MAP) {
              {
                org.apache.thrift.protocol.TMap _map23 = iprot.readMapBegin();
                struct.my_enum_structlist_map = new java.util.EnumMap<MyEnum,java.util.List<MiniStruct>>(MyEnum.class);
                @org.apache.thrift.annotation.Nullable MyEnum _key24;
                @org.apache.thrift.annotation.Nullable java.util.List<MiniStruct> _val25;
                for (int _i26 = 0; _i26 < _map23.size; ++_i26)
                {
                  _key24 = org.apache.hadoop.hive.serde2.thrift.test.MyEnum.findByValue(iprot.readI32());
                  {
                    org.apache.thrift.protocol.TList _list27 = iprot.readListBegin();
                    _val25 = new java.util.ArrayList<MiniStruct>(_list27.size);
                    @org.apache.thrift.annotation.Nullable MiniStruct _elem28;
                    for (int _i29 = 0; _i29 < _list27.size; ++_i29)
                    {
                      _elem28 = new MiniStruct();
                      _elem28.read(iprot);
                      _val25.add(_elem28);
                    }
                    iprot.readListEnd();
                  }
                  if (_key24 != null)
                  {
                    struct.my_enum_structlist_map.put(_key24, _val25);
                  }
                }
                iprot.readMapEnd();
              }
              struct.setMy_enum_structlist_mapIsSet(true);
            } else { 
              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
            }
            break;
          case 15: // MY_STRINGLIST
            if (schemeField.type == org.apache.thrift.protocol.TType.LIST) {
              {
                org.apache.thrift.protocol.TList _list30 = iprot.readListBegin();
                struct.my_stringlist = new java.util.ArrayList<java.lang.String>(_list30.size);
                @org.apache.thrift.annotation.Nullable java.lang.String _elem31;
                for (int _i32 = 0; _i32 < _list30.size; ++_i32)
                {
                  _elem31 = iprot.readString();
                  struct.my_stringlist.add(_elem31);
                }
                iprot.readListEnd();
              }
              struct.setMy_stringlistIsSet(true);
            } else { 
              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
            }
            break;
          case 16: // MY_STRUCTLIST
            if (schemeField.type == org.apache.thrift.protocol.TType.LIST) {
              {
                org.apache.thrift.protocol.TList _list33 = iprot.readListBegin();
                struct.my_structlist = new java.util.ArrayList<MiniStruct>(_list33.size);
                @org.apache.thrift.annotation.Nullable MiniStruct _elem34;
                for (int _i35 = 0; _i35 < _list33.size; ++_i35)
                {
                  _elem34 = new MiniStruct();
                  _elem34.read(iprot);
                  struct.my_structlist.add(_elem34);
                }
                iprot.readListEnd();
              }
              struct.setMy_structlistIsSet(true);
            } else { 
              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
            }
            break;
          case 17: // MY_ENUMLIST
            if (schemeField.type == org.apache.thrift.protocol.TType.LIST) {
              {
                org.apache.thrift.protocol.TList _list36 = iprot.readListBegin();
                struct.my_enumlist = new java.util.ArrayList<MyEnum>(_list36.size);
                @org.apache.thrift.annotation.Nullable MyEnum _elem37;
                for (int _i38 = 0; _i38 < _list36.size; ++_i38)
                {
                  _elem37 = org.apache.hadoop.hive.serde2.thrift.test.MyEnum.findByValue(iprot.readI32());
                  if (_elem37 != null)
                  {
                    struct.my_enumlist.add(_elem37);
                  }
                }
                iprot.readListEnd();
              }
              struct.setMy_enumlistIsSet(true);
            } else { 
              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
            }
            break;
          case 18: // MY_STRINGSET
            if (schemeField.type == org.apache.thrift.protocol.TType.SET) {
              {
                org.apache.thrift.protocol.TSet _set39 = iprot.readSetBegin();
                struct.my_stringset = new java.util.HashSet<java.lang.String>(2*_set39.size);
                @org.apache.thrift.annotation.Nullable java.lang.String _elem40;
                for (int _i41 = 0; _i41 < _set39.size; ++_i41)
                {
                  _elem40 = iprot.readString();
                  struct.my_stringset.add(_elem40);
                }
                iprot.readSetEnd();
              }
              struct.setMy_stringsetIsSet(true);
            } else { 
              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
            }
            break;
          case 19: // MY_ENUMSET
            if (schemeField.type == org.apache.thrift.protocol.TType.SET) {
              {
                org.apache.thrift.protocol.TSet _set42 = iprot.readSetBegin();
                struct.my_enumset = java.util.EnumSet.noneOf(MyEnum.class);
                @org.apache.thrift.annotation.Nullable MyEnum _elem43;
                for (int _i44 = 0; _i44 < _set42.size; ++_i44)
                {
                  _elem43 = org.apache.hadoop.hive.serde2.thrift.test.MyEnum.findByValue(iprot.readI32());
                  if (_elem43 != null)
                  {
                    struct.my_enumset.add(_elem43);
                  }
                }
                iprot.readSetEnd();
              }
              struct.setMy_enumsetIsSet(true);
            } else { 
              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
            }
            break;
          case 20: // MY_STRUCTSET
            if (schemeField.type == org.apache.thrift.protocol.TType.SET) {
              {
                org.apache.thrift.protocol.TSet _set45 = iprot.readSetBegin();
                struct.my_structset = new java.util.HashSet<MiniStruct>(2*_set45.size);
                @org.apache.thrift.annotation.Nullable MiniStruct _elem46;
                for (int _i47 = 0; _i47 < _set45.size; ++_i47)
                {
                  _elem46 = new MiniStruct();
                  _elem46.read(iprot);
                  struct.my_structset.add(_elem46);
                }
                iprot.readSetEnd();
              }
              struct.setMy_structsetIsSet(true);
            } else { 
              org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
            }
            break;
          default:
            org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
        }
        iprot.readFieldEnd();
      }
      iprot.readStructEnd();
      struct.validate();
    }
Returns true if field corresponding to fieldID is set (has been assigned a value) and false otherwise
serde/src/gen/thrift/gen-javabean/org/apache/hadoop/hive/serde2/thrift/test/MegaStruct.java