@Override public boolean removeMessageListener(String registrationId) { checkNotNull(registrationId, "registrationId can't be null"); MessageRunner runner = runnersMap.get(registrationId); if (runner == null) { return false; } runner.cancel(); return true; }
@Override public boolean removeMessageListener(String registrationId) { checkNotNull(registrationId, "registrationId can't be null"); MessageRunner runner = runnersMap.get(registrationId); if (runner == null) { return false; } runner.cancel(); return true; }
@Override public boolean removeMessageListener(String registrationId) { checkNotNull(registrationId, "registrationId can't be null"); MessageRunner runner = runnersMap.get(registrationId); if (runner == null) { return false; } runner.cancel(); return true; }
@Override public boolean removeMessageListener(String registrationId) { checkNotNull(registrationId, "registrationId can't be null"); MessageRunner runner = runnersMap.get(registrationId); if (runner == null) { return false; } runner.cancel(); return true; }
@Override public void onFailure(Throwable t) { if (cancelled) { return; } t = adjustThrowable(t); if (handleInternalException(t)) { next(); } else { cancel(); } }
@Override public void onFailure(Throwable t) { if (cancelled) { return; } t = adjustThrowable(t); if (handleInternalException(t)) { next(); } else { cancel(); } }
@Override public void onResponse(ReadResultSet<ReliableTopicMessage> result) { // we process all messages in batch. So we don't release the thread and reschedule ourselves; // but we'll process whatever was received in 1 go. for (Object item : result) { ReliableTopicMessage message = (ReliableTopicMessage) item; if (cancelled) { return; } try { listener.storeSequence(sequence); process(message); } catch (Throwable t) { if (terminate(t)) { cancel(); return; } } sequence++; } next(); }
@Override public void onResponse(ReadResultSet<ReliableTopicMessage> result) { // we process all messages in batch. So we don't release the thread and reschedule ourselves; // but we'll process whatever was received in 1 go. for (Object item : result) { ReliableTopicMessage message = (ReliableTopicMessage) item; if (cancelled) { return; } try { listener.storeSequence(sequence); process(message); } catch (Throwable t) { if (terminate(t)) { cancel(); return; } } sequence++; } next(); }