public class LeaderSessionTracker extends UpgradeableSessionTracker
SessionTracker.Session, SessionTracker.SessionExpirer
localSessionTracker
Constructor and Description |
---|
LeaderSessionTracker(SessionTracker.SessionExpirer expirer,
ConcurrentMap<Long,Integer> sessionsWithTimeouts,
int tickTime,
long id,
boolean localSessionsEnabled,
ZooKeeperServerListener listener) |
Modifier and Type | Method and Description |
---|---|
boolean |
addGlobalSession(long sessionId,
int sessionTimeout)
Add a global session to those being tracked.
|
boolean |
addSession(long sessionId,
int sessionTimeout)
Add a session to those being tracked.
|
void |
checkGlobalSession(long sessionId,
Object owner)
Strictly check that a given session is a global session or not
|
void |
checkSession(long sessionId,
Object owner)
Checks whether the SessionTracker is aware of this session, the session
is still active, and the owner matches.
|
long |
createSession(int sessionTimeout) |
void |
dumpSessions(PrintWriter pwriter)
Text dump of session information, suitable for debugging.
|
static long |
getServerIdFromSessionId(long sessionId) |
Map<Long,Set<Long>> |
getSessionExpiryMap()
Returns a mapping of time to session IDs that expire at that time.
|
boolean |
isGlobalSession(long sessionId) |
void |
removeSession(long sessionId) |
void |
setOwner(long sessionId,
Object owner) |
void |
setSessionClosing(long sessionId)
Mark that the session is in the process of closing.
|
void |
shutdown() |
void |
start() |
boolean |
touchSession(long sessionId,
int sessionTimeout) |
createLocalSessionTracker, isLocalSession, isTrackingSession, upgradeSession
public LeaderSessionTracker(SessionTracker.SessionExpirer expirer, ConcurrentMap<Long,Integer> sessionsWithTimeouts, int tickTime, long id, boolean localSessionsEnabled, ZooKeeperServerListener listener)
public void removeSession(long sessionId)
public void start()
start
in class UpgradeableSessionTracker
public void shutdown()
public boolean isGlobalSession(long sessionId)
isGlobalSession
in class UpgradeableSessionTracker
public boolean addGlobalSession(long sessionId, int sessionTimeout)
SessionTracker
sessionId
- sessionIdsessionTimeout
- sessionTimeoutpublic boolean addSession(long sessionId, int sessionTimeout)
SessionTracker
sessionId
- sessionIdsessionTimeout
- sessionTimeoutpublic boolean touchSession(long sessionId, int sessionTimeout)
public long createSession(int sessionTimeout)
public static long getServerIdFromSessionId(long sessionId)
public void checkSession(long sessionId, Object owner) throws KeeperException.SessionExpiredException, KeeperException.SessionMovedException, KeeperException.UnknownSessionException
SessionTracker
public void checkGlobalSession(long sessionId, Object owner) throws KeeperException.SessionExpiredException, KeeperException.SessionMovedException
SessionTracker
checkGlobalSession
in interface SessionTracker
checkGlobalSession
in class UpgradeableSessionTracker
KeeperException.SessionExpiredException
KeeperException.SessionMovedException
public void setOwner(long sessionId, Object owner) throws KeeperException.SessionExpiredException
public void dumpSessions(PrintWriter pwriter)
SessionTracker
pwriter
- the output writerpublic void setSessionClosing(long sessionId)
SessionTracker
public Map<Long,Set<Long>> getSessionExpiryMap()
SessionTracker
Copyright © 2008–2020 The Apache Software Foundation. All rights reserved.