Los adaptadores del IPSIS usan la interfaz de complemento para IReplaceSemesterHandler a fin de respaldar la operación de sustitución de los Semestres.
La implementación de la interfaz es D2L.IM.IPSIS.OrgUnits.Semesters.Handlers.IReplaceSemesterHandler.
La siguiente lista de configuración proporciona un punto de partida para cualquier implementación del IPSIS:
Plantilla: Semestre, IPSIS
- ReplaceSemesterReadHandler (Orden de clasificación = 10)
- ReplaceSemesterValidateHandler (Orden de clasificación = 20)
- ReplaceSemesterCreateLMSHandler (Orden de clasificación = 30)
- ReplaceSemesterCreateIMHandler (Orden de clasificación = 40)
- ReplaceSemesterSaveLMSHandler (Orden de clasificación = 50)
- ReplaceSemesterSaveIMHandler (Orden de clasificación = 60)
ReplaceSemesterReadHandler
El controlador ReplaceSemesterReadHandler lee toda la información relacionada con el Semestre que existe en el LMS o en las tablas de IM de la base de datos para utilizarlos en otros controladores.
Implementación
D2L.IM.IPSIS.Default.OrgUnits.Semesters.Handlers.ReplaceSemesterReadHandler
Comportamiento esperado
El controlador realiza las siguientes tareas:
- Intenta leer la información acerca del Semestre desde las tablas de IM. Si se encuentra la información, el controlador intenta leer las asignaciones del LMS del Semestre e intenta leer sobre el Semestre desde el LMS.
- Intenta leer la información acerca de cualquier OrgUnits principal indicada desde las tablas de IM; si no se encuentra ninguna, el controlador establece la lista principal predeterminada de la Organización como la única principal.
- 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
Un controlador Read debe tener lugar antes que los controladores Validate.
ReplaceSemesterValidateHandler
El controlador ReplaceSemesterValidateHandler garantiza que se asignen un Código válido y un Nombre al Semestre.
Implementación
D2L.IM.IPSIS.Default.OrgUnits.Semesters.Handlers.ReplaceSemesterValidateHandler
Comportamiento esperado
El controlador Validate realiza una verificación a fin de garantizar que se hayan especificado el Código y el Nombre para la solicitud. Estos valores deben ser cadenas con una longitud superior a 0. El controlador realiza las siguientes tareas:
- Si el Código o el Nombre son nulos o están vacíos, el controlador genera una ArgumentNullException y se detiene todo el procesamiento del controlador.
- El controlador validate también realiza una verificación a fin de garantizar que la solicitud no intente cambiar el tipo (por ejemplo, cambiar una Institución de educación superior a un Departamento) de una unidad de organización existente. Si la solicitud está intentando cambiar el tipo, se genera una InvalidOperationException y todos los procesos del controlador se detienen.
- Si todo es correcto, el procesamiento continúa con el siguiente controlador (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
Los controladores Validate deben configurarse antes que el controlador Crear.
ReplaceSemesterCreateLMSHandler
El controlador ReplaceSemesterCreateLMSHandler crea el Semestre en Brightspace.
Implementación
D2L.IM.IPSIS.Default.OrgUnits.Semesters.Handlers.ReplaceSemesterCreateLMSHandler
Comportamiento esperado
Este controlador solo se ejecuta si no hay Semestres de Brightspace asociados con la solicitud. El controlador realiza las siguientes tareas:
- Crea el Semestre del LMS con la información transmitida en la solicitud (activación automática del registro de auditoría "Create Semester").
- Si toda la operación es correcta, el controlador establece el estado del resultado en EntityCreated.
- Si se produce un error, el controlador establece el estado del resultado en CreateFailed.
- 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.
Notas de configuración
- Este controlador debe ejecutarse después de los controladores Validate.
- El controlador Create LMS debe ejecutarse antes del controlador Create IM.
ReplaceSemesterCreateIMHandler
El controlador ReplaceSemesterCreateIMHandler crea la Entidad en las tablas de IM, y una asignación, si se define una.
Implementación
D2L.IM.IPSIS.Default.OrgUnits.Semesters.Handlers.ReplaceSemesterCreateIMHandler
Comportamiento esperado
Este controlador solo se ejecuta si no existen Entidades coincidentes en las tablas de IM. El controlador realiza las siguientes tareas:
- Crea el Semestre en la Plataforma de IM.
- Si existe una OrgUnit del LMS asociada con la solicitud, el controlador crea la Asignación de Semestre de la plataforma de IM en el Semestre del LMS.
- Si toda la operación es correcta, el controlador establece el estado del resultado en EntityCreated.
- 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
Este controlador debe ejecutarse después de los controladores CreateLMS.
ReplaceSemesterSaveLMSHandler
El controlador Save guarda los cambios que se han realizado en el Semestre del LMS.
Implementación
D2L.IM.IPSIS.Default.OrgUnits.Semesters.Handlers.ReplaceSemesterSaveLMSHandler
Comportamiento esperado
Este controlador solo se ejecuta si hay cambios que deben guardarse para el Semestre del LMS. El controlador realiza las siguientes tareas:
- Actualiza el Semestre del LMS (activación automática del registro de auditoría).
- Si la solicitud es una actualización y se modificó un campo como mínimo, el controlador establece el estado del resultado en EntityUpdated.
- 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
Este controlador debe ejecutarse después de los controladores Create.
ReplaceSemesterSaveIMHandler
El controlador Save guarda los cambios que se han realizado en la Entidad de IM y las Asignaciones.
Implementación
D2L.IM.IPSIS.Default.OrgUnits.Semester.Handlers.ReplaceSemesterSaveIMHandler
Comportamiento esperado
Este controlador solo se ejecuta si hay cambios que deben guardarse para la Entidad o la Jerarquía de las tablas de IM. El controlador realiza las siguientes tareas:
- Actualiza la Entidad IM si hay cambios pendientes.
- Actualiza las relaciones de Jerarquía de la Entidad IM si se agregaron o eliminaron elementos principales.
- 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
Este controlador debería colocarse después de los controladores SaveLMS.
ReplaceSemesterMapByCodeHandler
El controlador ReplaceSemesterMapByCodeHandler asocia un Semestre con un Semestre del LMS existente mediante la coincidencia del OrgUnitCode.
Implementación
D2L.IM.IPSIS.Default.OrgUnits.Semesters.Handlers.ReplaceSemesterMapByCodeHandler
Comportamiento esperado
El controlador realiza las siguientes tareas:
- Si no existe una Asignación del Semestre, el controlador intenta encontrar un Semestre en el LMS que coincida con un OrgUnitCode.
- Si se encuentra una coincidencia, el controlador actualiza el objeto de solicitud para contener la orgUnit coincidente. El controlador solo debe utilizarse si se espera que el Código de la unidad de organización sea único dentro de la organización.
- Avanza al siguiente controlador.
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
Este controlador suele colocarse entre los controladores Read y Create, en cuyo caso solo se ejecuta si los controladores Read no logran encontrar un semestre asignado.
ReplaceSemesterNameNoUpdateLMSHandler
Implementación
D2L.IM.IPSIS.Default.OrgUnits.Semesters.Handlers.ReplaceSemesterNoUpdateLMSHandler
Comportamiento esperado
El controlador realiza las siguientes tareas:
- Actualiza el objeto de solicitud para indicar que el Nombre no debe actualizarse.
- 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
Este controlador debe ejecutarse antes de los controladores SaveLMS.
ReplaceSemesterValidateLMSOrgUnitExistsHandler
El controlador ReplaceSemesterValidateLMSOrgUnitExistsHandler comprueba si la unidad de organización a la que corresponde la solicitud se ha eliminado del LMS.
Implementación
D2L.IM.IPSIS.Default.OrgUnits.Semesters.Handlers.ReplaceSemesterValidateLMSOrgUnitExistsHandler
Comportamiento esperado
El controlador realiza las siguientes tareas:
- Intenta obtener la unidad de organización actual.
- Si la unidad de organización actual no existe (la solicitud es "create" o la unidad de organización se ha eliminado del LMS), el controlador intenta obtener la ExternalOrgUnitInfo para la solicitud.
- Si la ExternalOrgUnitInfo es válida, no se trata de una solicitud "create", y la unidad de organización se eliminó del LMS. El controlador genera una UpdateOrgUnitFailedException. Esta excepción provoca que el Servicio del LIS responda con invaliddata.
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
Este controlador se coloca después de los controladores Read, generalmente como uno de los primeros controladores Validar.