The plug-in interface for IReadUserHandler is used by IPSIS adapters to support the read operation for users.
The interface implementation is D2L.IM.IPSIS.Users.Handlers.IReadUserHandler.
The following configuration list for the ReadUserHandler interface is shipped with the product.
IPSIS, Template
- ReadUserIMHandler (Sort Order = 10)
- ReadUserLMSHandler (Sort Order = 20)
ReadUserIMHandler
The ReadUserIMHandler obtains the mapping for the requested user.
Implementation
D2L.IM.IPSIS.Default.Users.Handlers.ReadUserIMHandler
Expected behavior
The handler performs the following tasks:
- The handler attempts to get the user mapping from the sourcedId in the SOAP request.
- This mapping is stored in the request object to be used by later handlers.
Error behavior
If no mapping is found, a UserMappingNotFoundException is thrown.
Configuration note
This handler should always be placed before the LMS read handler.
ReadUserLMSHandler
The ReadUserLMSHandler obtains the org user for the requested user.
Implementation
D2L.IM.IPSIS.Default.Users.Handlers.ReadUserLMSHandler
Expected behavior
The handler performs the following tasks:
- The handler tries to get the user mapping from the request. If it is null, an error is returned.
- Using this mapping, the handler tries to get the corresponding OrgUser. This OrgUser is returned in the result object along with the mapping.
Error behavior
- If the mapping on the request is null, the handler throws an ArgumentNullException.
- If no user was found (i.e. they were deleted from the LMS but the mapping still exists) the handler throws a UserMappingNotFoundException.
Configuration note
This handler should always be placed after the IM read handler.