@Component(value="cuba_UserSessions") public class UserSessions extends java.lang.Object implements UserSessionsAPI
| Modifier and Type | Class and Description |
|---|---|
static class |
UserSessions.UserSessionInfo |
NAME| Constructor and Description |
|---|
UserSessions() |
| Modifier and Type | Method and Description |
|---|---|
void |
add(UserSession session)
INTERNAL.
|
java.util.List<java.util.UUID> |
findUserSessionsByAttribute(java.lang.String attributeName,
java.lang.Object attributeValue) |
UserSession |
get(java.util.UUID id)
Get user session from cache.
|
UserSession |
getAndRefresh(java.util.UUID id)
Get user session from cache, updating its "last used" timestamp.
|
UserSession |
getAndRefresh(java.util.UUID id,
boolean propagate)
Get user session from cache, updating its "last used" timestamp and optionally propagating the new timestamp
to the cluster.
|
UserSession |
getAndRefreshNN(java.util.UUID id)
Get user session from cache, updating its "last used" timestamp.
|
UserSession |
getAndRefreshNN(java.util.UUID id,
boolean propagate)
Get user session from cache, updating its "last used" timestamp and optionally propagating the new timestamp
to the cluster.
|
int |
getExpirationTimeoutSec()
INTERNAL.
|
UserSession |
getNN(java.util.UUID id)
Get user session from cache.
|
int |
getSendTimeoutSec()
INTERNAL.
|
java.util.stream.Stream<UserSessionEntity> |
getUserSessionEntitiesStream()
Stream of non-persistent entities representing active user sessions.
|
java.util.Collection<UserSessionEntity> |
getUserSessionInfo() |
java.util.stream.Stream<UserSession> |
getUserSessionsStream()
Stream of active user sessions.
|
void |
killSession(java.util.UUID id)
INTERNAL.
|
void |
processEviction()
INTERNAL.
|
void |
propagate(java.util.UUID id)
INTERNAL.
|
void |
remove(UserSession session)
INTERNAL.
|
void |
setClusterManager(ClusterManagerAPI clusterManager) |
void |
setConfiguration(Configuration configuration) |
void |
setExpirationTimeoutSec(int value)
INTERNAL.
|
void |
setSendTimeoutSec(int timeout)
INTERNAL.
|
@Inject public void setConfiguration(Configuration configuration)
@Inject public void setClusterManager(ClusterManagerAPI clusterManager)
public void add(UserSession session)
UserSessionsAPIadd in interface UserSessionsAPIpublic void remove(UserSession session)
UserSessionsAPIremove in interface UserSessionsAPI@Nullable public UserSession get(java.util.UUID id)
UserSessionsAPIget in interface UserSessionFinderget in interface UserSessionsAPIid - session idpublic UserSession getNN(java.util.UUID id)
UserSessionsAPIgetNN in interface UserSessionsAPIid - session id@Nullable public UserSession getAndRefresh(java.util.UUID id)
UserSessionsAPIgetAndRefresh in interface UserSessionsAPIid - session idpublic UserSession getAndRefreshNN(java.util.UUID id)
UserSessionsAPIgetAndRefreshNN in interface UserSessionsAPIid - session id@Nullable public UserSession getAndRefresh(java.util.UUID id, boolean propagate)
UserSessionsAPIgetAndRefresh in interface UserSessionsAPIid - session idpropagate - whether to propagate the new "last used" timestamp to the clusterpublic UserSession getAndRefreshNN(java.util.UUID id, boolean propagate)
UserSessionsAPIgetAndRefreshNN in interface UserSessionsAPIid - session idpropagate - whether to propagate the new "last used" timestamp to the clusterpublic void propagate(java.util.UUID id)
UserSessionsAPIpropagate in interface UserSessionsAPIid - session id. If session with this id is not found, does nothing.public int getExpirationTimeoutSec()
UserSessionsAPIgetExpirationTimeoutSec in interface UserSessionsAPIUserSessionsAPI.setExpirationTimeoutSec(int)public void setExpirationTimeoutSec(int value)
UserSessionsAPIsetExpirationTimeoutSec in interface UserSessionsAPIvalue - timeout in secondspublic int getSendTimeoutSec()
UserSessionsAPIgetSendTimeoutSec in interface UserSessionsAPIUserSessionsAPI.setSendTimeoutSec(int)public void setSendTimeoutSec(int timeout)
UserSessionsAPIUserSessionsAPI.getAndRefresh(java.util.UUID),
the user session is sent to the cluster only after the specified timeout.setSendTimeoutSec in interface UserSessionsAPItimeout - in secondspublic java.util.Collection<UserSessionEntity> getUserSessionInfo()
getUserSessionInfo in interface UserSessionsAPIpublic java.util.stream.Stream<UserSessionEntity> getUserSessionEntitiesStream()
UserSessionsAPIgetUserSessionEntitiesStream in interface UserSessionsAPIpublic java.util.stream.Stream<UserSession> getUserSessionsStream()
UserSessionsAPIgetUserSessionsStream in interface UserSessionsAPIpublic void killSession(java.util.UUID id)
UserSessionsAPIkillSession in interface UserSessionsAPIid - session idpublic java.util.List<java.util.UUID> findUserSessionsByAttribute(java.lang.String attributeName,
java.lang.Object attributeValue)
findUserSessionsByAttribute in interface UserSessionsAPIpublic void processEviction()
UserSessionsAPIprocessEviction in interface UserSessionsAPI