protected final void executeWorker(Runnable worker) { executeWorker(worker, null); }
public void serviceActivated(IoService service) { // Update lastIoTime. AbstractIoService s = (AbstractIoService) service; IoServiceStatistics _stats = s.getStatistics(); _stats.setLastReadTime(s.getActivationTime()); _stats.setLastWriteTime(s.getActivationTime()); _stats.setLastThroughputCalculationTime(s.getActivationTime()); }
/** * @return The cumulative number of sessions which were managed (or are * being managed) by this service, which means 'currently managed * session count + closed session count'. */ public final long getCumulativeManagedSessionCount() { return ((AbstractIoService)service).getListeners().getCumulativeManagedSessionCount(); }
/** * Increase the number of scheduled message to write */ public final void increaseScheduledWriteMessages() { scheduledWriteMessages.incrementAndGet(); if (getService() instanceof AbstractIoService) { ((AbstractIoService) getService()).getStatistics().increaseScheduledWriteMessages(); } }
protected final void initSession(IoSession session, IoFuture future, IoSessionInitializer sessionInitializer) { stats.setLastReadTime(getActivationTime()); stats.setLastWriteTime(getActivationTime()); finishSessionInitialization0(session, future);
/** * {@inheritDoc} */ @Override public final void setSessionDataStructureFactory(IoSessionDataStructureFactory sessionDataStructureFactory) { if (sessionDataStructureFactory == null) { throw new IllegalArgumentException("sessionDataStructureFactory"); } if (isActive()) { throw new IllegalStateException("sessionDataStructureFactory cannot be set while the service is active."); } this.sessionDataStructureFactory = sessionDataStructureFactory; }
/** * {@inheritDoc} */ public final Set<WriteFuture> broadcast(Object message) { // Convert to Set. We do not return a List here because only the // direct caller of MessageBroadcaster knows the order of write // operations. final List<WriteFuture> futures = IoUtil.broadcast(message, getManagedSessions().values()); return new AbstractSet<WriteFuture>() { @Override public Iterator<WriteFuture> iterator() { return futures.iterator(); } @Override public int size() { return futures.size(); } }; }
dispose0(); } catch (Exception e) { ExceptionMonitor.getInstance().exceptionCaught(e);
if (getTransportMetadata() == null) { throw new IllegalArgumentException("TransportMetadata"); if (!getTransportMetadata().getSessionConfigType().isAssignableFrom(sessionConfig.getClass())) { throw new IllegalArgumentException("sessionConfig type: " + sessionConfig.getClass() + " (expected: " + getTransportMetadata().getSessionConfigType() + ")");
/** * {@inheritDoc} */ @Override public final void dispose() { dispose(false); }
/** * Increase the number of scheduled write bytes for the session * * @param increment The number of newly added bytes to write */ public final void increaseScheduledWriteBytes(int increment) { scheduledWriteBytes.addAndGet(increment); if (getService() instanceof AbstractIoService) { ((AbstractIoService) getService()).getStatistics().increaseScheduledWriteBytes(increment); } }
protected final void initSession(IoSession session, IoFuture future, IoSessionInitializer sessionInitializer) { stats.setLastReadTime(getActivationTime()); stats.setLastWriteTime(getActivationTime()); finishSessionInitialization0(session, future);
/** * {@inheritDoc} */ public final void setHandler(IoHandler handler) { if (handler == null) { throw new NullPointerException("handler cannot be null"); } if (isActive()) { throw new IllegalStateException( "handler cannot be set while the service is active."); } this.handler = handler; }
/** * {@inheritDoc} */ @Override public final Set<WriteFuture> broadcast(Object message) { // Convert to Set. We do not return a List here because only the // direct caller of MessageBroadcaster knows the order of write // operations. final List<WriteFuture> futures = IoUtil.broadcast(message, getManagedSessions().values()); return new AbstractSet<WriteFuture>() { @Override public Iterator<WriteFuture> iterator() { return futures.iterator(); } @Override public int size() { return futures.size(); } }; }
dispose0(); } catch (Exception e) { ExceptionMonitor.getInstance().exceptionCaught(e);
if (getTransportMetadata() == null) { throw new NullPointerException("TransportMetadata"); if (!getTransportMetadata().getSessionConfigType().isAssignableFrom( sessionConfig.getClass())) { throw new IllegalArgumentException("sessionConfig type: " + sessionConfig.getClass() + " (expected: " + getTransportMetadata().getSessionConfigType() + ")");
/** * {@inheritDoc} */ @Override public final void dispose() { dispose(false); }
/** * Increase the number of read messages * * @param currentTime The current time */ public final void increaseReadMessages(long currentTime) { readMessages++; lastReadTime = currentTime; idleCountForBoth.set(0); idleCountForRead.set(0); if (getService() instanceof AbstractIoService) { ((AbstractIoService) getService()).getStatistics().increaseReadMessages(currentTime); } }
stats.setLastReadTime(getActivationTime()); stats.setLastWriteTime(getActivationTime()); finishSessionInitialization0(session, future);
/** * @return The cumulative number of sessions which were managed (or are * being managed) by this service, which means 'currently managed * session count + closed session count'. */ public final long getCumulativeManagedSessionCount() { return ((AbstractIoService)service).getListeners().getCumulativeManagedSessionCount(); }