Package org.eclipse.emf.cdo.spi.server
Interface InternalSessionManager
- All Superinterfaces:
org.eclipse.net4j.util.container.IContainer<ISession>,org.eclipse.net4j.util.concurrent.IExecutorServiceProvider,org.eclipse.net4j.util.event.INotifier,ISessionManager
public interface InternalSessionManager
extends ISessionManager, org.eclipse.net4j.util.concurrent.IExecutorServiceProvider
Repository service that owns connected sessions and coordinates their authentication and notification flow. It opens
and closes session state, routes repository changes to relevant clients, and delegates user and permission decisions
to the configured security services.
- Since:
- 3.0
- Author:
- Eike Stepper
- No Implement
- This interface is not intended to be implemented by clients.
- No Extend
- This interface is not intended to be extended by clients.
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.eclipse.net4j.util.container.IContainer
org.eclipse.net4j.util.container.IContainer.Modifiable<E>, org.eclipse.net4j.util.container.IContainer.Persistable<E>, org.eclipse.net4j.util.container.IContainer.Persistence<E>Nested classes/interfaces inherited from interface org.eclipse.net4j.util.event.INotifier
org.eclipse.net4j.util.event.INotifier.INotifier2 -
Method Summary
Modifier and TypeMethodDescriptionauthenticateUser(IAuthenticationProtocol sessionProtocol) Challenges the connected user to authenticate the connection.voidchangeUserCredentials(IAuthenticationProtocol sessionProtocol, String userID) Initiates the change-credentials protocol with the client and processes the client response to update the user's credentials.byte[]org.eclipse.net4j.util.security.DiffieHellman.ServergetSession(int sessionID) org.eclipse.net4j.util.security.IUserManagerDeprecated.voidopenedOnClientSide(InternalSession session) openSession(ISessionProtocol sessionProtocol) openSession(ISessionProtocol protocol, int sessionID) openSession(ISessionProtocol protocol, int sessionID, Consumer<InternalSession> sessionInitializer) openSession(ISessionProtocol protocol, int sessionID, Consumer<InternalSession> sessionInitializer, byte[] oneTimeLoginToken) voidresetUserCredentials(IAuthenticationProtocol sessionProtocol, String userID) Initiates the administrative reset-credentials protocol with the client and processes the client response to reset the specifieduserID's credentials.voidsendBranchNotification(InternalSession sender, CDOBranchChangedEvent.ChangeKind changeKind, CDOBranch... branches) voidsendBranchNotification(InternalSession sender, InternalCDOBranch branch) Deprecated.voidsendBranchNotification(InternalSession sender, InternalCDOBranch branch, CDOBranchChangedEvent.ChangeKind changeKind) Deprecated.voidvoidsendCommitNotification(CDOProtocol.CommitNotificationInfo info, InternalLockManager.LockChangeReservationSet reservation) voidsendCommitNotification(InternalSession sender, CDOCommitInfo commitInfo) Deprecated.voidsendCommitNotification(InternalSession sender, CDOCommitInfo commitInfo, boolean clearResourcePathCache) Deprecated.voidsendLockNotification(InternalSession sender, CDOLockChangeInfo lockChangeInfo) voidsendLockNotification(InternalSession sender, CDOLockChangeInfo lockChangeInfo, InternalLockManager.LockChangeReservationSet reservation) voidsendLockOwnerRemappedNotification(InternalSession sender, CDOBranch branch, CDOLockOwner oldOwner, CDOLockOwner newOwner) voidsendLockOwnerRemappedNotification(InternalSession session, CDOBranch branch, CDOLockOwner oldOwner, CDOLockOwner newOwner, InternalLockManager.LockChangeReservationSet reservation) sendRemoteMessageNotification(InternalSession sender, CDORemoteSessionMessage message, int[] recipients) sendRemoteMessageNotification(InternalSession sender, CDORemoteSessionMessage message, InternalTopic topic) voidsendRemoteSessionNotification(InternalSession sender, byte opcode) voidsendRemoteSessionNotification(InternalSession sender, Collection<InternalSession> recipients, InternalTopic topic, byte opcode) voidsendRepositoryStateNotification(CDOCommonRepository.State oldState, CDOCommonRepository.State newState) voidsendRepositoryStateNotification(CDOCommonRepository.State oldState, CDOCommonRepository.State newState, CDOID rootResourceID) voidsendRepositoryTypeNotification(CDOCommonRepository.Type oldType, CDOCommonRepository.Type newType) voidsendTagNotification(InternalSession sender, int modCount, String oldName, String newName, CDOBranchPoint branchPoint) voidsessionClosed(InternalSession session) voidsetAuthenticationServer(org.eclipse.net4j.util.security.DiffieHellman.Server authenticationServer) voidsetPermissionManager(IPermissionManager permissionManager) voidsetRepository(InternalRepository repository) voidsetUserManager(org.eclipse.net4j.util.security.IUserManager userManager) Deprecated.As of 4.2 useISessionManager.setAuthenticator(IAuthenticator)Methods inherited from interface org.eclipse.net4j.util.container.IContainer
getElements, isEmptyMethods inherited from interface org.eclipse.net4j.util.concurrent.IExecutorServiceProvider
getExecutorServiceMethods inherited from interface org.eclipse.net4j.util.event.INotifier
addListener, getListeners, hasListeners, removeListenerMethods inherited from interface org.eclipse.emf.cdo.server.ISessionManager
getAuthenticator, setAuthenticator
-
Method Details
-
getRepository
InternalRepository getRepository()- Specified by:
getRepositoryin interfaceISessionManager
-
setRepository
-
getTopicManager
InternalTopicManager getTopicManager()- Specified by:
getTopicManagerin interfaceISessionManager- Since:
- 4.17
-
getAuthenticationServer
org.eclipse.net4j.util.security.DiffieHellman.Server getAuthenticationServer()- Since:
- 4.2
-
setAuthenticationServer
void setAuthenticationServer(org.eclipse.net4j.util.security.DiffieHellman.Server authenticationServer) - Since:
- 4.2
-
changeUserCredentials
Initiates the change-credentials protocol with the client and processes the client response to update the user's credentials.- Since:
- 4.3
-
resetUserCredentials
Initiates the administrative reset-credentials protocol with the client and processes the client response to reset the specifieduserID's credentials.- Since:
- 4.3
-
authenticateUser
Challenges the connected user to authenticate the connection.- Parameters:
sessionProtocol- the authenticatable session protocol- Returns:
- the user ID with which the user authenticated herself, or
nullif the server does not require authentication for this connection - Throws:
SecurityException- on failure to authenticate- Since:
- 4.3
-
getPermissionManager
IPermissionManager getPermissionManager()- Since:
- 4.1
-
setPermissionManager
- Since:
- 4.1
-
getSessions
InternalSession[] getSessions()- Specified by:
getSessionsin interfaceISessionManager
-
getSession
- Specified by:
getSessionin interfaceISessionManager
-
openSession
- Returns:
- Never
null
-
openSession
- Returns:
- Never
null - Since:
- 4.14
-
openSession
InternalSession openSession(ISessionProtocol protocol, int sessionID, Consumer<InternalSession> sessionInitializer) - Returns:
- Never
null - Since:
- 4.23
-
openSession
InternalSession openSession(ISessionProtocol protocol, int sessionID, Consumer<InternalSession> sessionInitializer, byte[] oneTimeLoginToken) - Returns:
- Never
null - Since:
- 4.23
-
generateOneTimeLoginToken
byte[] generateOneTimeLoginToken()- Since:
- 4.23
-
sessionClosed
-
openedOnClientSide
- Since:
- 4.5
-
sendRepositoryTypeNotification
void sendRepositoryTypeNotification(CDOCommonRepository.Type oldType, CDOCommonRepository.Type newType) -
sendRepositoryStateNotification
void sendRepositoryStateNotification(CDOCommonRepository.State oldState, CDOCommonRepository.State newState, CDOID rootResourceID) - Since:
- 4.1
-
sendBranchNotification
void sendBranchNotification(InternalSession sender, CDOBranchChangedEvent.ChangeKind changeKind, CDOBranch... branches) - Since:
- 4.15
-
sendTagNotification
void sendTagNotification(InternalSession sender, int modCount, String oldName, String newName, CDOBranchPoint branchPoint) - Since:
- 4.10
-
sendCommitNotification
- Since:
- 4.3
-
sendCommitNotification
void sendCommitNotification(CDOProtocol.CommitNotificationInfo info, InternalLockManager.LockChangeReservationSet reservation) - Since:
- 4.27
-
sendLockNotification
- Since:
- 4.1
-
sendLockNotification
void sendLockNotification(InternalSession sender, CDOLockChangeInfo lockChangeInfo, InternalLockManager.LockChangeReservationSet reservation) - Since:
- 4.27
-
sendLockOwnerRemappedNotification
void sendLockOwnerRemappedNotification(InternalSession sender, CDOBranch branch, CDOLockOwner oldOwner, CDOLockOwner newOwner) - Since:
- 4.19
-
sendLockOwnerRemappedNotification
void sendLockOwnerRemappedNotification(InternalSession session, CDOBranch branch, CDOLockOwner oldOwner, CDOLockOwner newOwner, InternalLockManager.LockChangeReservationSet reservation) - Since:
- 4.27
-
sendRemoteSessionNotification
-
sendRemoteSessionNotification
void sendRemoteSessionNotification(InternalSession sender, Collection<InternalSession> recipients, InternalTopic topic, byte opcode) - Since:
- 4.17
-
sendRemoteMessageNotification
List<Integer> sendRemoteMessageNotification(InternalSession sender, CDORemoteSessionMessage message, int[] recipients) -
sendRemoteMessageNotification
List<Integer> sendRemoteMessageNotification(InternalSession sender, CDORemoteSessionMessage message, InternalTopic topic) - Since:
- 4.17
-
getUserManager
Deprecated.As of 4.2 useISessionManager.getAuthenticator()- Since:
- 4.1
-
setUserManager
Deprecated.As of 4.2 useISessionManager.setAuthenticator(IAuthenticator) -
sendRepositoryStateNotification
@Deprecated void sendRepositoryStateNotification(CDOCommonRepository.State oldState, CDOCommonRepository.State newState) -
sendBranchNotification
Deprecated. -
sendBranchNotification
@Deprecated void sendBranchNotification(InternalSession sender, InternalCDOBranch branch, CDOBranchChangedEvent.ChangeKind changeKind) Deprecated.- Since:
- 4.3
-
sendCommitNotification
Deprecated. -
sendCommitNotification
@Deprecated void sendCommitNotification(InternalSession sender, CDOCommitInfo commitInfo, boolean clearResourcePathCache) Deprecated.- Since:
- 4.2
-
ISessionManager.getAuthenticator()