public void writeElement()

in protonj2/src/main/java/org/apache/qpid/protonj2/codec/encoders/transport/TransferTypeEncoder.java [64:107]


    public void writeElement(Transfer transfer, int index, ProtonBuffer buffer, Encoder encoder, EncoderState state) {
        if (transfer.hasElement(index)) {
            switch (index) {
                case 0:
                    writeCheckedUnsignedInteger(transfer.getHandle(), buffer);
                    break;
                case 1:
                    writeCheckedUnsignedInteger(transfer.getDeliveryId(), buffer);
                    break;
                case 2:
                    encoder.writeDeliveryTag(buffer, state, transfer.getDeliveryTag());
                    break;
                case 3:
                    writeCheckedUnsignedInteger(transfer.getMessageFormat(), buffer);
                    break;
                case 4:
                    buffer.writeByte(transfer.getSettled() ? EncodingCodes.BOOLEAN_TRUE : EncodingCodes.BOOLEAN_FALSE);
                    break;
                case 5:
                    buffer.writeByte(transfer.getMore() ? EncodingCodes.BOOLEAN_TRUE : EncodingCodes.BOOLEAN_FALSE);
                    break;
                case 6:
                    buffer.writeByte(EncodingCodes.UBYTE);
                    buffer.writeByte(transfer.getRcvSettleMode().byteValue());
                    break;
                case 7:
                    encoder.writeObject(buffer, state, transfer.getState());
                    break;
                case 8:
                    buffer.writeByte(transfer.getResume() ? EncodingCodes.BOOLEAN_TRUE : EncodingCodes.BOOLEAN_FALSE);
                    break;
                case 9:
                    buffer.writeByte(transfer.getAborted() ? EncodingCodes.BOOLEAN_TRUE : EncodingCodes.BOOLEAN_FALSE);
                    break;
                case 10:
                    buffer.writeByte(transfer.getBatchable() ? EncodingCodes.BOOLEAN_TRUE : EncodingCodes.BOOLEAN_FALSE);
                    break;
                default:
                    throw new IllegalArgumentException("Unknown Transfer value index: " + index);
            }
        } else {
            buffer.writeByte(EncodingCodes.NULL);
        }
    }