Los adaptadores del IPSIS usan la interfaz de complemento para IDeleteCourseTemplateHandler para eliminar las plantillas de curso de Brightspace.
La implementación de la interfaz es D2L.IM.IPSIS.OrgUnits.CourseTemplates.Handlers.IDeleteCourseTemplateHandler.
Las listas de configuración IPSIS, Plantilla: plantilla del curso para la interfaz IDeleteCourseTemplateHandler se entregan con el producto. Aparecen junto con el punto de extensión al que están destinadas.
Los siguientes controladores se utilizan como un punto de partida:
- DeleteCourseTemplateValidateHandler (Orden de clasificación = 10)
- DeleteCourseTemplateIMHandler (Orden de clasificación = 20).
DeleteCourseTemplateIMHandler
Implementación
D2L.IM.IPSIS.Default.OrgUnits.CourseOfferings.Handlers.DeleteCourseTemplateIMHandler
Comportamiento esperado
El controlador realiza las siguientes tareas:
- Si hay algo que depende de la plantilla del curso (elemento secundario de la Jerarquía IM), el proceso falla.
- El controlador realiza una eliminación temporal de la plantilla de cursos en las tablas de IPSIS.
- Elimina cualquier entrada de Jerarquía IM principal a la que se haga referencia en la plantilla.
- El procesamiento continúa con el siguiente controlador configurado.
Comportamiento de error
Si existe un problema durante el procesamiento, se arroja una excepción, junto con información tan detallada como sea posible.
Nota de configuración
Por lo general, el controlador Delete IM se ejecutará en el último lugar de la lista de controladores.
DeleteCourseTemplateDeleteLEHandler
El DeleteCourseTemplateDeleteLEHandler se utiliza si el comportamiento deseado es que se eliminen todas las plantillas asignadas de Brightspace, en caso de que no se tengan elementos secundarios en Brightspace.
Comportamiento esperado
Para cada plantilla del curso asignada, el controlador realiza las siguientes tareas:
- Elimina la plantilla del curso (esto crea automáticamente una entrada de auditoría).
- Marca como eliminado las asignaciones en las tablas de IM para el elemento eliminado de Brightspace.
- El proceso continúa con el controlador siguiente (devuelve True).
Comportamiento de error
Si existe un problema durante el procesamiento, se arroja una excepción, junto con información tan detallada como sea posible.
Nota de configuración
Esto debe ocurrir antes de que se elimine la tabla IM (por ejemplo: DeleteCourseTemplateIMHandler).
DeleteCourseTemplateCascadeDeleteCourseOfferingHandler
El DeleteCourseTemplateCascadeDeleteCourseOfferingHandler se utiliza para organizar en cascada la eliminación de cualquier oferta de cursos secundaria que todavía exista.
Implementación
D2L.IM.IPSIS.Default.OrgUnits.CourseTemplates.Handlers.DeleteCourseTemplateCascadeDeleteCourseOfferingHandler
Comportamiento esperado
El controlador realiza las siguientes tareas:
- Para cada oferta de cursos restante que haga referencia a la plantilla en la tabla de jerarquías IM, los controladores configurados para IDeleteCourseOffering se utilizan para eliminar las ofertas de cursos.
- El proceso continúa con el controlador siguiente (devuelve True).
Comportamiento de error
Si existe un problema durante el procesamiento, se arroja una excepción, junto con información tan detallada como sea posible.
Nota de configuración
Esto debe ocurrir antes de que se elimine OrgUnit de las tablas de IM o de Brightspace (por ejemplo: DeleteCourseTemplateIMHandler y DeleteCourseTemplateDeleteLEHandler).
DeleteCourseTemplateValidateHandler
El DeleteCourseTemplateValidateHandler debería utilizarse siempre. Realiza la validación de entrada necesaria para asegurar que todos los demás controladores Delete funcionen correctamente.
Implementación
D2L.IM.IPSIS.Default.OrgUnits.CourseTemplates.Handlers.DeleteCourseTemplateValidateHandler
Comportamiento esperado
El controlador realiza las siguientes tareas:
- Comprueba que el Id del SIS en la solicitud corresponda a un elemento real en las tablas de IM.
- Comprueba que el tipo de unidad de organización que el servicio espera coincida con el tipo de unidad de organización en la base de datos.
- Si se superan todas las pruebas, el controlador guarda la ExternalOrgUnitInfo sobre la solicitud para que los controladores lo utilicen posteriormente.
Comportamiento de error
Si la validación falla, se genera una excepción, junto con información lo más detallada posible.
Nota de configuración
El controlador Validate normalmente debe ejecutarse en primer lugar en la lista de controladores, antes de que cualquier controlador actualice o elimine la información de la base de datos.