Package com.emc.documentum.rest.dfc

# Interface RepositorySessionManager

public interface RepositorySessionManager
An interface to provide the functions to create, get and remove DFC session managers. Implementation beans for this interface could be autowired in callers.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `clearAll()`
  Clear all session managers.
  `com.documentum.fc.client.IDfSessionManager`
  `get(String repositoryName, String user, Object credential, AuthType authType)`
  Get the DFC session manager.
  `InternalAppAuthNamesRegistry`
  `getInternalAppNamesRegistry()`
  Get the registry of internal application authentication names.
  `List<com.documentum.fc.client.IDfSessionManager>`
  `list()`
  List current working session managers.
  `void`
  `remove(String repositoryName, String user, Object password, AuthType authType)`
  Remove the session manager by the user identity.
  `void`
  `setSkipWebSessionTrackingUserList(Set<String> users)`
  Skip web session tracking for the specified system users.

- ## Method Details

  - ### get

    com.documentum.fc.client.IDfSessionManager get(String repositoryName, String user, Object credential, AuthType authType) throws com.documentum.fc.common.DfException
    Get the DFC session manager. An identity will be setup into the session manager. An implementation should create a new session manager if it does not exist for the corresponding user identity.
    Parameters:
      `repositoryName` - the repository name
      `user` - the user login name
      `credential` - the user credential
      `authType` - the authentication type
    Returns:
      the session manager corresponding to the user identity
    Throws:
      `com.documentum.fc.common.DfException` - the exception during the operation

  - ### clearAll

    void clearAll()
    Clear all session managers.

  - ### list

    List<com.documentum.fc.client.IDfSessionManager> list()
    List current working session managers.
    Returns:
      a list of session managers

  - ### remove

    void remove(String repositoryName, String user, Object password, AuthType authType)
    Remove the session manager by the user identity.
    Parameters:
      `repositoryName` - the repository name
      `user` - the user login name
      `password` - the user password
      `authType` - the authentication type

  - ### getInternalAppNamesRegistry

    InternalAppAuthNamesRegistry getInternalAppNamesRegistry()
    Get the registry of internal application authentication names.

  - ### setSkipWebSessionTrackingUserList

    void setSkipWebSessionTrackingUserList(Set<String> users)
    Skip web session tracking for the specified system users. This is used for internal applications which do not want to have web session tracking for the system users.
    Parameters:
      `users` - the list of user login names to skip web session tracking.