De plug-in-interface voor IReplaceOrgUnitHandler wordt door IPSIS-adapters gebruikt om de vervanging te ondersteunen voor bewerkingen die niet van de standaardtypen organisatie-eenheden zijn, zoals: Semesters, Afdelingen, Cursussjablonen, Cursusedities en Cursussecties. Voorbeelden zijn: Colleges, Campussen.
De interface-implementatie is D2L.IM.IPSIS.OrgUnits.OtherOrgUnits.Handlers.IReplaceOrgUnitHandler.
De configuratielijsten Sjabloon - Organisatie-eenheid,IPSIS bieden een startpunt voor elke IPSIS-implementatie.
De volgende lijst met handlers wordt als startpunt gebruikt:
- ReplaceOrgUnitReadHandler (sorteervolgorde = 10)
- ReplaceOrgUnitValidateHandler (sorteervolgorde = 20)
- ReplaceOrgUnitCreateLMSHandler (sorteervolgorde = 30)
- ReplaceOrgUnitCreateIMHandler (sorteervolgorde = 40)
- ReplaceOrgUnitSaveLMSHandler (sorteervolgorde = 50)
- ReplaceOrgUnitSaveIMHandler (sorteervolgorde = 60)
ReplaceOrgUnitReadHandler
De ReplaceOrgUnitReadHandler leest alle informatie met betrekking tot de organisatie-eenheid die bestaat in de LMS- of IM-tabellen van de database en die wordt gebruikt in andere handlers.
Implementatie
D2L.IM.IPSIS.Default.OrgUnits.OtherOrgUnits.Handlers.ReplaceOrgUnitReadHandler®
Verwacht gedrag
De handler voert de volgende taken uit:
- Probeert informatie over de organisatie-eenheid te lezen uit de IM-tabellen.
- Indien dergelijke informatie wordt gevonden, probeert de handler eventuele toewijzingen aan het educatief beheersysteem voor de organisatie-eenheid met het specifieke type organisatie-eenheid te lezen en wordt geprobeerd informatie over de organisatie-eenheid te lezen uit het LMS.
- De handler probeert informatie over aangegeven bovenliggende organisatie-eenheid te lezen uit de IM-tabellen.
- Als er geen informatie wordt gevonden, stelt de handler de standaard bovenliggende lijst van de organisatie in op het enige bovenliggende item.
- De verwerking gaat door naar de volgende handler (retourneert True).
Foutgedrag
Als zich een probleem voordoet tijdens de verwerking, wordt er een uitzondering gegenereerd, samen met zoveel mogelijk gedetailleerde informatie.
Opmerking over de configuratie
Een Read-handler moet plaatsvinden vóór Validate-handlers.
ReplaceOrgUnitValidateHandler
De ReplaceOrgUnitValidateHandler zorgt ervoor dat een geldige code en naam worden toegewezen aan de organisatie-eenheid.
Implementatie
D2L.IM.IPSIS.Default.OrgUnits.OtherOrgUnits.Handlers.ReplaceOrgUnitValidateHandler®
Verwacht gedrag
De handler voert de volgende taken uit:
- De Validate-handler controleert of er zowel een code als een naam voor de aanvraag zijn opgegeven. Deze waarden moeten tekenreeksen zijn met een lengte groter dan 0.
- Als Code of Naam null of leeg is, genereert de handler een ArgumentNullException en worden alle bewerkingen van de handler gestopt.
- De validatiehandler controleert ook of de aanvraag niet probeert het type (bijvoorbeeld een college wijzigen in een afdeling) van een bestaande organisatie-eenheid te wijzigen.
- Als de aanvraag probeert het type te wijzigen, wordt een InvalidOperationException gegenereerd en worden alle bewerkingen van de handler gestopt.
- Als alles succesvol is, gaat de verwerking verder naar de volgende handler (retourneert True).
Foutgedrag
Als zich een probleem voordoet tijdens de verwerking, wordt er een uitzondering gegenereerd, samen met zoveel mogelijk gedetailleerde informatie.
Opmerking over de configuratie
Validate-handlers moeten worden geconfigureerd vóór de Create-handler.
ReplaceOrgUnitCreateLMSHandler
De ReplaceOrgUnitCreateLMSHandler maakt de organisatie-eenheid in Brightspace®.
Implementatie
D2L.IM.IPSIS.Default.OrgUnits.OtherOrgUnits.Handlers.ReplaceOrgUnitCreateLMSHandler®
Verwacht gedrag
Deze handler wordt alleen uitgevoerd als er geen organisatie-eenheden van Brightspace® aan de aanvraag zijn gekoppeld. De handler voert de volgende taken uit:
- Hiermee wordt de organisatie-eenheid gemaakt met behulp van de informatie die in de aanvraag wordt doorgegeven (waarbij automatische registratie in het controlelogboek " {OrgUnitType} maken" wordt geactiveerd).
- Als alles succesvol is, stelt de handler de status van het resultaat in op EntityCreated.
- Als er een fout optreedt, stelt de handler de status van het resultaat in op CreateFailed.
- De verwerking gaat door naar de volgende handler (retourneert True).
Foutgedrag
Als zich een probleem voordoet tijdens de verwerking, wordt er een uitzondering gegenereerd, samen met zoveel mogelijk gedetailleerde informatie.
Opmerkingen over de configuratie
- Deze handler wordt na Validate-handlers worden geplaatst.
- De Create LMS-handler moet vóór de IM-handler maken worden uitgevoerd.
ReplaceOrgUnitCreateIMHandler
De ReplaceOrgUnitCreateIMHandler maakt de entiteit in de IM-tabellen en een toewijzing als er een is gedefinieerd.
Implementatie
D2L.IM.IPSIS.Default.OrgUnits.OtherOrgUnits.Handlers.ReplaceOrgUnitCreateIMHandler®
Verwacht gedrag
Deze handler wordt alleen uitgevoerd als er geen overeenkomende entiteit in de IM-tabellen is opgenomen. De handler voert de volgende taken uit:
- Hiermee wordt de organisatie-eenheid op het IM-platform gemaakt.
- Als er een LMS OrgUnit aan de aanvraag is gekoppeld, maakt de handler de toewijzing van de OrgUnit van het IM-platform aan de LMS OrgUnit.
- Als alles succesvol is, stelt de handler de status van het resultaat in op EntityCreated.
- De verwerking gaat door naar de volgende handler (retourneert True).
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 CreateLMS-handlers geplaatst.
ReplaceOrgUnitSaveLMSHandler
De ReplaceOrgUnitSaveLMSHandler slaat alle wijzigingen op die zijn aangebracht in de organisatie-eenheid van het educatief beheersysteem.
Implementatie
D2L.IM.IPSIS.Default.OrgUnits.OtherOrgUnits.Handlers.ReplaceOrgUnitSaveLMSHandler®
Verwacht gedrag
Deze handler wordt alleen uitgevoerd als er wijzigingen zijn die moeten worden opgeslagen voor de organisatie-eenheid van het educatief beheersysteem. De handler voert de volgende taken uit:
- Hiermee wordt de organisatie-eenheid bijgewerkt (waarmee automatische registratie in het controlelogboek wordt geactiveerd).
- Als de aanvraag een update is en ten minste één veld is gewijzigd, stelt u de status van het resultaat in op EntityUpdated.
- De verwerking gaat door naar de volgende handler (retourneert True).
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 Create-handlers geplaatst.
ReplaceOrgUnitSaveIMHandler
De ReplaceOrgUnitSaveIMHandler slaat alle wijzigingen op die zijn aangebracht in IM-entiteit en -toewijzingen.
Implementatie
D2L.IM.IPSIS.Default.OrgUnits.OtherOrgUnits.Handlers.ReplaceOrgUnitSaveIMHandler®
Verwacht gedrag
Deze handler wordt alleen uitgevoerd als er wijzigingen zijn die moeten worden opgeslagen voor de entiteit of hiërarchie in de IM-tabellen. De handler voert de volgende taken uit:
- Werkt de IM-entiteit bij als er wijzigingen in behandeling zijn.
- Werkt de hiërarchische relaties van de IM-entiteit bij als bovenliggende onderdelen zijn toegevoegd of verwijderd.
- De verwerking gaat door naar de volgende handler (retourneert True).
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 zou na elke SaveLMS-handler worden geplaatst.
ReplaceOrgUnitMapByCodeHandler
De ReplaceOrgUnitMapByCodeHandler koppelt een organisatie-eenheid aan een bestaande organisatie van het educatief beheersysteem door te matchen op code en type van organisatie-eenheid.
Implementatie
D2L.IM.IPSIS.Default.OrgUnits.OtherOrgUnits.Handlers.ReplaceOrgUnitMapByCodeHandler®
Verwacht gedrag
Deze handler mag alleen worden gebruikt als de code van de organisatie-eenheid binnen een organisatie naar verwachting uniek is.
De handler voert de volgende taken uit:
- Als er geen toewijzing van organisatie-eenheden is, probeert de handler een organisatie-eenheid te vinden in Brightspace® die overeenkomt met Code van organisatie-eenheid en Type organisatie-eenheid
- Als er een overeenkomst wordt gevonden, werkt de handler het aanvraagobject bij zodat dit de overeenkomende orgUnit bevat.
- Als er geen overeenkomsten worden gevonden, doet de handler niets.
- Als er meerdere overeenkomsten worden gevonden, genereert de handler een MultipleOrgUnitsFoundException
- De verwerking gaat door naar de volgende handler.
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 doorgaans tussen de Read-handlers en de Create-handlers geplaatst. In dat geval wordt deze handler alleen uitgevoerd als de Read-handlers geen toegewezen organisatie-eenheid kunnen vinden.
ReplaceOrgUnitNameNoUpdateLMSHandler
Implementatie
D2L.IM.IPSIS.Default.OrgUnits.OtherOrgUnits.Handlers.ReplaceOrgUnitNoUpdateLMSHandler®
Verwacht gedrag
- Werkt het aanvraagobject bij om aan te geven dat de naam niet mag worden bijgewerkt.
- De verwerking gaat door naar de volgende handler (retourneert True).
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 geplaatst voordat LMS Save-handlers worden uitgevoerd.
ReplaceOrgUnitValidateLMSOrgUnitExistsHandler
De ReplaceSemesterValidateLMSOrgUnitExistsHandler controleert of de organisatie-eenheid waarmee de aanvraag overeenkomt, is verwijderd uit Brightspace®.
Implementatie
D2L.IM.IPSIS.Default.OrgUnits.OtherOrgUnits.Handlers.ReplaceOrgUnitValidateLMSOrgUnitExistsHandler®
Verwacht gedrag
De handler voert de volgende taken uit:
- De handler 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®):
- Probeer de ExternalOrgUnitInfo op te halen voor de aanvraag
- Als de ExternalOrgUnitInfo geldig is, is dit geen 'create' en is de organisatie-eenheid verwijderd uit het LMS. Genereer als gevolg daarvan een UpdateOrgUnitFailedException.
- 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.