L'interface du gestionnaire IBulkFileRetrieverHandler est utilisée par BulkManager pour prendre en charge la récupération des fichiers globaux sur des serveurs distants.
La mise en œuvre de l'interface est D2L.IM.IPSIS.Bulk.Handlers.IBulkFileRetrieverHandler.
La liste de configuration suivante offre un point de départ pour toute mise en œuvre IPSIS :
IPSIS, Template – Bulk File Retriever
- BulkFileRetrieverSetLocalPathToD2LTempHandler (SortOrder = 10)
- BulkFileRetrieverUriHandler (SortOrder = 20)
BulkFileRetrieverSetLocalPathToD2LTempHandler
Définit le chemin d'accès local vers un répertoire unique dans le répertoire temporaire de l'instance à l'aide du nom de fichier d'origine de la requête.
Mise en œuvre
D2L.IM.IPSIS.Default.Bulk.Handlers.BulkFileRetrieverSetLocalPathToD2LTempHandler
Comportement prévu
Le gestionnaire définit le chemin d'enregistrement local à {répertoire temporaire d'instance D2L}\{répertoire unique généré}\{nom de fichier défini dans URL de fichier distant}.
Comportement en cas d'erreur
Si le chemin d'accès local n'existe pas, le gestionnaire génère une exception et insère un journal d'erreur dans la base de données.
Note de configuration
Étant donné que ce gestionnaire définit le chemin de téléchargement, il devrait précéder un gestionnaire de téléchargement (p. ex., BulkFileRetrieverUriHandler ou BulkFileRetrieverHttpsGetAcceptAllCertsHandler).
BulkFileRetrieverUriHandler
Ce gestionnaire télécharge les fichiers dont l'URI commence par http:, https:, ftp: et file:.
Mise en œuvre
D2L.IM.IPSIS.Default.Bulk.Handlers.BulkFileRetrieverUriHandler
Comportement prévu
Ce gestionnaire effectue les tâches suivantes :
- Actualise l'état de l'objet IBulkFileUrl pour le téléchargement.
- Définit le nom d'utilisateur et le mot de passe (le cas échéant) pour l'URI.
- Crée une connexion URI prenant en charge les protocoles ftp, http, https et file. Ce comportement suppose qu'aucune authentification n'est requise pour la connexion si aucune n'est transmise dans la requête. Si un nom d'utilisateur et un mot de passe sont fournis dans la requête (remplis par le gestionnaire BulkFileRetrieverRetrieveAuthenticationCredientialsHandler), le système utilise l'authentification Basic pour se connecter au point d'extrémité.
- Télécharge le fichier.
- Actualise l'état de l'objet IBulkFileUrl à « téléchargé ».
Comportement en cas d'erreur
- Si le chemin d'accès local n'existe pas, le gestionnaire génère une exception de chemin inexistant et insère un journal d'erreur dans la base de données de journalisation.
- Si une combinaison nom d'utilisateur/mot de passe non valide est reçue, le gestionnaire génère une exception d'authentification et insère un journal d'erreur dans la base de données de journalisation.
- Si l'adresse URL ne peut être atteinte, le gestionnaire génère une exception de format d'URI et insère un journal d'erreur dans la base de données de journalisation.
- Si une libération sur temporisation survient, le gestionnaire génère une exception de temporisation et insère un journal d'erreur dans la base de données de journalisation.
Notes de configuration
- Étant donné que le gestionnaire BulkFileRetrieverUriHandler télécharge les fichiers, il devrait être placé après tout gestionnaire de configuration des requêtes sortantes (p. ex., d'ajout de données d'identification, de définition du répertoire de téléchargement, etc.).
- Ce gestionnaire ne devrait pas être combiné à tout autre gestionnaire responsable du téléchargement de fichiers (BulkFileRetrieverHttpsGetAcceptAllCertsHandler).
BulkFileRetrieverHttpsGetAcceptAllCertsHandler
Ce gestionnaire télécharge des fichiers dont l'URI affiche un préfixe https, http, ftp et file. S'il utilise le protocole SSL, il ignore toutes les erreurs de certificat. Cette fonctionnalité est notamment utile dans le cas des certificats autosignés qui pourraient n'être utilisés qu'à l'interne ou que dans les environnements de développement.
Mise en œuvre
D2L.IM.IPSIS.Default.Bulk.Handlers.BulkFileRetrieverHttpsGetAcceptAllCertsHandler
Comportement prévu
Cette classe concrète met en œuvre le gestionnaire IBulkFileRetrieverHandler. Ce gestionnaire effectue les tâches suivantes :
- Reçoit une requête IBulkFileRetriever contenant un objet BulkFileUrl.
- Actualise l'état de l'objet IBulkFileUrl à « téléchargement ».
- Ce comportement suppose qu'aucune authentification n'est requise pour la connexion si aucune n'est transmise dans la requête.
- Ouvre une connexion https à l'adresse URL distante située dans l'objet IBulkFileUrl et exécute une requête GET.
- Télécharge le fichier et l'enregistre dans le chemin d'enregistrement local.
- Actualise l'état du fichier à « téléchargé ».
Comportement en cas d'erreur
- Si une combinaison nom d'utilisateur/mot de passe non valide est transmise, le gestionnaire génère une exception d'authentification et insère un journal d'erreur dans la base de données de journalisation.
- Si l'adresse URL ne peut être atteinte, le gestionnaire génère une exception d'authentification et insère un journal d'erreur dans la base de données de journalisation.
- Si une libération sur temporisation survient, le gestionnaire génère une exception de temporisation et insère un journal d'erreur dans la base de données de journalisation.
Notes de configuration
- Étant donné que ce gestionnaire télécharge les fichiers, il devrait être placé après tout gestionnaire de configuration des requêtes sortantes (p. ex., d'ajout de données d'identification, de définition du répertoire de téléchargement, etc.).
- Ce gestionnaire ne devrait pas être combiné à tout autre gestionnaire responsable du téléchargement de fichiers (BulkFileRetrieverHttpsGetAcceptAllCertsHandler).
BulkFileRetrieverConfigVariableDefinedDownloadPathHandler
Définit le chemin d'accès local vers un répertoire spécifié dans le Navigateur des variables de configuration à l'aide du nom de fichier d'origine de la requête.
Mise en œuvre
D2L.IM.IPSIS.Default.Bulk.Handlers.BulkFileRetrieverConfigVariableDefinedDownloadPathHandler
Comportement prévu
- Si la variable de configuration est réglée, le gestionnaire définit le chemin d'enregistrement local à {d2l.Integrations.IPSIS>LocalBulkFileDownloadPath}\{SystemId}.{TransactionId}\{nom de fichier défini dans URL de fichier distant}.
- L'ID de transaction est dépouillé de tout caractère non autorisé dans les chemins, ainsi que des barres obliques inverses (\).
- Si le chemin n'existe pas, le système tente de le créer en premier lieu.
Comportement en cas d'erreur
- Si la variable de configuration n'est pas définie, une exception est générée.
- Le système pourrait également générer des exceptions dans le cas où, par exemple, le lecteur indiqué dans la variable de configuration ne serait pas valide.
Note de configuration
Ce gestionnaire est le premier de la liste qui offre des alternatives pour la définition de l'emplacement de destination du fichier.
BulkFileRetrieverRetrieveAuthenticationCredientialsHandler
Ce gestionnaire définit le nom d'utilisateur et le mot de passe de la requête en fonction de l'adresse URL du fichier et de l'information dans le tableau des points d'extrémité.
Mise en œuvre
D2L.IM.IPSIS.Default.Bulk.Handlers.BulkFileRetrieverRetrieveAuthenticationCredientialsHandler
Comportement prévu
Ce gestionnaire effectue les tâches suivantes :
- Récupère une liste de points d'extrémité du type BulkFileDownload du tableau des points d'extrémité.
- Si l'adresse URL de fichier distant commence par l'un de ces points d'extrémité (p. ex., http://monsite.com/cookies/fun.xml commence par http://monsite.com), le gestionnaire récupère les données d'identification de cette entrée de point d'extrémité et les applique à la requête.
- Si l'adresse URL distante ne correspond à aucun point d'extrémité, le gestionnaire n'entreprend aucune action.
Limitations connues
En raison des contraintes de schéma, le système n'assure présentement la prise en charge que d'un seul point d'extrémité BulkFileDownload par système source.
Comportement en cas d'erreur
Si le gestionnaire trouve plus d'un point d'extrémité correspondant à l'adresse URL distante, il génère une exception BulkProcessingFailedException et un message d'erreur descriptif (incluant le nom du fichier défaillant).
Note de configuration
Ce gestionnaire devrait précéder tout autre gestionnaire responsable du téléchargement du fichier.