K
- type of the record keysAGG
- type of the aggregated valuesReadOnlySessionStore<K,AGG>
, StateStore
public interface SessionStore<K,AGG> extends StateStore, ReadOnlySessionStore<K,AGG>
Modifier and Type | Method | Description |
---|---|---|
KeyValueIterator<Windowed<K>,AGG> |
findSessions(K key,
long earliestSessionEndTime,
long latestSessionStartTime) |
Fetch any sessions with the matching key and the sessions end is ≥ earliestSessionEndTime and the sessions
start is ≤ latestSessionStartTime
This iterator must be closed after use.
|
KeyValueIterator<Windowed<K>,AGG> |
findSessions(K keyFrom,
K keyTo,
long earliestSessionEndTime,
long latestSessionStartTime) |
Fetch any sessions in the given range of keys and the sessions end is ≥ earliestSessionEndTime and the sessions
start is ≤ latestSessionStartTime
This iterator must be closed after use.
|
void |
put(Windowed<K> sessionKey,
AGG aggregate) |
Write the aggregated value for the provided key to the store
|
void |
remove(Windowed<K> sessionKey) |
Remove the session aggregated with provided
Windowed key from the store |
fetch, fetch
close, flush, init, isOpen, name, persistent
KeyValueIterator<Windowed<K>,AGG> findSessions(K key, long earliestSessionEndTime, long latestSessionStartTime)
key
- the key to return sessions forearliestSessionEndTime
- the end timestamp of the earliest session to search forlatestSessionStartTime
- the end timestamp of the latest session to search forjava.lang.NullPointerException
- If null is used for key.KeyValueIterator<Windowed<K>,AGG> findSessions(K keyFrom, K keyTo, long earliestSessionEndTime, long latestSessionStartTime)
keyFrom
- The first key that could be in the rangekeyTo
- The last key that could be in the rangeearliestSessionEndTime
- the end timestamp of the earliest session to search forlatestSessionStartTime
- the end timestamp of the latest session to search forjava.lang.NullPointerException
- If null is used for any key.void remove(Windowed<K> sessionKey)
Windowed
key from the storesessionKey
- key of the session to removejava.lang.NullPointerException
- If null is used for sessionKey.void put(Windowed<K> sessionKey, AGG aggregate)
sessionKey
- key of the session to writeaggregate
- the aggregated value for the session, it can be null;
if the serialized bytes are also null it is interpreted as deletesjava.lang.NullPointerException
- If null is used for sessionKey.