Interface AbstractServerTransport.Scheduler

All Known Subinterfaces:
AbstractHttpTransport.HttpScheduler
All Known Implementing Classes:
AbstractHttpTransport.LongPollScheduler, AbstractServerTransport.Scheduler.None, AbstractStreamHttpTransport.DispatchingLongPollScheduler
Enclosing class:
AbstractServerTransport

public static interface AbstractServerTransport.Scheduler

Performs server-to-client transport operations when a /meta/connect message is held and a server-side message is published.

HTTP transports can only perform server-to-client sends if there is an outstanding /meta/connect, or if they are processing incoming messages.

WebSocket transports, on the other hand, can perform server-to-client sends even if there is no outstanding /meta/connect.

  • Nested Class Summary

    Nested Classes
    Modifier and Type Interface Description
    static class  AbstractServerTransport.Scheduler.None
    A scheduler that does not perform any operation but remembers the /meta/connect cycle.
  • Method Summary

    Modifier and Type Method Description
    default void cancel()
    Invoked when the transport wants to cancel scheduled operations that will trigger when the /meta/connect timeout fires.
    default void destroy()
    Invoked when the transport wants to abort communication.
    default long getMetaConnectCycle()  
    default void schedule()
    Invoked when the transport wants to send queued messages, and possibly a /meta/connect reply.
  • Method Details

    • getMetaConnectCycle

      default long getMetaConnectCycle()
      Returns:
      the cycle number for suspended /meta/connects.
    • schedule

      default void schedule()
      Invoked when the transport wants to send queued messages, and possibly a /meta/connect reply.
    • cancel

      default void cancel()
      Invoked when the transport wants to cancel scheduled operations that will trigger when the /meta/connect timeout fires.
    • destroy

      default void destroy()
      Invoked when the transport wants to abort communication.