Class LongPollingCacheFilter

  • All Implemented Interfaces:
    Serializable, org.atmosphere.cpr.BroadcastFilter, org.atmosphere.cpr.PerRequestBroadcastFilter

    public class LongPollingCacheFilter
    extends Object
    implements org.atmosphere.cpr.PerRequestBroadcastFilter, Serializable
    A PerRequestBroadcastFilter implementation that handles AtmospherePushConnection.PushMessages to ensure that a message is preserved in the BroadcasterCache until the client has received it. The filter acts only on LONG POLLING transport and expects that the client sends the X-Vaadin-LastSeenServerSyncId header with the identifier of the last message seen, every time the connection is established. Messages already seen are discarded, whereas messages not yet sent to the client are added again to the cache to preserve them until client confirms reception by sending the last seen message identifier.
    See Also:
    Serialized Form
    • Constructor Detail

      • LongPollingCacheFilter

        public LongPollingCacheFilter()
    • Method Detail

      • filter

        public org.atmosphere.cpr.BroadcastFilter.BroadcastAction filter​(String broadcasterId,
                                                                         org.atmosphere.cpr.AtmosphereResource r,
                                                                         Object originalMessage,
                                                                         Object message)
        Specified by:
        filter in interface org.atmosphere.cpr.PerRequestBroadcastFilter
      • filter

        public org.atmosphere.cpr.BroadcastFilter.BroadcastAction filter​(String broadcasterId,
                                                                         Object originalMessage,
                                                                         Object message)
        Specified by:
        filter in interface org.atmosphere.cpr.BroadcastFilter