private int getDeliveryAnnotationsForSendBufferSize() { if (deliveryAnnotationsForSendBuffer == null || deliveryAnnotationsForSendBuffer.getValue().isEmpty()) { return 0; } DroppingWritableBuffer droppingWritableBuffer = new DroppingWritableBuffer(); TLSEncode.getEncoder().setByteBuffer(droppingWritableBuffer); TLSEncode.getEncoder().writeObject(deliveryAnnotationsForSendBuffer); TLSEncode.getEncoder().setByteBuffer((WritableBuffer) null); return droppingWritableBuffer.position() + 1; }
@Override public int encode2(byte[] data, int offset, int length) { ByteBuffer buffer = ByteBuffer.wrap(data, offset, length); WritableBuffer.ByteBufferWrapper first = new WritableBuffer.ByteBufferWrapper(buffer); DroppingWritableBuffer second = new DroppingWritableBuffer(); CompositeWritableBuffer composite = new CompositeWritableBuffer(first, second); int start = composite.position(); encode(composite); return composite.position() - start; }
public int encode2(byte[] data, int offset, int length) { ByteBuffer buffer = ByteBuffer.wrap(data, offset, length); WritableBuffer.ByteBufferWrapper first = new WritableBuffer.ByteBufferWrapper(buffer); DroppingWritableBuffer second = new DroppingWritableBuffer(); CompositeWritableBuffer composite = new CompositeWritableBuffer(first, second); int start = composite.position(); encode(composite); return composite.position() - start; }
@Override public EncodedMessage transform(Message msg) throws Exception { if( msg == null ) return null; try { if( msg.getBooleanProperty(prefixVendor + "NATIVE") ) { return null; } } catch (MessageFormatException e) { return null; } ProtonJMessage amqp = convert(msg); long messageFormat; try { messageFormat = msg.getLongProperty(this.messageFormatKey); } catch (MessageFormatException e) { return null; } ByteBuffer buffer = ByteBuffer.wrap(new byte[1024 * 4]); final DroppingWritableBuffer overflow = new DroppingWritableBuffer(); int c = amqp.encode(new CompositeWritableBuffer( new WritableBuffer.ByteBufferWrapper(buffer), overflow)); if( overflow.position() > 0 ) { buffer = ByteBuffer.wrap(new byte[1024 * 4 + overflow.position()]); c = amqp.encode(new WritableBuffer.ByteBufferWrapper(buffer)); } return new EncodedMessage(messageFormat, buffer.array(), 0, c); }
@Override public int encode2(byte[] data, int offset, int length) { ByteBuffer buffer = ByteBuffer.wrap(data, offset, length); WritableBuffer.ByteBufferWrapper first = new WritableBuffer.ByteBufferWrapper(buffer); DroppingWritableBuffer second = new DroppingWritableBuffer(); CompositeWritableBuffer composite = new CompositeWritableBuffer(first, second); int start = composite.position(); encode(composite); return composite.position() - start; }
final DroppingWritableBuffer overflow = new DroppingWritableBuffer(); int c = amqp.encode(new CompositeWritableBuffer(new WritableBuffer.ByteBufferWrapper(buffer), overflow)); if( overflow.position() > 0 ) { buffer = ByteBuffer.wrap(new byte[1024*4+overflow.position()]); c = amqp.encode(new WritableBuffer.ByteBufferWrapper(buffer));
@Override public int encode2(byte[] data, int offset, int length) { ByteBuffer buffer = ByteBuffer.wrap(data, offset, length); WritableBuffer.ByteBufferWrapper first = new WritableBuffer.ByteBufferWrapper(buffer); DroppingWritableBuffer second = new DroppingWritableBuffer(); CompositeWritableBuffer composite = new CompositeWritableBuffer(first, second); int start = composite.position(); encode(composite); return composite.position() - start; }