De plug-in-interface voor IBulkRequestDataHandler wordt door BulkManager gebruikt om het produceren van een requestBulkDataExchange-aanvraag te ondersteunen.
De interface-implementatie is D2L.IM.IPSIS.Bulk.Handlers.IBulkRequestDataHandler.
De volgende configuratielijst biedt een startpunt voor elke LIS-implementatie:
Sjabloon - Bulkaanvraag (LIS)
- D2L.IM.IPSIS.LIS.BDEMS.Default.RequestBulkDataDefaultJobIdHandler (sorteervolgorde = 10)
- D2L.IM.IPSIS.LIS.BDEMS.Default.RequestBulkDataExchangeHandler (sorteervolgorde = 20)
RequestBulkDataExchangeHandler
Implementatie
D2L.IM.IPSIS.LIS.BDEMS.Default.RequestBulkDataExchangeHandler®
Verwacht gedrag
De handler voert de volgende taken uit:
- Valideert het eindpunt en stelt de client in.
- Controleert de BulkEntityTypeFilters op de inkomende aanvraag en voegt voor elk van deze filters een FilterRuleType toe aan de uitgaande aanvraag. Als een van de EntityTypes niet overeenkomt met het Filtertype vocabulaire voor bulk (zie de BDEMS-specificatie voor de vocabulairedefinitie), genereert de handler een KeyNotFoundException.
- Valideert dat het opslagpunt (savepoint) de juiste notatie heeft, zoals gedefinieerd door de specificatie. Alle gepasseerde eindpunten moeten identiek zijn en de notatie "YYYY-MM-DDTHH:MM:SS.NNN" hebben. T is de letter T en NNN is de waarde voor de milliseconden. Als een van deze voorwaarden mislukt, genereert de handler een InvalidRequestDataException.
- Voegt een FilterRuleType toe aan de uitgaande aanvraag voor het savepoint.
- Verzendt de requestBulkDataExchange-aanvraag via de client.
- Onderzoekt de respons.
- Als de respons terug succesvol is, zet de handler het bronsysteem in BulkMode (als dat nog niet was gebeurd) en retourneert True.
- Als de respons een fout is, haalt de handler het bronsysteem uit de BulkMode, werkt de status van de taak bij naar Error, registreert de fout en retourneert False.
RequestBulkDataDefaultJobIdHandler
Deze handler voegt extra informatie toe aan IMJobId, die later wordt gebruikt om MessageId in te stellen, bulkberichten gemakkelijker te traceren en problemen op te lossen.
Implementatie
D2L.IM.IPSIS.LIS.BDEMS.Default.RequestBulkDataDefaultJobIdHandler®
Verwacht gedrag
Als de bulktaak een IMJobId heeft, voegt de handler de SIS-naam voor het bronsysteem samen aan het begin van de IM-taak-id (voorvoegen).
Opmerking over de configuratie
Deze handler moet worden geconfigureerd vóór RequestBulkDataExchangeHandler.
RequestBulkDataTruncateJobIdHandler
PeopleSoft verwerkt geen bulkbericht-id's met een lengte van meer dan 20 tekens. Deze handler kapt IMJobId af, die later wordt gebruikt om MessageId in te stellen. Zo wordt ervoor gezorgd dat de waarde zo uniek mogelijk is en binnen een limiet van 20 tekens blijft.
Implementatie
D2L.IM.IPSIS.LIS.BDEMS.Default.RequestBulkDataTruncateJobIdHandler®
Verwacht gedrag
Als de bulktaak een IMJobId heeft, verwijdert de handler de koppeltekens uit de IMJobId en wordt IMJobId afgekapt tot 20 tekens.
Opmerkingen over de configuratie
- Deze handler moet worden geconfigureerd vóór RequestBulkDataExchangeHandler.
- Deze handler mag alleen worden gebruikt als tijdelijke oplossing voor de PeopleSoft-bug die een beperking van maximaal 20 tekens oplegt.