A interface de plug-in para IDeleteCourseOfferingHandler é usada pelos Adaptadores do IPSIS para excluir ofertas de curso do Brightspace.
A implementação da interface é D2L.IM.IPSIS.OrgUnits.CourseOfferings.Handlers.IDeleteCourseOfferingHandler.
As seguintes listas de configuração fornecem um ponto de partida para qualquer implementação do IPSIS:
IPSIS, modelo – Oferta de curso
- DeleteCourseOfferingValidateHandler(Ordem de classificação = 10)
- DeleteCourseOfferingIMHandler (Ordem de classificação = 10)
DeleteCourseOfferingValidateHandler
Esse manipulador sempre deve ser usado. Ele executa validação de entrada que é necessária para garantir que todos os outros manipuladores Delete executem corretamente.
Implementação
D2L.IM.IPSIS.Default.OrgUnits.CourseOfferings.Handlers.DeleteCourseOfferingValidateHandler
Comportamento esperado
O manipulador realiza as seguintes tarefas:
- Verifica se o ID do SIS na solicitação corresponde a um item real nas tabelas IM.
- Verifica se o Tipo de OrgUnit esperado pelo serviço corresponde ao Tipo do orgUnit no banco de dados.
- Se todas as verificações passarem, salvará o ExternalOrgUnitInfo na solicitação para os manipuladores posteriores usarem.
Comportamento de erro
Se alguma parte da validação falhar, uma exceção será lançada, junto com o máximo possível de detalhes.
Nota sobre a configuração
O manipulador Validate normalmente deve ser executado primeiro na lista de manipuladores, antes de qualquer manipulador que atualize ou exclua as informações do banco de dados.
DeleteCourseOfferingIMHandler
Implementação
D2L.IM.IPSIS.Default.OrgUnits.CourseOfferings.Handlers.DeleteCourseOfferingIMHandler
Comportamento esperado
Se houver algo dependente da oferta de curso (secundários da Hierarquia do IM), esse processo deve falhar. O manipulador realiza as seguintes tarefas:
- Faz uma exclusão reversível da oferta de curso das tabelas do IPSIS se não houver nada dependente da oferta de curso.
- Remove todas as relações principal da hierarquia de IM para esta oferta.
- Configura o status do resultado como EntityDeleted.
- O processamento continua para o próximo manipulador configurado.
Comportamento de erro
Se houver um problema durante o processamento, uma exceção será lançada, junto com o máximo possível de detalhes.
Nota sobre a configuração
O manipulador Delete IM normalmente deve ser executado por último na lista de manipuladores.
DeleteCourseOfferingDeleteLEHandler
Esse manipulador será usado se o comportamento desejado for que todas as ofertas mapeadas do Brightspace sejam excluídas.
Implementação
D2L.IM.IPSIS.Default.OrgUnits.CourseOfferings.Handlers.DeleteCourseOfferingDeleteLEHandler
Comportamento esperado
Para cada oferta de curso do Brightspace mapeada, o manipulador executa as seguintes tarefas:
- Exclui a oferta de curso (resultando automaticamente em uma entrada de auditoria).
- Marca todos os mapeamentos para a oferta de curso do Brightspace como excluídos.
- Configura o status do resultado como EntityDeleted.
- O processamento continua para o próximo manipulador (Return True).
Comportamento de erro
Se houver um problema durante o processamento, uma exceção será lançada, junto com o máximo possível de detalhes.
Nota sobre a configuração
- Isso deve ocorrer antes da exclusão da tabela IM (exemplo: DeleteCourseOfferingIMHandler).
- Esse manipulador não deve ser configurado ao mesmo tempo que DeleteCourseOfferingInactiveLEHandler.
DeleteCourseOfferingCascadeDeleteCourseSectionHandler
Esse manipulador é usado se o comportamento desejado for conectar em cascata a exclusão da oferta de curso em todas as seções secundárias à oferta de curso nas tabelas IM.
Implementação
D2L.IM.IPSIS.Default.OrgUnits.CourseOfferings.Handlers.DeleteCourseOfferingCascadeDeleteCourseSectionHandler
Comportamento esperado
O manipulador realiza as seguintes tarefas:
- Identifica todas as seções que são secundárias de uma oferta nas tabelas IM.
- Para cada seção, o manipulador envia um DeleteCourseSection usando a lista atual de manipuladores para IDeleteCourseSectionHandler.
- Se pelo menos uma seção for excluída, o manipulador alterará o status do resultado para EntityDeleted.
- O processamento continua para o próximo manipulador configurado.
Comportamento de erro
Se houver um problema durante o processamento, uma exceção será lançada, junto com o máximo possível de detalhes.
Notas sobre a configuração
- Isso deve ocorrer antes que a oferta de curso seja excluída no Ambiente de aprendizagem Brightspace ou nas tabelas IM (isto é: DeleteCourseOfferingIMHandler, DeleteCourseOfferingDeleteLEHandler, DeleteCourseOfferingInactiveLEHandler)
- Esse manipulador não funciona corretamente, a menos que cada manipulador DeleteCourseOffering adicional configurado tenha um manipulador DeleteCourseSection correspondente configurado. Por exemplo, se estiver usando o DeleteCourseOfferingCascadeDeleteCourseSectionHandler e o DeleteCourseOfferingIMHandler, então o DeleteCourseSectionIMHandler também deve ser usado.