public void onPublish(UTF8Buffer topic, final Buffer payload, final Callback<Callback<Void>> onComplete) { getDispatchQueue().assertExecuting(); receiveBufferRemaining -= payload.length(); if( !receiveBufferFull && receiveBufferRemaining <=0 ) { receiveBufferFull = true; suspend(); } deliverMessage(new Message(getDispatchQueue(), topic, payload, new Callback<Callback<Void>>() { public void onSuccess(Callback<Void> value) { processed(); onComplete.onSuccess(value); } public void onFailure(Throwable value) { processed(); onComplete.onFailure(value); } private void processed() { getDispatchQueue().assertExecuting(); receiveBufferRemaining += payload.length(); if( receiveBufferFull && receiveBufferRemaining >0 ) { receiveBufferFull = false; resume(); } } })); }
@Override public String toString() { StringBuilder builder = new StringBuilder(); for (int i = 0; i < buffer.length(); ++i) { char value = (char) buffer.get(i); if (Character.isLetter(value)) { builder.append(value); } else { builder.append(","); builder.append((int) value); } } return builder.toString(); } }
@Override public String toString() { StringBuilder builder = new StringBuilder(); for (int i = 0; i < buffer.length(); ++i) { char value = (char) buffer.get(i); if (Character.isLetter(value)) { builder.append(value); } else { builder.append(","); builder.append((int) value); } } return builder.toString(); } }
public void setBuffer(Buffer value, boolean validate) { if (validate && !value.startsWith(PREFIX) || value.length() != 8) { throw new IllegalArgumentException("Not an AMQP header buffer"); } buffer = value.buffer(); }
public void setBuffer(Buffer value, boolean validate) { if (validate && !value.startsWith(PREFIX) || value.length() != 8) { throw new IllegalArgumentException("Not an AMQP header buffer"); } buffer = value.buffer(); }
public void setBuffer(Buffer value) { if( !value.startsWith(PREFIX) || value.length()!=8 ) { throw new IllegalArgumentException("Not an AMQP header buffer"); } buffer = value.buffer(); }
public void addContentLengthHeader() { addHeader(CONTENT_LENGTH, new AsciiBuffer(Integer.toString(content.length()))); }
public void addContentLengthHeader() { addHeader(CONTENT_LENGTH, new AsciiBuffer(Integer.toString(content.length()))); }
@Override public void parse(DataByteArrayInputStream data, int readSize) throws IOException { if (currentBuffer == null) { if (contentLength < scratch.length()) { currentBuffer = scratch; currentBuffer.length = contentLength; } else { currentBuffer = new Buffer(contentLength); } } int length = Math.min(readSize, contentLength - payLoadRead); payLoadRead += data.read(currentBuffer.data, payLoadRead, length); if (payLoadRead == contentLength) { processCommand(); currentParser = initializeHeaderParser(); readSize = readSize - length; if (readSize > 0) { currentParser.parse(data, readSize); } } }
@Override public String toString() { StringBuilder builder = new StringBuilder(); for (int i = 0; i < buffer.length(); ++i) { char value = (char) buffer.get(i); if (Character.isLetter(value)) { builder.append(value); } else { builder.append(","); builder.append((int) value); } } return builder.toString(); } }
public StompFrame createCreditFrame(StompJmsMessageConsumer consumer, StompFrame messageFrame) { final Buffer content = messageFrame.content(); String credit = "1"; if( content!=null ) { credit += ","+content.length(); } StompFrame frame = new StompFrame(); frame.action(ACK); frame.headerMap().put(SUBSCRIPTION, consumer.id); frame.headerMap().put(CREDIT, AsciiBuffer.ascii(credit)); return frame; }
public int size() { int rc = action.length() + 1; if( headerList!=null ) { for (HeaderEntry entry : headerList) { rc += entry.getKey().length() + entry.getValue().length() + 2; } } else { for (Map.Entry<AsciiBuffer,AsciiBuffer> entry : headerMap.entrySet()) { rc += entry.getKey().length() + entry.getValue().length() + 2; } } rc += content.length() + 3; return rc; }
public StompFrame createCreditFrame(StompJmsMessageConsumer consumer, StompFrame messageFrame) { final Buffer content = messageFrame.content(); String credit = "1"; if( content!=null ) { credit += ","+content.length(); } StompFrame frame = new StompFrame(); frame.action(ACK); frame.headerMap().put(SUBSCRIPTION, consumer.id); frame.headerMap().put(CREDIT, AsciiBuffer.ascii(credit)); return frame; }
public int size() { int rc = action.length() + 1; if( headerList!=null ) { for (HeaderEntry entry : headerList) { rc += entry.getKey().length() + entry.getValue().length() + 2; } } else { for (Map.Entry<AsciiBuffer,AsciiBuffer> entry : headerMap.entrySet()) { rc += entry.getKey().length() + entry.getValue().length() + 2; } } rc += content.length() + 3; return rc; }
public void setBuffer(Buffer value, boolean validate) { if (validate && !value.startsWith(PREFIX) || value.length() != 8) { throw new IllegalArgumentException("Not an AMQP header buffer"); } buffer = value.buffer(); }
private void store(String ext, Buffer value) throws IOException { TarEntry entry = new TarEntry(seq + "." + ext); seq += 1; entry.setSize(value.length()); stream.putNextEntry(entry); value.writeTo(stream); stream.closeEntry(); }
private void store(String ext, Buffer value) throws IOException { TarEntry entry = new TarEntry(seq + "." + ext); seq += 1; entry.setSize(value.length()); stream.putNextEntry(entry); value.writeTo(stream); stream.closeEntry(); }
private void store(String ext, Buffer value) throws IOException { TarEntry entry = new TarEntry(seq + "." + ext); seq += 1; entry.setSize(value.length()); stream.putNextEntry(entry); value.writeTo(stream); stream.closeEntry(); }
public Object apply() throws IOException { Buffer line = readUntil((byte) '\n', max_command_length, "The maximum command length was exceeded"); if (line != null) { Buffer action = line.moveTail(-1); if (trim) { action = action.trim(); } if (action.length() > 0) { StompFrame frame = new StompFrame(action.ascii()); nextDecodeAction = read_headers(frame); return nextDecodeAction.apply(); } } return null; } };
public Object apply() throws IOException { Buffer line = readUntil((byte) '\n', max_command_length, "The maximum command length was exceeded"); if (line != null) { Buffer action = line.moveTail(-1); if (trim) { action = action.trim(); } if (action.length() > 0) { StompFrame frame = new StompFrame(action.ascii()); nextDecodeAction = read_headers(frame); return nextDecodeAction.apply(); } } return null; } };