/** Serializes this request for HBase 0.94 and before. */ private ChannelBuffer serializeOld(final byte server_version) { final ChannelBuffer buf = newBuffer(server_version, predictSerializedSize()); buf.writeInt(2); // Number of parameters. // 1st param: byte array containing region name writeHBaseByteArray(buf, region.name()); // 2nd param: Delete object. buf.writeByte(CODE); // Code for a `Delete' parameter. buf.writeByte(CODE); // Code again (see HBASE-2877). buf.writeByte(1); // Delete#DELETE_VERSION. Stick to v1 here for now. writeByteArray(buf, key); buf.writeLong(timestamp); // Maximum timestamp. buf.writeLong(lockid); // Lock ID. // Families. if (family == WHOLE_ROW) { buf.writeInt(0); // Number of families that follow. return buf; } buf.writeInt(1); // Number of families that follow. // Each family is then written like so: writeByteArray(buf, family); // Column family name. buf.writeInt(qualifiers.length); // How many KeyValues for this family? serializePayload(buf); return buf; }