public void write(org.apache.thrift.protocol.TProtocol oprot, DadoTransporteThrift struct)
        throws org.apache.thrift.TException {
      struct.validate();

      oprot.writeStructBegin(STRUCT_DESC);
      if (struct.uuidDadoSerializado != null) {
        oprot.writeFieldBegin(UUID_DADO_SERIALIZADO_FIELD_DESC);
        oprot.writeString(struct.uuidDadoSerializado);
        oprot.writeFieldEnd();
      }
      oprot.writeFieldBegin(TIPO_DADO_SERIALIZADO_FIELD_DESC);
      oprot.writeI64(struct.tipoDadoSerializado);
      oprot.writeFieldEnd();
      if (struct.cnesDadoSerializado != null) {
        oprot.writeFieldBegin(CNES_DADO_SERIALIZADO_FIELD_DESC);
        oprot.writeString(struct.cnesDadoSerializado);
        oprot.writeFieldEnd();
      }
      if (struct.codIbge != null) {
        if (struct.isSetCodIbge()) {
          oprot.writeFieldBegin(COD_IBGE_FIELD_DESC);
          oprot.writeString(struct.codIbge);
          oprot.writeFieldEnd();
        }
      }
      if (struct.ineDadoSerializado != null) {
        if (struct.isSetIneDadoSerializado()) {
          oprot.writeFieldBegin(INE_DADO_SERIALIZADO_FIELD_DESC);
          oprot.writeString(struct.ineDadoSerializado);
          oprot.writeFieldEnd();
        }
      }
      if (struct.isSetNumLote()) {
        oprot.writeFieldBegin(NUM_LOTE_FIELD_DESC);
        oprot.writeI64(struct.numLote);
        oprot.writeFieldEnd();
      }
      if (struct.dadoSerializado != null) {
        oprot.writeFieldBegin(DADO_SERIALIZADO_FIELD_DESC);
        oprot.writeBinary(struct.dadoSerializado);
        oprot.writeFieldEnd();
      }
      if (struct.remetente != null) {
        oprot.writeFieldBegin(REMETENTE_FIELD_DESC);
        struct.remetente.write(oprot);
        oprot.writeFieldEnd();
      }
      if (struct.originadora != null) {
        oprot.writeFieldBegin(ORIGINADORA_FIELD_DESC);
        struct.originadora.write(oprot);
        oprot.writeFieldEnd();
      }
      if (struct.versao != null) {
        if (struct.isSetVersao()) {
          oprot.writeFieldBegin(VERSAO_FIELD_DESC);
          struct.versao.write(oprot);
          oprot.writeFieldEnd();
        }
      }
      oprot.writeFieldStop();
      oprot.writeStructEnd();
    }
 public void read(org.apache.thrift.protocol.TProtocol iprot, DadoTransporteThrift 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: // UUID_DADO_SERIALIZADO
         if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
           struct.uuidDadoSerializado = iprot.readString();
           struct.setUuidDadoSerializadoIsSet(true);
         } else {
           org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
         }
         break;
       case 2: // TIPO_DADO_SERIALIZADO
         if (schemeField.type == org.apache.thrift.protocol.TType.I64) {
           struct.tipoDadoSerializado = iprot.readI64();
           struct.setTipoDadoSerializadoIsSet(true);
         } else {
           org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
         }
         break;
       case 3: // CNES_DADO_SERIALIZADO
         if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
           struct.cnesDadoSerializado = iprot.readString();
           struct.setCnesDadoSerializadoIsSet(true);
         } else {
           org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
         }
         break;
       case 4: // COD_IBGE
         if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
           struct.codIbge = iprot.readString();
           struct.setCodIbgeIsSet(true);
         } else {
           org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
         }
         break;
       case 5: // INE_DADO_SERIALIZADO
         if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
           struct.ineDadoSerializado = iprot.readString();
           struct.setIneDadoSerializadoIsSet(true);
         } else {
           org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
         }
         break;
       case 6: // NUM_LOTE
         if (schemeField.type == org.apache.thrift.protocol.TType.I64) {
           struct.numLote = iprot.readI64();
           struct.setNumLoteIsSet(true);
         } else {
           org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
         }
         break;
       case 7: // DADO_SERIALIZADO
         if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
           struct.dadoSerializado = iprot.readBinary();
           struct.setDadoSerializadoIsSet(true);
         } else {
           org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
         }
         break;
       case 8: // REMETENTE
         if (schemeField.type == org.apache.thrift.protocol.TType.STRUCT) {
           struct.remetente = new DadoInstalacaoThrift();
           struct.remetente.read(iprot);
           struct.setRemetenteIsSet(true);
         } else {
           org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
         }
         break;
       case 9: // ORIGINADORA
         if (schemeField.type == org.apache.thrift.protocol.TType.STRUCT) {
           struct.originadora = new DadoInstalacaoThrift();
           struct.originadora.read(iprot);
           struct.setOriginadoraIsSet(true);
         } else {
           org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
         }
         break;
       case 10: // VERSAO
         if (schemeField.type == org.apache.thrift.protocol.TType.STRUCT) {
           struct.versao =
               new br.gov.saude.esus.transport.common.api.configuracaodestino.VersaoThrift();
           struct.versao.read(iprot);
           struct.setVersaoIsSet(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();
 }