The plug-in interface for IDeleteDepartmentHandler is used by IPSIS Adapters to support the delete operation for Departments.
The interface implementation is D2L.IM.IPSIS.OrgUnits.Departments.Handlers.IDeleteDepartmentHandler.
The IPSIS, Template - Department configuration list provides a starting point for any IPSIS implementation.
The DeleteDepartmentIMHandler (Sort Order = 10) handler is used as a starting point.
DeleteDepartmentIMHandler
Implementation
D2L.IM.IPSIS.Default.OrgUnits.Departments.Handlers.DeleteDepartmentIMHandler
Expected behavior
The handler performs the following tasks:
- If there is anything dependent on the department (IM Hierarchy children) the process fails.
- The handler completes a soft-delete of the department from the IPSIS tables.
- Deletes any IM Hierarchy parent entries that reference the department.
- Processing continues to the next configured handler.
Error behavior
If there is a problem during processing, an exception is thrown, along with as much detailed information as possible.
Configuration note
This handler should be configured as the last Delete handler.
DeleteDepartmentLMSHandler
Implementation
D2L.IM.IPSIS.Default.OrgUnits.Departments.Handlers.DeleteDepartmentLMSHandler
Expected behavior
This handler deletes the department from Brightspace if the department has no children in the org structure. If the department has children, the process fails with an exception.
The handler performs the following tasks:
- Deletes the department (automatically creating an audit entry). The department is available in the recycle bin in Brightspace.
- The IM Mapping entry for the OrgUnit is marked as deleted.
- Processing continues to the next available handler.
Error behavior
If there is a problem during processing, an exception is thrown, along with as much detailed information as possible.
Configuration note
This handler should be configured before the IM Delete handler.
DeleteDepartmentCascadeDeleteCourseTemplateHandler
The DeleteDepartmentCascadeDeleteCourseTemplateHandler is used to cascade the delete to any course template children that still exist.
Implementation
D2L.IM.IPSIS.Default.OrgUnits.Departments.Handlers.DeleteDepartmentCascadeDeleteCourseTemplateHandler
Expected behavior
The handler performs the following tasks:
- For each remaining course template referencing the department in the IM Hierarchies tables, the handlers configured for IDeleteCourseTemplate are used to delete the course templates.
- Processing continues to the next handler (Return True).
Configuration note
This must occur before either the LMS or IM Table deletes (example: DeleteDepartmentLMSHandler or DeleteDepartmentIMHandler).