public void write(TProtocol oprot) throws TException {
    validate();

    oprot.writeStructBegin(STRUCT_DESC);
    if (this.table != null) {
      oprot.writeFieldBegin(TABLE_FIELD_DESC);
      oprot.writeString(this.table);
      oprot.writeFieldEnd();
    }
    if (this.key != null) {
      oprot.writeFieldBegin(KEY_FIELD_DESC);
      oprot.writeString(this.key);
      oprot.writeFieldEnd();
    }
    if (this.cfmap != null) {
      oprot.writeFieldBegin(CFMAP_FIELD_DESC);
      {
        oprot.writeMapBegin(new TMap(TType.STRING, TType.LIST, this.cfmap.size()));
        for (Map.Entry<String, List<superColumn_t>> _iter36 : this.cfmap.entrySet()) {
          oprot.writeString(_iter36.getKey());
          {
            oprot.writeListBegin(new TList(TType.STRUCT, _iter36.getValue().size()));
            for (superColumn_t _iter37 : _iter36.getValue()) {
              _iter37.write(oprot);
            }
            oprot.writeListEnd();
          }
        }
        oprot.writeMapEnd();
      }
      oprot.writeFieldEnd();
    }
    if (this.cfmapdel != null) {
      oprot.writeFieldBegin(CFMAPDEL_FIELD_DESC);
      {
        oprot.writeMapBegin(new TMap(TType.STRING, TType.LIST, this.cfmapdel.size()));
        for (Map.Entry<String, List<superColumn_t>> _iter38 : this.cfmapdel.entrySet()) {
          oprot.writeString(_iter38.getKey());
          {
            oprot.writeListBegin(new TList(TType.STRUCT, _iter38.getValue().size()));
            for (superColumn_t _iter39 : _iter38.getValue()) {
              _iter39.write(oprot);
            }
            oprot.writeListEnd();
          }
        }
        oprot.writeMapEnd();
      }
      oprot.writeFieldEnd();
    }
    oprot.writeFieldStop();
    oprot.writeStructEnd();
  }
  public void write(TProtocol oprot) throws TException {
    validate();

    oprot.writeStructBegin(STRUCT_DESC);
    if (this.row != null) {
      oprot.writeFieldBegin(ROW_FIELD_DESC);
      oprot.writeBinary(this.row);
      oprot.writeFieldEnd();
    }
    if (this.columns != null) {
      oprot.writeFieldBegin(COLUMNS_FIELD_DESC);
      {
        oprot.writeMapBegin(new TMap(TType.STRING, TType.STRUCT, this.columns.size()));
        for (Map.Entry<byte[], TCell> _iter8 : this.columns.entrySet()) {
          oprot.writeBinary(_iter8.getKey());
          _iter8.getValue().write(oprot);
        }
        oprot.writeMapEnd();
      }
      oprot.writeFieldEnd();
    }
    oprot.writeFieldStop();
    oprot.writeStructEnd();
  }