A interface ITranslateCourseSection é usada para traduzir uma seção do curso do LIS em uma seção do curso do IPSIS.
A implementação da interface é D2L.IM.IPSIS.LIS.CMS.ITranslateCourseSection.
A seguinte lista de configuração de modelo fornece um ponto de partida para qualquer implementação do LIS:
IPSIS, Padrão
- CourseSectionRequestBaseTranslator (Ordem de classificação = 10)
- CourseSectionRequestParentOfferingIdRequiredTranslator (Ordem de classificação = 20)
- CourseSectionRequestNameRequiredTranslator (Ordem de classificação = 30)
- CourseSectionRequestDepartmentRequiredTranslator (Ordem de classificação = 40)
- CourseSectionRequestSemesterOptionalTranslator (Ordem de classificação = 50)
- CourseSectionRequestStartDateEndDateRequiredTranslator (Ordem de classificação = 60)
- CourseSectionRequestStatusOptionalTranslator (Ordem de classificação = 70)
CourseSectionRequestBaseTranslator
O CourseSectionRequestBaseTranslator obtém o identificador exclusivo da seção de curso da solicitação.
Implementação
D2L.IM.IPSIS.LIS.RequestAdapters.CMS.Default.CourseSectionRequestBaseTranslator
Comportamento esperado
O tradutor realiza as seguintes tarefas:
- Configura OrgUnitCode e OrgUnitName para o valor fornecido no sourcedGUID.sourcedid.
- Continua o processamento para o próximo tradutor.
Entidade
Propriedade
|
Objeto de resultado da tradução
|
Mapeamento da solicitação do LIS
|
Código
|
result.Entity.Code
|
courseSectionRecord.sourcedGUID.sourcedId
|
Nome
|
result.Entity.Name
|
courseSectionRecord.sourcedGUID.sourcedId
|
Comportamento de erro
Se houver um problema durante o processamento, um IncompleteRequestException será lançado. Isso resulta em:
- Suspensão de todo processamento adicional.
- Um cabeçalho de resposta do LIS contendo:
- CodeMajor = failure.
- Severity = status.
- CodeMinor = invaliddata.
Notas sobre a configuração
Esse tradutor (ou um tradutor base alternativo) deve ser configurado em primeiro lugar na lista de tradutores.
CourseSectionRequestParentOfferingIdRequiredTranslator
O CourseSectionRequestParentOfferingIdRequiredTranslator requer e mapeia o Id principal da oferta de curso.
Implementação
D2L.IM.IPSIS.LIS.RequestAdapters.CMS.Default.CourseSectionRequestParentOfferingIdRequiredTranslator
Comportamento esperado
O tradutor realiza as seguintes tarefas:
- Configura a propriedade ParentOfferingId do resultado para conter o valor de ParentOfferingId na solicitação.
- Continua o processamento para o próximo tradutor.
ParentOfferingId
Propriedade
|
Objeto de resultado da tradução
|
Mapeamento da solicitação do LIS
|
OfferingId principal
|
result.ParentOfferingId
|
courseSectionRecord.courseSection.parentOfferingId
|
Comportamento de erro
Se houver um problema durante o processamento, um IncompleteRequestException será lançado. Isso resulta em:
- Suspensão de todo processamento adicional.
- Um cabeçalho de resposta do LIS contendo:
- CodeMajor = failure.
- Severity = status.
- CodeMinor = invaliddata.
Nota sobre a configuração
Esse tradutor pode ser posicionado em qualquer lugar depois do tradutor base.
CourseSectionRequestNameRequiredTranslator
O CourseSectionRequestNameRequiredTranslator requer e mapeia o nome da seção.
Implementação
D2L.IM.IPSIS.LIS.RequestAdapters.CMS.Default.CourseSectionRequestNameRequiredTranslator
Comportamento esperado
O tradutor realiza as seguintes tarefas:
- Atualiza o OrgUnitName para conter o valor do título na solicitação.
- Continua o processamento para o próximo tradutor.
Entidade
Propriedade
|
Objeto de resultado da tradução
|
Mapeamento da solicitação do LIS
|
Nome
|
result.Entity.Name
|
courseSectionRecord.courseSection.title
|
Comportamento de erro
Se houver um problema no processamento, um IncompleteRequestException será lançado. Isso resulta em:
- Suspensão de todo processamento adicional.
- Um cabeçalho de resposta do LIS contendo:
- CodeMajor = failure.
- Severity = status.
- CodeMinor = invaliddata.
Nota sobre a configuração
Esse tradutor pode ser posicionado em qualquer lugar depois do tradutor base.
CourseSectionRequestDepartmentRequiredTranslator
O CourseSectionRequestDepartmentRequiredTranslator requer e mapeia o Id do departamento.
Implementação
D2L.IM.IPSIS.LIS.RequestAdapters.CMS.Default.CourseSectionRequestDepartmentRequiredTranslator
Comportamento esperado
O tradutor conclui as seguintes tarefas:
- Configura o ParentDepartmentId do resultado para conter o valor de org.orgName na solicitação.
- Continua o processamento para o próximo tradutor.
ParentDepartmentID
Propriedade
|
Objeto de resultado da tradução
|
Mapeamento da solicitação do LIS
|
DepartmentId principal
|
result.ParentDepartmentId
|
courseSectionRecord.courseSection.org.orgName
|
Comportamento de erro
Se houver um problema durante o processamento, um IncompleteRequestException será lançado. Isso resulta em:
- Suspensão de todo processamento adicional.
- Um cabeçalho de resposta do LIS contendo:
- CodeMajor = failure.
- Severity = status.
- CodeMinor = invaliddata.
Notas sobre a configuração
Esse tradutor pode ser posicionado em qualquer lugar depois do tradutor base.
CourseSectionRequestSemesterOptionalTranslator
O CourseSectionRequestSemesterOptionalTranslator mapeia o Id do Semestre.
Implementação
D2L.IM.IPSIS.LIS.RequestAdapters.CMS.Default.CourseSectionRequestSemesterOptionalTranslator
Comportamento esperado
O tradutor realiza as seguintes tarefas:
- Configura o ParentSemesterId do resultado para conter o valor de academicSession na solicitação (se fornecido).
- Continua o processamento para o próximo tradutor.
ParentSemeseterId
Propriedade
|
Objeto de resultado da tradução
|
Mapeamento da solicitação do LIS
|
SemesterId principal
|
result.ParentSemesterId
|
courseSectionRecord.courseSection.academicSession
|
Comportamento de erro
Se houver um problema durante o processamento, um IncompleteRequestException será lançado. Isso resulta em:
- Suspensão de todo processamento adicional.
- Um cabeçalho de resposta do LIS contendo:
- CodeMajor = failure.
- Severity = status.
- CodeMinor = invaliddata.
Notas sobre a configuração
Esse tradutor pode ser posicionado em qualquer lugar depois do tradutor base.
CourseSectionRequestStartDateEndDateOptionalTranslator
O CourseSectionRequestStartDateEndDateOptionalTranslator configura a data de início e final da seção.
Implementação
D2L.IM.IPSIS.LIS.RequestAdapters.CMS.Default.CourseSectionRequestStartDateEndDateOptionalTranslator
Comportamento esperado
O tradutor realiza as seguintes tarefas:
- Configura as datas de início e final do OrgUnit para conter os valores do primeiro timeFrame.begin e timeFrame.end na solicitação.
- Continua o processamento para o próximo tradutor.
Entidade
Propriedade
|
Objeto de resultado da tradução
|
Mapeamento da solicitação do LIS
|
Data de início
|
result.Entity.StartDate
|
courseSectionRecord.courseSection.timeFrame(0).begin
|
Data final
|
result.Entity.EndDate
|
courseSectionRecord.courseSection.timeFrame(0).end
|
Comportamento de erro
Se houver um problema durante o processamento, um IncompleteRequestException será lançado. Isso resulta em:
- Suspensão de todo processamento adicional.
- Um cabeçalho de resposta do LIS contendo:
- CodeMajor = failure.
- Severity = status.
- CodeMinor = invaliddata.
Notas sobre a configuração
- Esse tradutor pode ser posicionado em qualquer lugar depois do tradutor base.
- Esse tradutor não pode ser configurado com CourseSectionRequestStartDateEndDateRequiredTranslator.
CourseSectionRequestStartDateEndDateRequiredTranslator
O CourseSectionRequestStartDateEndDateRequiredTranslator requer e mapeia as data de início e final para a Seção do curso.
Implementação
D2L.IM.IPSIS.LIS.RequestAdapters.CMS.Default.CourseSectionRequestStartDateEndDateRequiredTranslator
Comportamento esperado
O tradutor realiza as seguintes tarefas:
- Configura as datas de início e final do OrgUnit para conter os valores do primeiro timeFrame.begin e timeFrame.end na solicitação.
- Continua o processamento para o próximo tradutor.
Entidade
Propriedade
|
Objeto de resultado da tradução
|
Mapeamento da solicitação do LIS
|
Data de início
|
result.Entity.StartDate
|
courseSectionRecord.courseSection.timeFrame(0).begin
|
Data final
|
result.Entity.EndDate
|
courseSectionRecord.courseSection.timeFrame(0).end
|
Comportamento de erro
Se houver um problema durante o processamento, um IncompleteRequestException será lançado. Isso resulta em:
- Suspensão de todo processamento adicional.
- Um cabeçalho de resposta do LIS contendo:
- CodeMajor = failure.
- Severity = status.
- CodeMinor = invaliddata.
Notas sobre a configuração
- Esse tradutor pode ser posicionado em qualquer lugar depois do tradutor base.
- Esse tradutor não pode ser configurado com CourseSectionRequestStartDateEndDateOptionalTranslator.
CourseSectionRequestStatusOptionalTranslator
O CourseSectionRequestStatusOptionalTranslator configura o status da seção.
Implementação
D2L.IM.IPSIS.LIS.RequestAdapters.CMS.Default.CourseSectionRequestStatusOptionalTranslator
Comportamento esperado
O tradutor realiza as seguintes tarefas:
- Configurará a propriedade IsActive do OrgUnit para conter o valor do status na solicitação, se a propriedade courseSectionRecord.courseSection.status foi configurada.
- Se o status não for fornecido, o valor padrão será nulo, pois o campo é um booleano anulável.
- Se o status for fornecido, mas o valor não for encontrado no dicionário (via VocabManager), o valor será configurado como false.
- Continua o processamento para o próximo tradutor.
Entidade
Propriedade
|
Objeto de resultado da tradução
|
Mapeamento da solicitação do LIS
|
Status
|
result.Entity.IsActive
|
courseSectionRecord.courseSection.status
|
Comportamento de erro
Se houver um problema durante o processamento, um IncompleteRequestException será lançado. Isso resulta em:
- Suspensão de todo processamento adicional.
- Um cabeçalho de resposta do LIS contendo:
- CodeMajor = failure.
- Severity = status.
- CodeMinor = invaliddata.
Nota sobre a configuração
Esse tradutor pode ser posicionado em qualquer lugar depois do tradutor base.
CourseSectionRequestTruncateOrgUnitCodeTranslator
O CourseSectionRequestTruncateOrgUnitCodeTranslator truncará o código da unidade organizacional do objeto de resultado se o código tiver mais de 50 caracteres. O código truncado é configurado em 50 caracteres.
Implementação
D2L.IM.IPSIS.LIS.RequestAdapters.CMS.Default.CourseSectionRequestTruncateOrgUnitCodeTranslator
Comportamento esperado
O tradutor realiza as seguintes tarefas:
- Verifica se o resultado.Entity.Code tem mais de 50 caracteres. Se sim, o código será truncado para 50 caracteres.
- Continua o processamento para o próximo tradutor.
Nota sobre a configuração
Esse tradutor pode ser posicionado em qualquer lugar depois do tradutor base.
CourseSectionRequestCreateParentsTranslator
CourseSectionRequestCreateParentsTranslator autoprovisiona unidades organizacionais, ou seja, ofertas de curso, modelos e departamentos da solicitação de seção do Ellucian ILP.
Implementação
D2L.IM.IPSIS.LIS.RequestAdapters.CMS.Default.CourseSectionRequestCreateParentsTranslator
Comportamento esperado
Quando uma solicitação de seção é recebida do Ellucian ILP, ele dispara as seguintes atividades na plataforma Brightspace:
- Criar/atualizar um departamento com base nos mapeamentos abaixo
- Criar/atualizar um modelo de curso com base nos mapeamentos abaixo
- Criar/atualizar uma oferta de curso com base nos mapeamentos abaixo
- Criar/atualizar uma seção com base na solicitação
Além disso, as unidades organizacionais serão redefinidas como principais se uma nova principal vier com uma estrutura organizacional diferente.
Entidade
Propriedade
|
Objeto de resultado da tradução
|
Mapeamento da solicitação LS
|
id |
result.Entity.id |
courseSectionRecord.sourceGUID.sourceId |
título |
result.Entity.title |
courseSectionRecord.courseSection.title.textString |
rótulo |
|
courseSectionRecord.courseSection.label.textString |
principal |
|
courseSectionRecord.courseSection.parentOfferingId |
departamento |
|
courseSectionRecord.courseSection.org.orgName.textString |
termo |
|
courseSectionRecord.courseSection.academicSession.textString |
departmentId |
|
courseSectionRecord.courseSection.org.id.textString |
StartDate |
|
courseSectionRecord.courseSection.timeFrame.begin |
endDate |
|
courseSectionRecord.courseSection.timeFrame.end |
status |
result.Entity.status |
courseSectionRecord.courseSection.status |
Comportamento de erro
Se houver um problema durante o processamento, um IncompleteRequestException será lançado. Isso resulta em:
- Suspensão de todo processamento adicional.
- Um cabeçalho de resposta do LIS contendo:
- CodeMajor = failure.
- Severity = status.
- CodeMinor = invaliddata.
Se a solicitação de seção do curso falhar, as unidades organizacionais principais não serão removidas.
Notas sobre a configuração
A D2L recomenda a seguinte ordem de configuração quando você usar este tradutor:
- CourseSectionRequestBaseTranslator
- CourseSectionRequestNameRequiredTranslator
- CourseSectionRequestCreateParentsTranslator
- CourseSectionRequestStartDateEndDateOptionalTranslator