public CallbackConnection refiller(Runnable refiller) { queue.assertExecuting(); this.refiller = refiller; return this; }
public Throwable failure() { queue.assertExecuting(); return failure; }
public boolean full() { queue.assertExecuting(); return this.transport.full(); }
public long getReceiveBuffer() { getDispatchQueue().assertExecuting(); return receiveBuffer; }
public void onFailure(Throwable value) { getDispatchQueue().assertExecuting(); ArrayList<Promise<?>> tmp = new ArrayList<Promise<?>>(receiveFutures); receiveFutures.clear(); for (Promise<?> future : tmp) { future.onFailure(value); } connected = false; } });
private void drainOverflow() { queue.assertExecuting(); if( overflow.isEmpty() || transport==null ){ return;
public void setReceiveBuffer(long receiveBuffer) { getDispatchQueue().assertExecuting(); long prev = this.receiveBuffer; this.receiveBuffer = receiveBuffer; long diff = prev-receiveBuffer; receiveBufferRemaining -= diff; if( !receiveBufferFull && receiveBufferRemaining <=0 ) { receiveBufferFull = true; suspend(); } else if( receiveBufferFull && receiveBufferRemaining >0 ) { receiveBufferFull = false; resume(); } }
public void unsubscribe(final UTF8Buffer[] topics, Callback<Void> cb) { queue.assertExecuting(); if( disconnected ) { cb.onFailure(createDisconnectedError()); return; } send(new UNSUBSCRIBE().topics(topics), new ProxyCallback(cb){ @Override public void onSuccess(Object value) { for (UTF8Buffer topic : topics) { activeSubs.remove(topic); } if(next!=null) { next.onSuccess(value); } } }); }
public void subscribe(final Topic[] topics, Callback<byte[]> cb) { if(topics==null) { throw new IllegalArgumentException("topics must not be null"); } queue.assertExecuting(); if( disconnected ) { cb.onFailure(createDisconnectedError()); return; } if( listener == DEFAULT_LISTENER ) { cb.onFailure(createListenerNotSetError()); } else { send(new SUBSCRIBE().topics(topics), new ProxyCallback<byte[]>(cb){ @Override public void onSuccess(byte[] value) { for (Topic topic : topics) { activeSubs.put(topic.name(), topic.qos()); } if(next!=null) { next.onSuccess(value); } } }); } }
public void publish(UTF8Buffer topic, Buffer payload, QoS qos, boolean retain, Callback<Void> cb) { queue.assertExecuting(); if( disconnected ) { cb.onFailure(createDisconnectedError()); return; } PUBLISH command = new PUBLISH().qos(qos).retain(retain); command.topicName(topic).payload(payload); send(command, cb); }
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(); } } })); }
public CallbackConnection refiller(Runnable refiller) { queue.assertExecuting(); this.refiller = refiller; return this; }
public CallbackConnection receive(Callback<StompFrame> receiver) { getDispatchQueue().assertExecuting(); this.receiver = receiver; return this; }
public CallbackConnection refiller(Runnable refiller) { getDispatchQueue().assertExecuting(); this.refiller = refiller; return this; }
public void onFailure(Throwable value) { getDispatchQueue().assertExecuting(); ArrayList<Promise<?>> tmp = new ArrayList<Promise<?>>(receiveFutures); receiveFutures.clear(); for (Promise<?> future : tmp) { future.onFailure(value); } connected = false; } });
public void request(StompFrame frame, Callback<StompFrame> cb) { getDispatchQueue().assertExecuting(); assert cb!=null : "Callback must not be null"; if( failure !=null ) { cb.onFailure(failure); } else { AsciiBuffer id = nextId(); this.requests.put(id, cb); frame.addHeader(RECEIPT_REQUESTED, id); send(frame, null); } }
MqttConsumerSession(DeliveryProducer producer) { producer.dispatch_queue().assertExecuting(); this.producer = producer; downstream = session_manager.open(producer.dispatch_queue()); retain(); }
public void acked(Delivery delivery, DeliveryResult result) { queue.assertExecuting(); credit_window_source.merge(new IntPair(delivery.size(), 1)); if (delivery.ack() != null) { delivery.ack().apply(result, null); } }
public boolean offer(StompFrame frame, boolean addContentLength) { getDispatchQueue().assertExecuting(); if( this.transport.full() ) { return false; } else { if( addContentLength && SEND.equals(frame.action()) ) { frame.addContentLengthHeader(); } return this.transport.offer(frame); } }
public void publish(UTF8Buffer topic, Buffer payload, QoS qos, boolean retain, Callback<Void> cb) { queue.assertExecuting(); if( disconnected ) { cb.onFailure(createDisconnectedError()); return; } PUBLISH command = new PUBLISH().qos(qos).retain(retain); command.topicName(topic).payload(payload); send(command, cb); }