public void scanResponseTable() { Iterator<Entry<Integer, ResponseFuture>> it = this.responseTable.entrySet().iterator(); while (it.hasNext()) { Entry<Integer, ResponseFuture> next = it.next(); ResponseFuture rep = next.getValue(); if ((rep.getBeginTimestamp() + rep.getTimeoutMillis() + 1000) <= SystemClock.now()) { it.remove(); rep.release(); try { rep.executeInvokeCallback(); } catch (Exception e) { LOGGER.error("scanResponseTable, operationComplete exception", e); } LOGGER.warn("remove timeout request, " + rep); } } }
public void scanResponseTable() { Iterator<Entry<Integer, ResponseFuture>> it = this.responseTable.entrySet().iterator(); while (it.hasNext()) { Entry<Integer, ResponseFuture> next = it.next(); ResponseFuture rep = next.getValue(); if ((rep.getBeginTimestamp() + rep.getTimeoutMillis() + 1000) <= SystemClock.now()) { it.remove(); rep.release(); try { rep.executeInvokeCallback(); } catch (Exception e) { LOGGER.error("scanResponseTable, operationComplete exception", e); } LOGGER.warn("remove timeout request, " + rep); } } }
@Override public void operationComplete(Future future) throws Exception { if (future.isSuccess()) { responseFuture.setSendRequestOK(true); return; } else { responseFuture.setSendRequestOK(false); } responseFuture.putResponse(null); try { responseFuture.executeInvokeCallback(); } finally { responseFuture.release(); } responseTable.remove(request.getOpaque()); LOGGER.warn("send a request command to channel <" + channel.remoteAddress() + "> failed."); LOGGER.warn(request.toString()); } });
@Override public void operationComplete(Future future) throws Exception { if (future.isSuccess()) { responseFuture.setSendRequestOK(true); return; } else { responseFuture.setSendRequestOK(false); } responseFuture.putResponse(null); try { responseFuture.executeInvokeCallback(); } finally { responseFuture.release(); } responseTable.remove(request.getOpaque()); LOGGER.warn("send a request command to channel <" + channel.remoteAddress() + "> failed."); LOGGER.warn(request.toString()); } });
responseFuture.setResponseCommand(cmd); responseFuture.release();
responseFuture.setResponseCommand(cmd); responseFuture.release();
public void scanResponseTable() { Iterator<Entry<Integer, ResponseFuture>> it = this.responseTable.entrySet().iterator(); while (it.hasNext()) { Entry<Integer, ResponseFuture> next = it.next(); ResponseFuture rep = next.getValue(); if ((rep.getBeginTimestamp() + rep.getTimeoutMillis() + 1000) <= SystemClock.now()) { it.remove(); rep.release(); try { rep.executeInvokeCallback(); } catch (Exception e) { LOGGER.error("scanResponseTable, operationComplete exception", e); } LOGGER.warn("remove timeout request, " + rep); } } }
responseFuture.setResponseCommand(cmd); responseFuture.release();