Interface SessionStore<K,​AGG>

  • Type Parameters:
    K - type of the record keys
    AGG - type of the aggregated values
    All Superinterfaces:
    ReadOnlySessionStore<K,​AGG>, StateStore

    public interface SessionStore<K,​AGG>
    extends StateStore, ReadOnlySessionStore<K,​AGG>
    Interface for storing the aggregated values of sessions.

    The key is internally represented as Windowed<K> that comprises the plain key and the Window that represents window start- and end-timestamp.

    If two sessions are merged, a new session with new start- and end-timestamp must be inserted into the store while the two old sessions must be deleted.

    • Method Detail

      • remove

        void remove​(Windowed<K> sessionKey)
        Remove the session aggregated with provided Windowed key from the store
        Parameters:
        sessionKey - key of the session to remove
        Throws:
        NullPointerException - If null is used for sessionKey.
      • put

        void put​(Windowed<K> sessionKey,
                 AGG aggregate)
        Write the aggregated value for the provided key to the store
        Parameters:
        sessionKey - key of the session to write
        aggregate - the aggregated value for the session, it can be null; if the serialized bytes are also null it is interpreted as deletes
        Throws:
        NullPointerException - If null is used for sessionKey.