/** @return the raw data. */ public byte[] getRawData() { byte[] data = new byte[length()]; int cursor = 0; byte[] rawName = name.getRawData(); System.arraycopy(rawName, 0, data, 0, rawName.length); cursor += rawName.length; System.arraycopy( ByteArrays.toByteArray(dataType.value()), 0, data, cursor, SHORT_SIZE_IN_BYTES); cursor += SHORT_SIZE_IN_BYTES; System.arraycopy( ByteArrays.toByteArray(dataClass.value()), 0, data, cursor, SHORT_SIZE_IN_BYTES); cursor += SHORT_SIZE_IN_BYTES; System.arraycopy(ByteArrays.toByteArray(ttl), 0, data, cursor, INT_SIZE_IN_BYTES); cursor += INT_SIZE_IN_BYTES; System.arraycopy(ByteArrays.toByteArray(rdLength), 0, data, cursor, SHORT_SIZE_IN_BYTES); if (rData != null) { cursor += SHORT_SIZE_IN_BYTES; byte[] rawRData = rData.getRawData(); System.arraycopy(rawRData, 0, data, cursor, rawRData.length); } return data; }
/** @return the raw data. */ public byte[] getRawData() { byte[] data = new byte[length()]; int cursor = 0; byte[] rawName = name.getRawData(); System.arraycopy(rawName, 0, data, 0, rawName.length); cursor += rawName.length; System.arraycopy( ByteArrays.toByteArray(dataType.value()), 0, data, cursor, SHORT_SIZE_IN_BYTES); cursor += SHORT_SIZE_IN_BYTES; System.arraycopy( ByteArrays.toByteArray(dataClass.value()), 0, data, cursor, SHORT_SIZE_IN_BYTES); cursor += SHORT_SIZE_IN_BYTES; System.arraycopy(ByteArrays.toByteArray(ttl), 0, data, cursor, INT_SIZE_IN_BYTES); cursor += INT_SIZE_IN_BYTES; System.arraycopy(ByteArrays.toByteArray(rdLength), 0, data, cursor, SHORT_SIZE_IN_BYTES); if (rData != null) { cursor += SHORT_SIZE_IN_BYTES; byte[] rawRData = rData.getRawData(); System.arraycopy(rawRData, 0, data, cursor, rawRData.length); } return data; }