Los adaptadores del IPSIS usan la interfaz de complemento para IReplaceDepartmentHandler a fin de respaldar la operación de reemplazo de los departamentos.
La implementación de la interfaz es D2L.IM.IPSIS.OrgUnits.Departments.Handlers.IReplaceDepartmentHandler.
Las listas de configuración de IPSIS Plantilla: departamento ofrecen un punto de partida para la implementación del IPSIS.
La siguiente lista de controladores se utiliza como un punto de partida:
- ReplaceDepartmentReadHandler (Orden de clasificación = 10)
- ReplaceDepartmentValidateHandler (Orden de clasificación = 20).
- ReplaceDepartmentCreateLMSHandler (Orden de clasificación = 30)
- ReplaceDepartmentCreateIMHandler (Orden de clasificación = 40)
- ReplaceDepartmentSaveLMSHandler (Orden de clasificación = 50)
- ReplaceDepartmentSaveIMHandler (Orden de clasificación = 60)
ReplaceDepartmentReadHandler
El ReplaceDepartmentReadHandler lee toda la información relacionada con el Departamento que existe en las tablas LMS o IM de la base de datos que se va a utilizar en otros controladores.
Implementación
D2L.IM.IPSIS.Default.OrgUnits.Departmentss.Handlers.ReplaceDepartmentReadHandler
Comportamiento esperado
El controlador realiza las siguientes tareas:
- Intenta leer la información acerca del Departamento en las tablas de IM:
- Si la encuentra, el controlador intenta leer las asignaciones en LMS para el Departamento.
- Si la encuentra, el controlador intenta leer sobre el Departamento en LMS.
- Intenta leer la información acerca de las unidades de organización principales indicadas en las tablas de IM.
- Si no encuentra ninguna, el controlador establece la lista principal predeterminada de la Organización en el único elemento 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.
ReplaceDepartmentValidateHandler
El ReplaceDepartmentValidateHandler garantiza que un Código y un Nombre válidos se asignen al Departamento.
Implementación
D2L.IM.IPSIS.Default.OrgUnits.Departments.Handlers.ReplaceDepartmentValidateHandler
Comportamiento esperado
El controlador realiza las siguientes tareas:
- El controlador Validate realiza una verificación a fin de garantizar que se hayan especificado el Código y el Nombre para la solicitud. Los valores de Código y Nombre deben ser cadenas con una longitud superior a 0. 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, entonces se genera una InvalidOperationException y se detiene todo el procesamiento del controlador.
- 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.
ReplaceDepartmentParentsNoUpdateLMSHandler
ReplaceDepartmentParentsNoUpdateLMSHandler recupera la organización específica principal creada manualmente en LMS y conserva la relación para que no sea sobrescrita por la actualización.
Implementación
D2L.IM.IPSIS.Default.OrgUnits.Departments.Handlers.ReplaceDepartmentParentsNoUpdateLMSHandler
Comportamiento esperado
El controlador realiza las siguientes tareas:
- Busca toda la organización principal del departamento y actualiza la lista principal.
- El proceso continúa con el controlador siguiente (devuelve True).
Comportamiento de error
El traductor no arroja errores.
Nota de configuración
- Este controlador debe ejecutarse después de los controladores Read y Validate.
- Este controlador debe ejecutarse antes de los controladores Save.
- Orden de clasificación recomendada = 3.
ReplaceDepartmentCreateLMSHandler
El ReplaceDepartmentCreateLMSHandler crea el Departamento en Brightspace.
Implementación
D2L.IM.IPSIS.Default.OrgUnits.Departments.Handlers.ReplaceDepartmentCreateLMSHandler
Comportamiento esperado
Este controlador solo se ejecuta si no existen Departamentos de Brightspace asociados con la solicitud. El controlador realiza las siguientes tareas:
- Crea el Departamento de Brightspace con la información que se transmite en la solicitud (esto activa el registro automático de auditoría).
- 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 existía un problema de procesamiento, se genera una excepción junto con información tan detallada como esté disponible.
Notas de configuración
- Este controlador se coloca después de cualquier controlador Validate.
- El controlador Create LMS debe ejecutarse antes del controlador Create IM.
ReplaceDepartmentCreateIMHandler
El ReplaceDepartmentCreateIMHandler crea la Entidad en las tablas de IM y una asignación en caso de que se defina una.
Implementación
D2L.IM.IPSIS.Default.OrgUnits.Departments.Handlers.ReplaceDepartmentCreateIMHandler
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 Departamento en la Plataforma IM.
- Si hay una unidad de organización LMS asociada con la solicitud, el controlador crea la asignación del departamento de la Plataforma IM para el Departamento 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 existía un problema de procesamiento, se genera una excepción junto con información tan detallada como esté disponible.
Nota de configuración
Este controlador debería colocarse después de cualquier controlador CreateLMS.
ReplaceDepartmentSaveLMSHandler
El ReplaceDepartmentSaveLMSHandler guarda todos los cambios que se han realizado en el Departamento de Brightspace.
Implementación
Este controlador solo se ejecuta si hay cambios que se van a guardan para el Departamento de Brightspace. El controlador realiza las siguientes tareas:
- Actualiza el Departamento de Brightspace (esto activa el registro automático de auditoría).
- Si la solicitud es una actualización y, por lo menos se modificó un campo, 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 se coloca después de los controladores Create.
ReplaceDepartmentSaveIMHandler
El ReplaceDepartmentSaveIMHandler guarda los cambios que se han hecho a las asignaciones y la Entidad IM.
Implementación
D2L.IM.IPSIS.Default.OrgUnits.Departments.Handlers.ReplaceDepartmentSaveIMHandler
Comportamiento esperado
El controlador solo se ejecuta si hay cambios que se van a guardan para la Entidad o la Jerarquía en 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 se ejecuta después de los controladores SaveLMS.
ReplaceDepartmentMapByCodeHandler
Este controlador asocia un Departamento con un Departamento de Brightspace existente mediante una coincidencia en OrgUnitCode.
Implementación
D2L.IM.IPSIS.Default.OrgUnits.Departments.Handlers.ReplaceDepartmentMapByCodeHandler
Comportamiento esperado
Este controlador solo se debe utilizar si se espera que el Código de la Unidad de organización sea único dentro de una organización. El controlador realiza las siguientes tareas:
- Si no hay ninguna asignación de Departamento, el controlador intenta encontrar un Departamento en Brightspace que coincida con OrgUnitCode.
- Si se encuentra una coincidencia, el controlador actualiza el objeto de solicitud para contener la orgUnit coincidente.
- Si no se encuentra ninguna coincidencia, el controlador no hace nada.
- Si se encuentran varias coincidencias, el controlador genera una MultipleOrgUnitsFoundException que provoca la devolución de un error.
- 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.
- El procesamiento continúa con el 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
Por lo general, este controlador se colocaría entre los controladores Read y Create, en cuyo caso solo se ejecuta si los controladores Read no pueden encontrar un Departamento asignado.
ReplaceDepartmentNameNoUpdateLMSHandler
Implementación
D2L.IM.IPSIS.Default.OrgUnits.Departments.Handlers.ReplaceDepartmentCreateHandler
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 se ejecuta antes de los controladores SaveLMS.
ReplaceDepartmentValidateLMSOrgUnitExistsHandler
El ReplaceDepartmentValidateLMSOrgUnitExistsHandler comprueba si la unidad de organización a la cual corresponde la solicitud se ha eliminado en Brightspace.
Implementación
D2L.IM.IPSIS.Default.OrgUnits.Departments.Handlers.ReplaceDepartmentValidateLMSOrgUnitExistsHandler
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 de Brightspace), 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ó de Brightspace. Se genera una UpdateOrgUnitFailedException.
- Esta excepción provocará que el Servicio del LIS responda con invaliddata. Se consideró que este es el código de respuesta más apropiado para esta situación.
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 Validate.