Los adaptadores IPSIS utilizan la interfaz de complemento para IDeleteCourseSectionHandler a fin de eliminar las secciones de curso en Brightspace.
La implementación de la interfaz es D2L.IM.IPSIS.OrgUnits.CourseSections.Handlers.IDeleteCourseSectionHandler.
La siguiente lista de configuración proporciona un punto de partida para cualquier implementación del IPSIS:
IPSIS, Plantilla: sección de curso
- DeleteCourseSectionValidateHandler (Orden de clasificación = 10)
- DeleteCourseSectionIMHandler (Orden de clasificación = 20).
DeleteCourseSectionValidateHandler
El DeleteCourseSectionValidateHandler 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.CourseSections.Handlers.DeleteCourseSectionValidateHandler
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.
- Comprueba que la sección no tenga SectionAssociation principales (estas deben eliminarse con el uso de los servicios SA de antemano).
- 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.
DeleteCourseSectionIMHandler
Con DeleteCourseSectionIMHandler se marca la sección como eliminada en las tablas de IPSIS, pero no tiene ningún efecto en Brightspace. Si las inscripciones o las unidades de organización de Brightspace se ven afectadas, se necesitan controladores adicionales.
Implementación
D2L.IM.IPSIS.Default.OrgUnits.CourseSections.Handlers.DeleteCourseSectionIMHandler
Comportamiento esperado
Si hay algo dependiente de la sección de curso (por ejemplo, no se han eliminado las inscripciones IM), esta configuración debe suspenderse. El controlador realiza las siguientes tareas:
- Completa una eliminación temporal de la sección de curso en la tabla de la unidad de organización externa de IM (pero no en las Asignaciones).
- Elimina todas las referencias a la Jerarquía IM de la sección.
- 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.
DeleteCourseSectionLEHandler
El DeleteCourseSectionLEHandler se utiliza si el comportamiento deseado es que se eliminen todas las secciones asignadas de Brightspace. A menos que todos los demás usuarios activos se eliminen o inactiven, estos permanecen inscritos en las ofertas principales. Puede utilizar el DeleteCourseSectionCascadeDeleteEnrollmentHandler para eliminar cualquier usuario restante en las secciones.
Implementación
D2L.IM.IPSIS.Default.OrgUnits.CourseSections.Handlers.DeleteCourseSectionLEHandler
Comportamiento esperado
Para cada sección de curso asignada, el controlador realiza lo siguiente:
- Elimina la sección de curso (esto genera automáticamente una entrada de auditoría).
- Marca la asignación IM como eliminada.
- Continúa el procesamiento 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
Esto debe ocurrir antes de que se elimine la tabla IM (por ejemplo: DeleteCourseSectionIMHandler).
DeleteCourseSectionCascadeDeleteEnrollmentHandler
Si existe alguna otra inscripción activa que depende de la Sección que se elimina, los controladores configurados de la plataforma IPSIS para el IDeleteEnrollmentHandler se utilizan para aplicar el comportamiento deseado a fin de eliminar las inscripciones de la organización.
Implementación
D2L.IM.IPSIS.Default.OrgUnits.CourseSections.Handlers.DeleteCourseSectionCascadeDeleteEnrollmentHandler
Comportamiento esperado
El controlador realiza las siguientes tareas:
- Obtiene la lista de las inscripciones restantes que no se han eliminado de la sección.
- Utiliza la interfaz IDeleteEnrollmentHandler para eliminarlas todas.
- 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.
- Este controlador detiene el procesamiento de la primera inscripción que falla, lo que devuelve una excepción. No continúa con las otras inscripciones (si es que existen).
Notas de configuración
- Esto debe ocurrir antes de que se elimine la tabla IM (por ejemplo: DeleteCourseSectionIMHandler).
- Esto debe ocurrir antes de que se elimine LMS si también desea eliminar las secciones de LMS (por ejemplo: DeleteCourseSectionLMSHandler).