The ITranslateReadResultsRequest interface is used to translate the LIS Request object into D2L recognized values.
The interface implementation is D2L.IM.IPSIS.LIS.OMS.IReadResultsRequestTranslator
The following configuration lists for the ITranslateReadResultsRequest are shipped with the product. They are listed along with the extension point they are intended for.
IPSIS, Default
The ReadResultsRequestResultIdsRequiredTranslator is the default translator for the ITranslateReadResultsRequest interface.
ReadResultsRequestResultIdsRequiredTranslator
The ReadResultsRequestResultIdsRequiredTranslator translator requires an input list of ResultIds, and maps each one to a set of values needed to look up a grade in Brightspace.
Implementation
D2L.IM.IPSIS.LIS.RequestAdapters.OMS.Default.ReadResultsRequestResultIdsRequiredTranslator
Expected behavior
The translator performs the following tasks:
- For each ResultId on the Input method, the translator parses it as SISOrgUnitId|IMOrgUnitMappingId|GradeType|Status|SISUserId, where:
- SISOrgUnitId is the SIS Id used to refer to the OrgUnit
- IMOrgUnitMappingId is the Id for the mapping between the SISOrgUnitId and the LMS OrgUnitId
- GradeType is based on an enum that contains FinalCalculated, FinalAdjusted, etc
- Status is based on an enum that contains Released or All
- SISUserId is the SIS Id for the user receiving the Result
- The translator returns a list of objects representing the above decomposition.
- Processing continues to the next translator.
Error behavior
If the ResultIds are missing or malformed, an InvalidRequestDataException is thrown. This results in:
- The suspension of all further processing.
- A LIS response header containing:
- CodeMajor = failure.
- Severity = status.
- CodeMinor = invaliddata.