De plug-in-interface voor IReplaceCourseOfferingHandler wordt door IPSIS-adapters gebruikt om het vervangen van cursusedities te ondersteunen.
De interface-implementatie is D2L.IM.IPSIS.OrgUnits.CourseOfferings.Handlers.IReplaceCourseOfferingHandler.
De volgende configuratielijsten voor de ReplaceCourseOfferingHandler-interface worden bij het product geleverd. Ze worden vermeld samen met het uitbreidingspunt waarvoor ze zijn bedoeld.
IPSIS, sjabloon - Cursuseditie
- ReplaceCourseOfferingReadHandler (sorteervolgorde = 10)
- ReplaceCourseOfferingValidateHandler (sorteervolgorde = 20)
- ReplaceCourseOfferingDisallowParentChangesIfChildrenExistHandler (sorteervolgorde = 30)
- ReplaceCourseOfferingTemplateUpdateDepartmentsLMSHandler (sorteervolgorde = 40)
- ReplaceCourseOfferingCreateLMSHandler (sorteervolgorde = 50)
- ReplaceCourseOfferingCreateIMHandler (sorteervolgorde = 60)
- ReplaceCourseOfferingSaveLMSHandler (sorteervolgorde = 70)
- ReplaceCourseOfferingSaveIMHandler (sorteervolgorde = 80)
ReplaceCourseOfferingCopyCourseHandler
De ReplaceCourseOfferingCopyCourseHandler configureert het systeem om de inhoud van een cursus automatisch van een broncursus naar een nieuwe cursuseditie te kopiëren met behulp van het IPSIS-platform.
Implementatie
D2l.IM.IPSIS.Default.OrgUnits.CourseOfferings.Handlers.ReplaceCourseOfferingCopyCourseHandler.
Verwacht gedrag
De handler voert de volgende taken uit door te zoeken naar de organisatie-eenheid waaruit inhoud moet worden gekopieerd:
- Als het impliciet kopiëren van de cursus is ingeschakeld via de gebruikersinterface, wordt geprobeerd de organisatie-eenheid te vinden waaruit moet worden gekopieerd vanuit een bovenliggende sjabloon of een cursuseditie van hetzelfde niveau met een code voor de organisatie-eenheid die overeenkomt met de sjabloon Code organisatie-eenheid.
- Als expliciet kopiëren van de cursus wordt gebruikt, wordt gezocht naar de extensievelden CopyCourseSourceExternalId, CopyCourseParent, CoupCourseSourceOrgUnitId of CopyCourseSourceOrgUnitCode.
Foutgedrag
Als zich een probleem voordoet tijdens de verwerking, wordt er een uitzondering gegenereerd, samen met zoveel mogelijk gedetailleerde informatie.
Opmerking over de configuratie
Als u de lijst ReplaceCourseOfferingHandler handmatig configureert, plaatst u deze handler als laatste.
ReplaceCourseOfferingReadHandler
De ReplaceCourseOfferingReadHandler leest alle informatie met betrekking tot de cursuseditie die bestaat in Brightspace® of IM-tabellen van de database, die gebruikt moet worden in andere handlers.
Implementatie
D2L.IM.IPSIS.Default.OrgUnits.CourseOfferings.Handlers.ReplaceCourseOfferingReadHandler®
Verwacht gedrag
De handler voert de volgende taken uit:
- Probeert informatie over de cursuseditie te lezen uit de IM-tabellen.
- Indien dergelijke informatie wordt gevonden, probeert de handler om de toewijzingen aan Brightspace® voor de cursuseditie te lezen.
- Indien gevonden, probeert de handler om de cursuseditie uit Brightspace® te lezen.
- Controleert of er bovenliggende onderdelen (semester, sjabloon of afdeling) zijn opgegeven in de aanvraag.
- Indien dergelijke onderdelen zijn opgegeven, probeert de handler toewijzingen en gegevens over de organisatie-eenheid op te halen voor elk opgegeven bovenliggend onderdeel, waarbij deze in request.ParentOrgUnits worden geplaatst.
- Als een bovenliggende SIS-id wordt toegewezen aan meerdere D2L®-organisatie-eenheden, wordt alleen het eerste semester of de eerste sjabloon gebruikt voor elke SIS-id.
- Als een bovenliggend onderdeel is opgegeven dat echter niet in de database voorkomt, wordt door de onderliggende gegevensprovider een OrgUnitMappingNotFoundException gegenereerd, die wordt afgevangen en geregistreerd.
- 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.
ReplaceCourseOfferingValidateHandler
Deze handler zorgt ervoor dat een geldige code en naam aan de cursuseditie worden toegewezen en dat er een geldige sjabloon bestaat.
Implementatie
D2L.IM.IPSIS.Default.OrgUnits.CourseOfferings.Handlers.ReplaceCourseOfferingValidateHandler®
Verwacht gedrag
De handler voert de volgende taken uit:
- 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 de code of de naam null of leeg is, retourneert de handler een ArgumentNullException en stopt de verdere verwerking van de handler.
- Er moet ten minste één bovenliggende sjabloon aanwezig zijn in request.ParentOrgUnits. Als er geen bovenliggende sjablonen worden gevonden, wordt een ParentNotFoundException geretourneerd en stopt de verdere verwerking van de handler.
- Als alles succesvol is, gaat de verwerking verder naar de volgende handler (retourneert True).
ReplaceCourseOfferingDisallowParentChangesIfChildrenExistHandler
Deze handler kan worden gebruikt om te voorkomen dat een bovenliggend sjabloon dat is toegevoegd door IPSIS, wordt verwijderd of omgewisseld voor een editie die al onderliggende elementen heeft. Bij afwezigheid van deze handler kunnen bovenliggende onderdelen die zijn toegevoegd door IPSIS, vrij worden bijgewerkt, wat de hiërarchiegegevens voor bovenliggende elementen en afstammelingen van de huidige editie zou kunnen veranderen.
Implementatie
D2L.IM.IPSIS.Default.OrgUnits.CourseOfferings.Handlers.ReplaceCourseOfferingParentDepartmentValidateHandler®
Verwacht gedrag
- Als de editie al bestaat (vervangen in plaats van maken):
- Als een bovenliggende organisatie-eenheid die is toegevoegd door IPSIS, wordt verwijderd of vervangen, wordt een uitzondering gegenereerd om te voorkomen dat andere handlers worden uitgevoerd.
Opmerking: Handmatig toegevoegde organisatie-eenheden worden altijd verwijderd met of zonder deze handler
Opmerkingen over de configuratie
- Deze handler moet zo worden geconfigureerd dat deze na de Validate-handlers wordt uitgevoerd.
- Deze handler moet worden geconfigureerd om te worden uitgevoerd vóór de Create-handlers.
ReplaceCourseOfferingTemplateUpdateDepartmentsLMSHandler
Deze handler werkt de cursussjabloon bij die het bovenliggende niveau vormt van de cursus zodat de bovenliggende niveaus van de afdeling worden opgegeven in de cursuseditie.
Implementatie
D2L.IM.IPSIS.Default.OrgUnits.CourseOfferings.Handlers.ReplaceCourseOfferingTemplateUpdateDepartmentsLMSHandler®
Verwacht gedrag
De handler voert de volgende taken uit:
- Leest de afdelingen die zijn gekoppeld aan de sjabloon die het bovenliggende niveau vormt van de huidige cursuseditie.
- Als een afdeling is opgegeven in de editie die momenteel niet is toegewezen als bovenliggend onderdeel van de cursussjabloon, werkt de handler deze dienovereenkomstig bij.
- 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
Op elk moment na de Read-handlers.
ReplaceCourseOfferingCreateLMSHandler
Deze handler maakt cursusedities in Brightspace®.
Implementatie
D2L.IM.IPSIS.Default.OrgUnits.CourseOfferings.Handlers.ReplaceCourseOfferingCreateLMSHandler®
Verwacht gedrag
Deze handler wordt alleen uitgevoerd als er geen cursusedities uit Brightspace® aan de aanvraag zijn gekoppeld in zowel de IM- als de LMS-tabellen. De handler voert de volgende taken uit:
- Hiermee wordt de cursuseditie gemaakt met behulp van de informatie die in de aanvraag is doorgegeven (waardoor automatische registratie in het controlelogboek wordt geactiveerd).
- Als het maken is geslaagd, stelt de handler de ReplaceRequestStatus in op EntityCreated en gaat de verwerking verder naar de volgende handler.
- Als er een fout optreedt, stelt de handler de ReplaceRequestStatus in op CreateFailed en retourneert False.
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 eventuele Validate-handlers geplaatst.
- De Create LMS-handler moet vóór de IM-handler maken worden uitgevoerd.
ReplaceCourseOfferingCreateIMHandler
Deze handler maakt de entiteit in de IM-tabellen en een toewijzing als er een is gedefinieerd.
Implementatie
D2L.IM.IPSIS.Default.OrgUnits.CourseOfferings.Handlers.ReplaceCourseOfferingCreateIMHandler®
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:
- Maakt de cursuseditie in het IM-platform.
- Maakt de IM-hiërarchie.
- Als er een organisatie-eenheid aan de aanvraag is gekoppeld, maakt de handler de toewijzing van de cursuseditie van het IM-platform aan de cursuseditie van Brightspace®.
- Als alles succesvol is, stelt de handler ReplaceRequestStatus = EntityCreated in.
- 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
Plaats deze handler na CreateLMS-handlers.
ReplaceCourseOfferingSaveLMSHandler
De ReplaceCourseOfferingSaveLMSHandler slaat alle wijzigingen op die zijn aangebracht in de cursuseditie in Brightspace®.
Implementatie
D2L.IM.IPSIS.Default.OrgUnits.CourseOfferings.Handlers.ReplaceCourseOfferingSaveLMSHandler®
Verwacht gedrag
Deze handler wordt alleen uitgevoerd als er wijzigingen moeten worden opgeslagen voor de cursuseditie in Brightspace®. De handler voert de volgende taken uit:
- Verwijdert alle afdelingen uit de ParentOrgUnits-aanvraag (deze worden toegevoegd als bovenliggende onderdelen van de bovenliggende sjabloon van de editie)
- Werkt de cursuseditie bij (waarbij automatische registratie in het controlelogboek wordt geactiveerd).
- Als alles succesvol is, als ReplaceRequestStatus != EntityCreated, stelt de handler ReplaceRequestStatus = EntityUpdated in.
- 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
Plaats deze handler na een Create-handler.
ReplaceCourseOfferingSaveIMHandler
De ReplaceCourseOfferingSaveIMHandler slaat alle wijzigingen op die in de cursuseditie zijn aangebracht.
Implementatie
D2L.IM.IPSIS.Default.OrgUnits.CourseOfferings.Handlers.ReplaceCourseOfferingSaveLMSHandler®
Verwacht gedrag
Deze handler wordt alleen uitgevoerd als er wijzigingen zijn die voor de cursuseditie moeten worden opgeslagen. De handler voert de volgende taken uit:
- Verwijdert alle afdelingen uit de bovenliggende organisatie-eenheden van de aanvraag (deze worden toegevoegd als bovenliggende sjabloon van de editie).
- Werkt de cursuseditie bij (waarbij automatische registratie in het controlelogboek wordt geactiveerd).
- Als alles succesvol is, als ReplaceRequestStatus != EntityCreated, stelt de handler ReplaceRequestStatus = EntityUpdated in.
- 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
Plaats deze handler na een Create-handler.
ReplaceCourseOfferingSaveIMHandler
De save-handler slaat alle wijzigingen op die zijn aangebracht in IM-entiteit en toewijzingen. Dit omvat het bijwerken van de hiërarchiegegevens en het doorgeven van wijzigingen aan alle bovenliggende elementen en afstammelingen van de gegeven editie.
Implementatie
D2L.IM.IPSIS.Default.OrgUnits.CourseOfferings.Handlers.ReplaceCourseOfferingSaveIMHandler®
Verwacht gedrag
Deze handler wordt alleen uitgevoerd als er wijzigingen zijn die moeten worden opgeslagen voor de entiteit of toewijzingen in de IM-tabellen. De handler voert de volgende taken uit:
- Werkt de IM-entiteit bij.
- Werkt de IM-hiërarchie bij en werkt relatiegegevens bij voor alle betrokken boven-/onderliggende onderdelen.
- Werkt de toewijzingen van IM-entiteiten bij.
- Als alles succesvol is, wordt ReplaceRequestStatus = EntityUpdated ingesteld.
- 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
Plaats deze handler na een SaveLMS-handler.
ReplaceCourseOfferingNameNoUpdateLMSHandler
De ReplaceCourseOfferingNameNoUpdateLMSHandler wordt gebruikt als een organisatie niet wil dat de naam van de cursuseditie wordt bijgewerkt nadat deze is gemaakt. Deze handler is nodig als een organisatie gebruikers toestaat om cursusnamen bij te werken via Brightspace®.
Implementatie
D2L.IM.IPSIS.Default.OrgUnits.CourseOfferings.Handlers.ReplaceCourseOfferingNameNoUpdateLMSHandler®
Verwacht gedrag
De handler voert de volgende taken uit:
- Werkt het aanvraagobject bij om aan te geven dat de naam niet mag worden bijgewerkt.
- 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
Van deze handler wordt verwacht dat deze na de Read-handlers wordt uitgevoerd, maar vóór de Create-handlers.
ReplaceCourseOfferingStatusNoUpdateLMSHandler
Deze handler wordt gebruikt wanneer een organisatie niet wil dat de status wordt bijgewerkt na de eerste aanmaak.
Implementatie
D2L.IM.IPSIS.Default.OrgUnits.CourseOfferings.Handlers.ReplaceCourseOfferingStatusNoUpdateLMSHandler®
Verwacht gedrag
De handler voert de volgende taken uit:
- Werkt het aanvraagobject bij om aan te geven dat de status niet mag worden bijgewerkt.
- 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
Deze handler wordt naar verwachting na de Read-handlers uitgevoerd, maar vóór de Create-handlers.
ReplaceCourseOfferingDatenNoUpdateLMSHandler
De ReplaceCourseOfferingDatesNoUpdateLMSHandler wordt gebruikt wanneer een organisatie niet wil dat data worden bijgewerkt na de eerste aanmaak.
Implementatie
D2L.IM.IPSIS.Default.OrgUnits.CourseOfferings.Handlers.ReplaceCourseOfferingDatesNoUpdateLMSHandler®
Verwacht gedrag
De handler voert de volgende taken uit:
- Hiermee wordt het aanvraagobject bijgewerkt om aan te geven dat de start- en einddatum niet mogen worden bijgewerkt.
- 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
Van deze handler wordt verwacht dat deze na de read-handlers wordt uitgevoerd, maar vóór de create-handler.
ReplaceCourseOfferingCodeNoUpdateLMSHandler
De ReplaceCourseOfferingCodeNoUpdateLMSHandler wordt gebruikt als een organisatie niet wil dat de code van de cursus wordt bijgewerkt nadat deze voor het eerst is gemaakt. Deze handler is nodig als een instelling gebruikers toestaat om cursuscodes bij te werken via Brightspace®.
Implementatie
D2L.IM.IPSIS.Default.OrgUnits.CourseOfferings.Handlers.ReplaceCourseOfferingCodeNoUpdateLMSHandler®
Verwacht gedrag
De handler voert de volgende taken uit:
- Hiermee wordt het aanvraagobject bijgewerkt om aan te geven dat de code niet mag worden bijgewerkt.
- 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
Deze handler wordt naar verwachting na de Read-handlers uitgevoerd, maar vóór de Create-handlers.
ReplaceCourseOfferingTemplateUpdateDepartmentsLMSHandler
De ReplaceCourseOfferingTemplateUpdateDepartmentsLMSHandler werkt de cursussjabloon bij die het bovenliggende onderdeel van de editie is, zodat de bovenliggende afdelingen worden gespecificeerd in de editieaanvraag.
Implementatie
D2L.IM.IPSIS.Default.OrgUnits.CourseOfferings.Handlers.ReplaceCourseOfferingTemplateUpdateDepartmentsLMSHandler®
Verwacht gedrag
- Lees de afdelingen (uit Brightspace®) die zijn gekoppeld aan de sjabloon die het bovenliggende onderdeel van de huidige cursuseditie is.
- Als in de editie een afdeling is opgegeven die momenteel niet is toegewezen als bovenliggend onderdeel van de cursussjabloon, werkt u de editie dienovereenkomstig bij.
- 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
Deze handler kan op elk moment na de Read-handlers worden gebruikt.
ReplaceCourseOfferingValidateLMSOrgUnitExistsHandler
Deze handler controleert of de organisatie-eenheid waarmee de aanvraag overeenkomt, is verwijderd in Brightspace®.
Implementatie
D2L.IM.IPSIS.Default.OrgUnits.CourseOfferings.Handlers.ReplaceCourseOfferingValidateLMSOrgUnitExistsHandler®
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 aanmaakbewerking of de organisatie-eenheid is verwijderd uit Brightspace®), probeer dan de info over de externe organisatie-eenheid voor de aanvraag op te halen.
- Als de info over de externe organisatie-eenheid geldig is, vormt dit geen aanmaakbewerking en is de organisatie-eenheid verwijderd uit Brightspace®. Er wordt een updateOrgUnitFailedException gemeld.
- 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.