@Override public void onTimeoutExpired() { Request request = this.request.getAndSet(null); if (LOG.isDebugEnabled()) LOG.debug("Total timeout {} ms elapsed for {}", request.getTimeout(), request); if (request != null) request.abort(new TimeoutException("Total timeout " + request.getTimeout() + " ms elapsed")); }
public boolean schedule(Scheduler scheduler) { long timeout = request.getTimeout(); Scheduler.Task task = scheduler.schedule(this, timeout, TimeUnit.MILLISECONDS); if (this.task.getAndSet(task) != null) throw new IllegalStateException(); LOG.debug("Scheduled timeout task {} in {} ms", task, timeout); return true; }
public boolean schedule(Scheduler scheduler) { long timeout = request.getTimeout(); Scheduler.Task task = scheduler.schedule(this, timeout, TimeUnit.MILLISECONDS); if (this.task.getAndSet(task) != null) throw new IllegalStateException(); LOG.debug("Scheduled timeout task {} in {} ms", task, timeout); return true; }
clientSocket.setSoTimeout(request.getTimeout()); outToServer = new ObjectOutputStream(clientSocket.getOutputStream()); inFromServer = new ObjectInputStream(clientSocket.getInputStream());
protected void doTaskCompleted(Throwable ex) { if (ex instanceof TimeoutException) { exchange.setException(new ExchangeTimedOutException(exchange, request.getTimeout())); } else { exchange.setException(new CamelExchangeException("JettyClient failed cause by: " + ex.getMessage(), exchange, ex)); } done.countDown(); if (callback != null) { // now invoke callback to indicate we are done async callback.done(false); } }
@Override public void send(Request request, Response.CompleteListener listener) { ArrayList<Response.ResponseListener> listeners = new ArrayList<>(2); if (request.getTimeout() > 0) { TimeoutCompleteListener timeoutListener = new TimeoutCompleteListener(request); timeoutListener.schedule(client.getScheduler()); listeners.add(timeoutListener); } if (listener != null) listeners.add(listener); HttpConversation conversation = client.getConversation(request.getConversationID(), true); HttpExchange exchange = new HttpExchange(conversation, getDestination(), request, listeners); send(exchange); }
@Override public void send(Request request, Response.CompleteListener listener) { ArrayList<Response.ResponseListener> listeners = new ArrayList<>(2); if (request.getTimeout() > 0) { TimeoutCompleteListener timeoutListener = new TimeoutCompleteListener(request); timeoutListener.schedule(client.getScheduler()); listeners.add(timeoutListener); } if (listener != null) listeners.add(listener); HttpConversation conversation = client.getConversation(request.getConversationID(), true); HttpExchange exchange = new HttpExchange(conversation, getDestination(), request, listeners); send(exchange); }