protected void write()

in modules/network/src/main/java/org/apache/ignite/internal/network/direct/stream/DirectByteBufferStreamImplV1.java [1941:2066]


    protected void write(MessageCollectionItemType type, Object val, MessageWriter writer) {
        switch (type) {
            case BYTE:
                writeByte((Byte) val);

                break;

            case SHORT:
                writeShort((Short) val);

                break;

            case INT:
                writeInt((Integer) val);

                break;

            case LONG:
                writeLong((Long) val);

                break;

            case FLOAT:
                writeFloat((Float) val);

                break;

            case DOUBLE:
                writeDouble((Double) val);

                break;

            case CHAR:
                writeChar((Character) val);

                break;

            case BOOLEAN:
                writeBoolean((Boolean) val);

                break;

            case BYTE_ARR:
                writeByteArray((byte[]) val);

                break;

            case SHORT_ARR:
                writeShortArray((short[]) val);

                break;

            case INT_ARR:
                writeIntArray((int[]) val);

                break;

            case LONG_ARR:
                writeLongArray((long[]) val);

                break;

            case FLOAT_ARR:
                writeFloatArray((float[]) val);

                break;

            case DOUBLE_ARR:
                writeDoubleArray((double[]) val);

                break;

            case CHAR_ARR:
                writeCharArray((char[]) val);

                break;

            case BOOLEAN_ARR:
                writeBooleanArray((boolean[]) val);

                break;

            case STRING:
                writeString((String) val);

                break;

            case BIT_SET:
                writeBitSet((BitSet) val);

                break;

            case BYTE_BUFFER:
                writeByteBuffer((ByteBuffer) val);

                break;

            case UUID:
                writeUuid((UUID) val);

                break;

            case IGNITE_UUID:
                writeIgniteUuid((IgniteUuid) val);

                break;

            case MSG:
                try {
                    if (val != null) {
                        writer.beforeInnerMessageWrite();
                    }

                    writeMessage((NetworkMessage) val, writer);
                } finally {
                    if (val != null) {
                        writer.afterInnerMessageWrite(lastFinished);
                    }
                }

                break;

            default:
                throw new IllegalArgumentException("Unknown type: " + type);
        }
    }