De plug-in-interface voor IReplaceCourseSectionHandler wordt door IPSIS-adapters gebruikt ter ondersteuning van het vervangen van cursussecties.
De interface-implementatie is D2L.IM.IPSIS.OrgUnits.CourseSections.Handlers.IReplaceCourseSectionHandler.
De configuratielijsten IPSIS, Sjabloon - Secties en IPSIS, Sjabloon - Groepen bieden een startpunt voor elke IPSIS-implementatie.
De volgende lijst met handlers wordt gebruikt als startpunt wanneer u de cursussecties van Brightspace® wilt gebruiken voor uw SIS-secties:
- ReplaceCourseSectionReadHandler (sorteervolgorde = 10)
- ReplaceCourseSectionStatusDefaultActiveHandler (sorteervolgorde = 20)
- ReplaceCourseSectionParentDepartement ParentSemesterDefaultNoneHandler (sorteervolgorde = 30)
- ReplaceCourseSectionValidateBaseHandler (sorteervolgorde = 40)
- ReplaceCourseSectionValidateParentOfferingExistsHandler (sorteervolgorde = 50)
- ReplaceCourseSectionCreateLMSSectionHandler (sorteervolgorde = 60)
- ReplaceCourseSectionCreateIMSectionHandler (sorteervolgorde = 70)
- ReplaceCourseSectionSaveLMSSectionHandler (sorteervolgorde = 80)
- ReplaceCourseSectionSaveIMHandler (sorteervolgorde = 90)
De volgende lijst met handlers wordt gebruikt als startpunt wanneer u Brightspace®-groepen wilt gebruiken voor uw SIS-secties:
- ReplaceCourseSectionReadHandler (sorteervolgorde = 10)
- ReplaceCourseSectionStatusDefaultActiveHandler (sorteervolgorde = 20)
- ReplaceCourseSectionParentDepartement ParentSemesterDefaultNoneHandler (sorteervolgorde = 30)
- ReplaceCourseSectionValidateBaseHandler (sorteervolgorde = 40)
- ReplaceCourseSectionValidateParentOfferingExistsHandler (sorteervolgorde = 50)
- ReplaceCourseSectionCreateLMSGroupHandler (sorteervolgorde = 60)
- ReplaceCourseSectionCreateIMSectionHandler (sorteervolgorde = 70)
- ReplaceCourseSectionSaveLMSGroupHandler (sorteervolgorde = 80)
- ReplaceCourseSectionSaveIMHandler (sorteervolgorde = 90)
ReplaceCourseSectionReadHandler
Implementatie
D2L.IM.IPSIS.Default.OrgUnits.CourseSections.Handlers.ReplaceCourseSectionReadHandler®
Verwacht gedrag
De handler voert de volgende taken uit:
- Probeert informatie over de cursussectie te lezen uit de IM-tabellen.
- Indien deze wordt gevonden, probeert de handler eventuele toewijzingen aan Brightspace® voor de cursussectie te lezen en probeert deze de cursussectie van Brightspace® te lezen.
- Voor elke bovenliggende organisatie-eenheid die in de aanvraag is opgegeven, leest de handler de informatie uit Brightspace® en voegt deze toe aan de lijst met bovenliggende organisatie-eenheden. Als de bovenliggende organisatie-eenheid geen toewijzingen aan Brightspace® bevat, genereert de handler een ParentNotFoundException.
- De verwerking gaat door naar de volgende handler.
ReplaceCourseSectionStatusDefaultActiveHandler
Implementatie
ReplaceCourseSectionStatusDefaultActiveHandler
Verwacht gedrag
De handler voert de volgende taken uit:
- Hiermee stelt u de status van het object van de cursussectie in op actief als dit nog geen waarde heeft.
- De verwerking gaat door naar de volgende handler.
ReplaceCourseSectionParentDepartmentParentSemesterDefaultNoneHandler
Implementatie
D2L.IM.IPSIS.Default.OrgUnits.CourseSections.Handlers.ReplaceCourseSectionParentDepartmentParentSemesterDefaultNoneHandler®
Verwacht gedrag
De handler voert de volgende taken uit:
- Hiermee verwijdert u de bovenliggende afdeling en/of het bovenliggende semester uit de aanvraag.
- Verwijdert ParentOrgUnits als een van deze units in de adapter is ingesteld. Deze waarden worden niet gebruikt in de standaardimplementatie.
- De verwerking gaat door naar de volgende handler.
ReplaceCourseSectionValidateBaseHandler
Implementatie
D2L.IM.IPSIS.Default.OrgUnits.CourseSections.Handlers.ReplaceCourseSectionValidateBaseHandler®
Verwacht gedrag
De handler voert de volgende acties uit:
- Controleert of zowel een code als een naamwaarde voor de aanvraag is opgegeven. Deze waarden moeten tekenreeksen zijn met een lengte groter dan 0. Als de code of de naam null of leeg is, genereert de Validate-handler een ArgumentNullException.
- Als de sectie al bestaat in de IM-tabellen, controleert de handler of alle bovenliggende organisatie-eenheden die in de aanvraag zijn opgegeven al bestaan als bovenliggende organisatie-eenheden in de IM-hiërarchie. Als er een poging is gedaan om een bovenliggend onderdeel van de sectie toe te voegen of te vervangen, wordt er een uitzondering gegenereerd. De foutmelding luidt: kan bovenliggende editie van cursussectie met id {id} niet wijzigen. Dit gedrag wordt niet ondersteund.
- De verwerking gaat door naar de volgende handler.
ReplaceCourseSectionValidateParentOfferingExistsHandler
Implementatie
D2L.IM.IPSIS.Default.OrgUnits.CourseSections.Handlers.ReplaceCourseSectionValidateParentOfferingExistsHandler®
Verwacht gedrag
De handler voert de volgende acties uit:
- Controleert of de opgegeven bovenliggende editie bestaat in zowel de organisatie-eenheid van Brightspace® als de IPSIS-organisatie-eenheid.
- Als er een verband bestaat tussen deze twee, zorgt de handler ervoor dat de koppeling geldig is.
- Als een van de controles mislukt, genereert de Validate-handler een ParentNotFoundException. De uitzondering wordt afgevangen, geregistreerd en afgehandeld door de manager.
- De verwerking gaat door naar de volgende handler.
ReplaceCourseSectionNameNoUpdateLMSHandler
De ReplaceCourseSectionNameNoUpdateLMSHandler wordt gebruikt om updates te voorkomen van de naam van de groep/sectie in Brightspace® na de eerste aanmaak.
Implementatie
D2L.IM.IPSIS.Default.OrgUnits.CourseSections.Handlers.ReplaceCourseSectionNameNoUpdateLMSHandler®
Verwacht gedrag
De handler voert de volgende acties uit:
- Werkt het aanvraagobject bij om aan te geven dat de naam niet mag worden bijgewerkt.
- De verwerking gaat door naar de volgende handler.
Opmerking over de configuratie
Deze handler is een Manipulate-handler die moet worden geconfigureerd voordat de LMS Create- en LMS Save-handlers worden gebruikt.
ReplaceCourseSectionCreateLMSSectionHandler
Implementatie
D2L.IM.IPSIS.Default.OrgUnits.CourseSections.Handlers.ReplaceCourseSectionCreateLMSSectionHandler®
Verwacht gedrag
Deze handler wordt alleen uitgevoerd als de sectie nog niet bestaat in zowel de IM-tabellen als de tabellen van Brightspace®. De handler voert de volgende acties uit:
- Hiermee wordt de cursussectie gemaakt met behulp van de informatie die in de aanvraag is doorgegeven (waarbij een controlevermelding voor het maken van een sectie wordt geactiveerd).
- Als LMS Create succesvol is, genereert de handler een gemaakte controlevermelding voor de cursussectie, met verwijzing naar de id van de cursussectie.
- Als het maken niet lukt, stelt de handler ReplaceRequestStatus in op CreateFailed en wordt alle verwerking van de handler gestopt (retourneert False).
- Als alles succesvol is, stelt de handler ReplaceRequestStatus in op EntityCreated en gaat de verwerking door naar de volgende handler (retourneert True).
ReplaceCourseSectionCreateIMSectionHandler
Implementatie
D2L.IM.IPSIS.Default.OrgUnits.CourseSections.Handlers.ReplaceCourseSectionCreateIMSectionHandler®
Verwacht gedrag
De handler voert de volgende acties uit:
- Maakt de IPSIS-organisatie-eenheid als deze nog niet bestaat.
- Voegt de juiste IM-hiërarchie toe.
- Voor elke organisatie-eenheid waaraan deze is toegewezen, maakt de handler de IPSIS-toewijzing als deze nog niet bestaat. Als dit lukt, stelt de handler de ReplaceRequestStatus in op EntityCreated en wordt True geretourneerd. Als er een fout optreedt, wordt de ReplaceRequestStatus ingesteld op CreateFailed en retourneert de handler False.
- De verwerking gaat door naar de volgende handler.
ReplaceCourseSectionSaveLMSSectionHandler
De ReplaceCourseSectionSaveLMSSectionHandler slaat zo nodig wijzigingen op in alle toegewezen secties van Brightspace® (nul of meer).
Implementatie
D2L.IM.IPSIS.Default.OrgUnits.CourseSections.Handlers.ReplaceCourseSectionSaveLMSSectionHandler®
Verwacht gedrag
Als er voor elke toegewezen sectie updates moeten worden uitgevoerd, voert de handler de volgende acties uit:
- Werkt de sectie bij (waardoor een controlevermelding voor Sectie bijwerken wordt geactiveerd).
- Werkt de eigenschappen van de organisatie-eenheid bij in Brightspace®, maar verandert de bovenliggende onderdelen van de sectie niet.
- Als de LMS-update succesvol is, genereert de handler een bijgewerkte controlevermelding voor de cursussectie, met verwijzing naar de sectie-id van de cursus.
- Als niet alles lukt, stelt de handler ReplaceRequestStatus = CreateFailed in en worden alle bewerkingen van de handler gestopt (retourneert False).
- Als alles succesvol is, stelt de handler ReplaceRequestStatus in op EntityCreated en gaat de verwerking door naar de volgende handler (retourneert True).
ReplaceCourseSectionSaveIMHandler
Implementatie
D2L.IM.IPSIS.Default.OrgUnits.CourseSections.Handlers.ReplaceCourseSectionSaveIMHandler®
Verwacht gedrag
De handler voert de volgende acties uit:
- Slaat eventuele wijzigingen in de IPSIS-cursussectie en koppelingen op, indien nodig.
- Slaat alle wijzigingen in de IM-hiërarchie op.
ReplaceCourseSectionCreateLMSGroupHandler
De ReplaceCourseSectionCreateLMSGroupHandler wanneer een organisatie groepen wil maken in plaats van secties in Brightspace®.
Implementatie
D2L.IM.IPSIS.Default.OrgUnits.CourseSections.Handlers.ReplaceCourseSectionCreateLMSGroupHandler®
Verwacht gedrag
Deze handler wordt alleen uitgevoerd als de groep nog niet bestaat in zowel de IM-tabellen als de tabellen van Brightspace®. De handler voert de volgende acties uit:
- Haalt de waarde op in d2l.integration.IPSIS.GroupCategory. Als de waarde niet is ingesteld, genereert de handler een InvalidConfigurationVariableException.
- Als er geen groepscategorie bestaat die overeenkomt met de naam in d2l.integration.IPSIS.GroupCategory, maakt de handler een groepscategorie met een naam en beschrijving uit de configuratievariabele (waardoor een controlevermelding voor een groep maken wordt geactiveerd).
- Als het maken van een groepscategorie niet lukt, meldt de handler een uitzondering met een expliciete indicatie van het probleem en de sectie-ID.
- Maakt de cursusgroep met de bovenstaande groepscategorie aan de hand van de informatie die in de aanvraag wordt doorgegeven.
- Als het maken van LMS is geslaagd, genereert de handler een gemaakte controlevermelding voor de cursusgroep, met verwijzing naar de id van de cursusgroep.
- Als niet alles lukt, stelt de handler ReplaceRequestStatus = CreateFailed in en worden alle bewerkingen van de handler gestopt (retourneert False).
- Als alles succesvol is, stelt de handler ReplaceRequestStatus = EntityCreated in en gaat de verwerking verder naar de volgende handler (retourneert True).
Opmerking over de configuratie
Deze handler vervangt de ReplaceCourseSectionCreateLMSSectionHandler in de standaardlijst met plug-ins.
ReplaceCourseSectionSaveLMSGroupHandler
De ReplaceCourseSectionSaveLMSGroupHandler wordt gebruikt wanneer een organisatie groepen wil maken in plaats van secties in het educatief beheersysteem.
Implementatie
D2L.IM.IPSIS.Default.OrgUnits.CourseSections.Handlers.ReplaceCourseSectionSaveLMSGroupHandler®
Verwacht gedrag
Voor elke toegewezen groep in Brightspace® voert de handler de volgende acties uit als er updates moeten worden uitgevoerd:
- Werkt de groep bij (waardoor een controlevermelding wordt geactiveerd voor een updategroep) en werkt de eigenschappen van de OrgUnit bij in Brightspace®, maar verandert de bovenliggende onderdelen van de groep niet.
- Als de update van het educatieve beheersysteem succesvol is, genereert de handler een bijgewerkte controlevermelding voor de cursusgroep, met verwijzing naar de id van de cursusgroep.
- Als niet alles lukt, stelt de handler ReplaceRequestStatus = CreateFailed in en worden alle bewerkingen van de handler gestopt (retourneert False).
- Als alles succesvol is, stelt de handler ReplaceRequestStatus in op EntityCreated en gaat de verwerking door naar de volgende handler (retourneert True).
Opmerking over de configuratie
Deze handler vervangt de ReplaceCourseSectionSaveLMSSectionHandler in de standaardlijst met plug-ins.
ReplaceCourseSectionValidateLMSOrgUnitExistsHandler
De ReplaceCourseSectionValidateLMSOrgUnitExistsHandler controleert of de organisatie-eenheid waarmee de aanvraag overeenkomt, is verwijderd in Brightspace®.
Implementatie
D2L.IM.IPSIS.Default.OrgUnits.CourseSections.Handlers.ReplaceCourseSectionValidateLMSOrgUnitExistsHandler®
Verwacht gedrag
De handler voert de volgende taken uit:
- Probeert de huidige organisatie-eenheid op te halen.
- Als de huidige organisatie-eenheid niet bestaat (de aanvraag is een 'create', of de organisatie-eenheid is verwijderd uit Brightspace®), probeert de handler de ExternalOrgUnitInfo voor de aanvraag op te halen. Bij geldige ExternalOrgUnitInfo is dit geen 'create' en is de organisatie-eenheid verwijderd uit Brightspace®. In dat geval wordt er een UpdateOrgUnitFailedException gegenereerd. Deze uitzondering zorgt ervoor dat de LIS-service reageert met invaliddata. Dit werd beschouwd als de meest geschikte responscode voor deze situatie.
Foutgedrag
Als zich een probleem voordoet tijdens de verwerking, wordt er een uitzondering gegenereerd, samen met zoveel mogelijk gedetailleerde informatie.
Opmerking over de configuratie
Deze handler wordt na de Read-handlers geplaatst, gewoonlijk als een van de eerste Validate-handlers.
ReplaceCourseSectionBuildParentHierarchyRequiredHandler
De ReplaceCourseSectionBuildParentHierarchyRequiredHandler bouwt een bovenliggende editie en sjabloon op voor de sectie als er geen zijn doorgegeven in de aanvraag.
Implementatie
D2L.IM.IPSIS.Default.OrgUnits.CourseSections.Handlers.ReplaceCourseSectionBuildParentHierarchyRequiredHandler®
Verwacht gedrag
De handler voert de volgende acties uit:
- Controleert of er een bovenliggende editie is opgegeven in de aanvraag.
- Als dit niet het geval is, maakt de handler een bovenliggende editie en sjabloon, die beide dezelfde naam en code hebben als de sectie.
- Retourneert true.
Foutgedrag
Als er een probleem is met het maken van de sjabloon of de editie, wordt er een CreateOrgUnitFailedException gegenereerd.
Opmerking over de configuratie
Deze handler moet vóór Validate-handlers worden geplaatst, meestal direct na de Read-handler.