private void expireSelectable(Selectable selectable) { ReactorImpl reactor = (ReactorImpl) selectable.getReactor(); reactor.timer.tick(reactor.now); selectable.setDeadline(reactor.timer.deadline()); reactor.update(selectable); }
private void expireSelectable(Selectable selectable) { ReactorImpl reactor = (ReactorImpl) selectable.getReactor(); reactor.timer.tick(reactor.now); selectable.setDeadline(reactor.timer.deadline()); reactor.update(selectable); }
private static void update(Selectable selectable) { SelectableImpl selectableImpl = (SelectableImpl)selectable; int c = capacity(selectableImpl); int p = pending(selectableImpl); selectable.setReading(c > 0); selectable.setWriting(p > 0); selectable.setDeadline(deadline(selectableImpl)); }
private static void update(Selectable selectable) { SelectableImpl selectableImpl = (SelectableImpl)selectable; int c = capacity(selectableImpl); int p = pending(selectableImpl); selectable.setReading(c > 0); selectable.setWriting(p > 0); selectable.setDeadline(deadline(selectableImpl)); }
@Override public Task schedule(int delay, Handler handler) { Task task = timer.schedule(now + delay); ((TaskImpl)task).setReactor(this); BaseHandler.setHandler(task, handler); if (selectable != null) { selectable.setDeadline(timer.deadline()); update(selectable); } return task; }
@Override public Task schedule(int delay, Handler handler) { Task task = timer.schedule(now + delay); ((TaskImpl)task).setReactor(this); BaseHandler.setHandler(task, handler); if (selectable != null) { selectable.setDeadline(timer.deadline()); update(selectable); } return task; }
@Override public void run(Selectable selectable) { Reactor reactor = selectable.getReactor(); Transport transport = ((SelectableImpl)selectable).getTransport(); long deadline = transport.tick(reactor.now()); selectable.setDeadline(deadline); int c = capacity(selectable); int p = pending(selectable); selectable.setReading(c > 0); selectable.setWriting(p > 0); reactor.update(selectable); } };
@Override public void run(Selectable selectable) { Reactor reactor = selectable.getReactor(); Transport transport = ((SelectableImpl)selectable).getTransport(); long deadline = transport.tick(reactor.now()); selectable.setDeadline(deadline); int c = capacity(selectable); int p = pending(selectable); selectable.setReading(c > 0); selectable.setWriting(p > 0); reactor.update(selectable); } };
private Selectable timerSelectable() { Selectable sel = selectable(); sel.setChannel(wakeup.source()); sel.onReadable(new TimerReadable()); sel.onExpired(new TimerExpired()); sel.onFree(new TimerFree()); sel.setReading(true); sel.setDeadline(timer.deadline()); update(sel); return sel; }
private Selectable timerSelectable() { Selectable sel = selectable(); sel.setChannel(wakeup.source()); sel.onReadable(new TimerReadable()); sel.onExpired(new TimerExpired()); sel.onFree(new TimerFree()); sel.setReading(true); sel.setDeadline(timer.deadline()); update(sel); return sel; }