A interface de plug-in para IReplaceEnrollmentHandler é usada pelos Adaptadores do IPSIS para oferecer suporte à operação de substituição para Inscrições.
A implementação da interface é D2L.IM.IPSIS.OrgUnits.Memberships.Handlers.IReplaceEnrollmentHandler.
As listas de configuração a seguir, para a interface ReplaceEnrollmentHandler, são fornecidas com o produto. Elas são listadas junto com o ponto de Extensão ao qual se destinam.
IPSIS, Modelo – Inscrições
- ReplaceEnrollmentReadIMHandler (Ordem de classificação = 10)
- ReplaceEnrollmentStatusDefaultActiveHandler (Ordem de classificação = 20)
- ReplaceEnrollmentValidateSectionHandler (Ordem de classificação = 30)
- ReplaceEnrollmentCreateIMEnrollmentHandler (Ordem de classificação = 40)
- ReplaceEnrollmentSaveIMEnrollmentHandler (Ordem de classificação = 50)
- ReplaceEnrollmentEnrollLMSOfferingHandler (Ordem de classificação = 60)
- ReplaceEnrollmentEnrollLMSGroupSectionHandler (Ordem de classificação = 70)
- ReplaceEnrollmentUnenrollLMSGroupSectionHandler (Ordem de classificação = 80)
- ReplaceEnrollmentUnenrollLMSOfferingHandler (Ordem de classificação = 90)
Segundo plano, modelo – Segundo plano
- ReplaceEnrollmentUnenrollLMSGroupSectionHandler (Ordem de classificação = 10)
- ReplaceEnrollmentEnrollLMSGroupSectionHandler (Ordem de classificação = 20)
- ReplaceEnrollmentUnenrollLMSOfferingHandler (Ordem de classificação = 30)
- ReplaceEnrollmentEnrollLMSOfferingHandler (Ordem de classificação = 40)
ReplaceEnrollmentReadIMHandler
É previsto que o ReplaceEnrollmentReadIMHandler obtenha todas as informações relevantes do banco de dados das tabelas IM.
Implementação
D2L.IM.IPSIS.Default.Enrollments.Handlers.ReplaceEnrollmentReadIMHandler
Comportamento esperado
Para o Brightspace, uma inscrição é simplesmente uma ligação entre um OrgUnit, um Usuário e uma Função. O manipulador ReadIM é previsto para ser transmitido nos identificadores do SIS para cada uma dessas entidades, que ele usa para procurar os objetos de Função, Usuário e OrgUnit associados nas tabelas do IM e do LMS.
O manipulador realiza as seguintes tarefas:
- Lê o IExternalOrgUnitInfo para o SIS OrgUnit determinado. Falha com uma exceção se o ExternalOrgUnitInfo não for encontrado (obrigatório).
- Lê o Mapeamento de função para a função do SIS determinada, selecionando a primeira se mais de uma for transmitida. Falha com uma exceção se o mapeamento de função não for encontrado (obrigatório).
- Lê o Mapeamento do usuário para o usuário do SIS determinado. Falha com uma exceção se o Mapeamento do usuário não for encontrado (obrigatório)
- Se esta for uma atualização de uma inscrição do SIS existente, o manipulador lerá o IEnrollmentMapping. Se nenhum Mapeamento de inscrição for encontrado, a solicitação criará um novo.
- Se um Mapeamento de inscrição for encontrado, o manipulador validará que o Usuário na solicitação corresponde ao Usuário na inscrição existente.
- Lê o IOrgUnitMappings se houver algum. Se nenhum Mapeamento de OrgUnit for encontrado, o manipulador registrará uma mensagem e continuará. Pode haver casos de uso válidos em que atualizamos apenas as tabelas IM.
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
Geralmente, o manipulador Read é configurado em primeiro lugar na lista.
ReplaceEnrollmentValidateSectionHandler
Implementação
D2L.IM.IPSIS.Default.Enrollments.Handlers.ReplaceEnrollmentValidateSectionHandler
Comportamento esperado
O comportamento esperado para esse manipulador é validar que a solicitação de inscrição atual refere-se para uma seção ou grupo do curso.
Comportamento de erro
Se a inscrição não se referir para uma seção ou grupo do curso, será lançado um InvalidOrgUnitTypeException.
Nota sobre a configuração
Esse manipulador deve ser configurado antes do manipulador ReplaceEnrollmentCreateIMEnrollmentHandler.
ReplaceEnrollmentKeepLMSCreatedEnrollmentsOnUnenrollValidateHandler
Implementação
D2L.IM.IPSIS.Default.Enrollments.Handlers.ReplaceEnrollmentKeepLMSCreatedEnrollmentsOnUnenrollValidateHandler
Comportamento esperado
O comportamento esperado para esse manipulador é validar que a solicitação de inscrição atual corresponde a um log de inscrição originado de uma solicitação do SIS (não de uma inscrição manual do Brightspace).
Comportamento de erro
Se o log de inscrição se originou no Brightspace (por exemplo, o usuário foi inscrito pela primeira vez manualmente no Brightspace e, em seguida, o SIS enviou um replaceMembership para o mesmo usuário e unidade organizacional), o manipulador lançará um UserManuallyEnrolledInLMSException.
Nota sobre a configuração
Esse manipulador deve ser configurado antes de ReplaceEnrollmentCreateIMEnrollmentHandler, mas após o ReplaceEnrollmentReadIMHandler.
ReplaceEnrollmentCreateIMEnrollmentHandler
Implementação
D2L.IM.IPSIS.Default.Enrollments.Handlers.ReplaceEnrollmentCreateIMEnrollmentHandler
Comportamento esperado
O comportamento esperado para esse manipulador é criar Registros de inscrição nas tabelas de banco de dados do IM se eles ainda não existirem. Para cada objeto de Inscrição na lista de criação na solicitação, se nenhum mapeamento do IM existir, IM_ENROLLMENTS será atualizado.
Comportamento de erro
Se houver um problema durante o processamento, uma exceção será lançada, junto com o máximo de detalhes possível.
Nota sobre a configuração
Esse manipulador deve ser configurado após os manipuladores Read e Validate.
ReplaceEnrollmentEnrollLMSGroupSectionHandler
O ReplaceEnrollmentEnrollLMSGroupSectionHandler inscreve os usuários em seções ou grupos que são mapeados no Brightspace.
Implementação
D2L.IM.IPSIS.Default.Enrollments.Handlers.ReplaceEnrollmentEnrollLMSGroupSectionHandler
Comportamento esperado
O manipulador realiza as seguintes tarefas:
- Para cada Objeto de inscrição ativo na lista de inscrições a serem atualizadas, se o Usuário ainda não foi inscrito na Seção/Grupo, o manipulador inscreverá o Usuário (resultando automaticamente em uma entrada de auditoria).
- Se o Usuário já estiver inscrito na Seção/Grupo com uma Função diferente, o manipulador cancelará a inscrição do Usuário e o inscreverá novamente com a nova Função (resultando automaticamente em uma entrada de auditoria).
- Se o Usuário já estiver inscrito na Seção/Grupo com a mesma Função, o manipulador não fará nada.
- 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 de detalhes possível.
Notas sobre a configuração
- Esse manipulador deve ser configurado após o manipulador SaveIM.
- Esse manipulador deve ser configurado antes dos manipuladores Enroll e Unenroll LMSOffering.
- Esse manipulador não deve ser configurado ao mesmo tempo que ReplaceEnrollmentEnrollLMSGroupSectionRoleNoUpdateHandler.
ReplaceEnrollmentEnrollLMSOfferingHandler
O ReplaceEnrollmentEnrollLMSOfferingHandler inscreve os usuários em ofertas no Brightspace.
Implementação
D2L.IM.IPSIS.Default.Enrollments.Handlers.ReplaceEnrollmentEnrollLMSOfferingHandler
Comportamento esperado
O manipulador realiza as seguintes opções:
- Para cada Objeto de inscrição ativo na lista de inscrições a serem atualizadas, se o Usuário ainda não foi inscrito na Oferta, o manipulador inscreverá o Usuário na Oferta de curso (criando automaticamente uma entrada de auditoria).
- Se o Usuário já estiver inscrito na Oferta com uma Função diferente, o manipulador cancelará a inscrição do Usuário e o inscreverá novamente com a nova Função (resultando automaticamente em uma entrada de auditoria).
- Se o Usuário já estiver inscrito na Oferta com a mesma Função, o manipulador não fará nada.
- 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.
Notas sobre a configuração
- Esse manipulador deve ser configurado após o manipulador EnrollLMSGroupSection.
- Esse manipulador não deve ser configurado ao mesmo tempo que ReplaceEnrollmentEnrollLMSOfferingRoleNoUpdateHandler.
ReplaceEnrollmentSaveIMEnrollmentHandler
O ReplaceEnrollmentSaveIMEnrollmentHandler salva quaisquer alterações na inscrição nas Tabelas IM, incluindo status e Função. Ele também cria uma lista das Inscrições que precisam ser atualizadas.
Implementação
D2L.IM.IPSIS.Default.Enrollments.Handlers.ReplaceEnrollmentSaveIMEnrollmentHandler
Comportamento esperado
O manipulador realiza as seguintes tarefas:
- Atualiza a Função e o status Ativo/Inativo da inscrição de IM atual e salva as alterações no banco de dados se algo diferir do valor original.
- Cria uma lista das inscrições que precisam ser atualizadas. Uma única inscrição de IM pode mapear para várias inscrições se o OrgUnitMappings não for um a um.
- O processamento prossegue para o próximo manipulador disponível.
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
- Esse manipulador deve ocorrer após o manipulador CreateIMEnrollment.
- Esse manipulador deve ocorrer antes dos manipuladores Enroll e Unenroll LMS.
ReplaceEnrollmentEnrollLMSGroupSectionRoleNoUpdateHandler
O ReplaceEnrollmentEnrollLMSGroupSectionRoleNoUpdateHandler cria ou atualiza a inscrição na seção/grupo, mas não atualiza a função se já tiver uma. Esse manipulador inscreve os usuários em seções ou grupos no Brightspace, se ainda não estiverem inscritos. Ele não altera as inscrições existentes.
Implementação
D2L.IM.IPSIS.Default.Enrollments.Handlers.ReplaceEnrollmentEnrollLMSGroupSectionRoleNoUpdateHandler
Comportamento esperado
O manipulador realiza as seguintes tarefas:
- Para cada Objeto de inscrição ativo na lista de inscrições a serem atualizadas, o manipulador inscreve o Usuário na Seção ou Grupo do Brightspace (criando automaticamente uma entrada de auditoria).
- 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.
Notas sobre a configuração
- Esse manipulador deve ser configurado após o manipulador SaveIMEnrollment.
- Esse manipulador deve ser configurado antes do manipulador EnrollLMSOffering.
- Esse manipulador não deve ser configurado ao mesmo tempo que ReplaceEnrollmentEnrollLMSGroupSectionHandler.
ReplaceEnrollmentEnrollLMSOfferingRoleNoUpdateHandler
O ReplaceEnrollmentEnrollLMSOfferingRoleNoUpdateHandler cria ou atualiza a inscrição na oferta de curso, mas não atualiza a função se já tiver uma. O manipulador não altera as inscrições existentes.
Implementação
D2L.IM.IPSIS.Default.Enrollments.Handlers.ReplaceEnrollmentEnrollLMSOfferingRoleNoUpdateHandler
Comportamento esperado
O manipulador realiza as seguintes tarefas:
- Para cada Objeto de inscrição ativo na lista de inscrições a serem atualizadas, o manipulador inscreve o Usuário na Oferta de curso (criando automaticamente uma entrada de auditoria).
- 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
- Esse manipulador deve ser configurado após o manipulador EnrollLMSGroupSection.
- Esse manipulador não deve ser configurado ao mesmo tempo que ReplaceEnrollmentEnrollLMSOfferingHandler.
ReplaceEnrollmentStatusDefaultActiveHandler
O ReplaceEnrollmentStatusDefaultActiveHandler padroniza o status da inscrição para Ativo, se ele for nulo.
Implementação
D2L.IM.IPSIS.Default.Enrollments.Handlers.ReplaceEnrollmentStatusDefaultActiveHandler
Comportamento esperado
O manipulador realiza as seguintes tarefas:
- Se o status for atualmente nulo, o manipulador o configura como Ativo.
- Caso contrário, esse manipulador é ignorado e não altera o status existente.
Cenários 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
- Esse manipulador deve ser configurado após o manipulador Read.
- Esse manipulador deve ser configurado antes dos manipuladores CreateIM e SaveIM.
ReplaceEnrollmentStatusDefaultInactiveHandler
Esse manipulador padroniza o status da inscrição para Inativo, se ele for nulo.
Implementação
D2L.IM.IPSIS.Default.Enrollments.Handlers.ReplaceEnrollmentStatusDefaultInactiveHandler
Comportamento esperado
O manipulador realiza as seguintes tarefas:
- Se o status for atualmente nulo, o manipulador o configura como Inativo.
- Caso contrário, esse manipulador é ignorado e não altera o status existente.
Notas sobre a configuração
- Esse manipulador deve ser configurado após o manipulador Read.
- Esse manipulador deve ser configurado antes dos manipuladores CreateIM e SaveIM.
ReplaceEnrollmentUnenrollLMSGroupSectionHandler
O ReplaceEnrollmentUnenrollLMSGroupSectionHandler remove as inscrições de Grupos e Seções do Brightspace.
Implementação
D2L.IM.IPSIS.Default.Enrollments.Handlers.ReplaceEnrollmentUnenrollLMSGroupSectionHandler
Comportamento esperado
Esse manipulador cancela a inscrição dos usuários das seções, caso eles não devam mais estar inscritos. O manipulador realiza as seguintes tarefas:
- Para cada Objeto de inscrição inativo na lista de inscrições a serem atualizadas, se a OrgUnit for uma Seção do curso LMS ou um Grupo LMS, o instrutor cancela a inscrição do usuário da Seção ou Grupo (resultando automaticamente em uma entrada de auditoria) e configura RequestStatus = EntityDeleted.
- Caso contrário, o manipulador o ignora e continua para a próxima inscrição.
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
UnenrollLMSGroupSection deve ocorrer após Validar e antes de UnenrollLMSOffering.
ReplaceEnrollmentUnenrollLMSOfferingHandler
O ReplaceEnrollmentUnenrollLMSOfferingHandler remove as inscrições das ofertas no Brightspace.
Implementação
D2L.IM.IPSIS.Default.Enrollments.Handlers.ReplaceEnrollmentUnenrollLMSOfferingHandler
Comportamento esperado
Esse manipulador cancela a inscrição dos usuários das ofertas no Brightspace, caso eles não devam mais estar inscritos. Ele cancela a inscrição dos usuários das ofertas apenas se eles não estiverem mais inscritos em nenhuma seção da oferta.
O manipulador realiza as seguintes tarefas:
- Para cada Objeto de inscrição na lista de Exclusão, se ele não for mais uma inscrição ativa e o usuário não estiver inscrito em nenhuma outra seção da mesma Oferta, o instrutor cancela o registro do usuário da oferta de curso (resultando automaticamente em uma entrada de auditoria) e configura RequestStatus = EntityDeleted.
- Caso contrário, o manipulador o ignora e continua para a próxima inscrição.
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
UnenrollLMSOffering deve ocorrer após o manipulador UnenrollLMSGroupSection.