public interface SessionStore
| Modifier and Type | Method and Description |
|---|---|
boolean |
containsSession(SignalProtocolAddress address)
Determine whether there is a committed
SessionRecord for a recipientId + deviceId tuple. |
void |
deleteAllSessions(java.lang.String name)
Remove the
SessionRecords corresponding to all devices of a recipientId. |
void |
deleteSession(SignalProtocolAddress address)
Remove a
SessionRecord for a recipientId + deviceId tuple. |
java.util.List<java.lang.Integer> |
getSubDeviceSessions(java.lang.String name)
Returns all known devices with active sessions for a recipient
|
SessionRecord |
loadSession(SignalProtocolAddress address)
Returns a copy of the
SessionRecord corresponding to the recipientId + deviceId tuple,
or a new SessionRecord if one does not currently exist. |
void |
storeSession(SignalProtocolAddress address,
SessionRecord record)
Commit to storage the
SessionRecord for a given recipientId + deviceId tuple. |
SessionRecord loadSession(SignalProtocolAddress address)
SessionRecord corresponding to the recipientId + deviceId tuple,
or a new SessionRecord if one does not currently exist.
It is important that implementations return a copy of the current durable information. The returned SessionRecord may be modified, but those changes should not have an effect on the durable session state (what is returned by subsequent calls to this method) without the store method being called here first.
address - The name and device ID of the remote client.java.util.List<java.lang.Integer> getSubDeviceSessions(java.lang.String name)
name - the name of the client.void storeSession(SignalProtocolAddress address, SessionRecord record)
SessionRecord for a given recipientId + deviceId tuple.address - the address of the remote client.record - the current SessionRecord for the remote client.boolean containsSession(SignalProtocolAddress address)
SessionRecord for a recipientId + deviceId tuple.address - the address of the remote client.SessionRecord exists, false otherwise.void deleteSession(SignalProtocolAddress address)
SessionRecord for a recipientId + deviceId tuple.address - the address of the remote client.void deleteAllSessions(java.lang.String name)
SessionRecords corresponding to all devices of a recipientId.name - the name of the remote client.