Réinitialisation de la configuration¶
La réinitialisation de la configuration n’est possible que dans la phase de l’assistant, et elle peut être effectuée en appelant la procédure PUBLIC.RESET_CONFIGURATION()
. Cette procédure réinitialise toutes les conditions préalables comme non remplies, supprime la configuration précédemment sauvegardée et règle le statut du connecteur sur INSTALLED
. Elle peut être utilisée s’il est nécessaire de reconfigurer le connecteur (c’est-à-dire de repasser par l’étape Conditions préalables, Configurations de connexion, ou Configuration du connecteur). Les connecteurs ne peuvent être reconfigurés que si vous n’avez pas terminé l’étape Finaliser la configuration. La reconfiguration des connecteurs peut être personnalisée en utilisant SQL ou ResetConfigurationHandlerBuilder
.
Seuls les utilisateurs auxquels le rôle d’application ADMIN
a été attribué peuvent appeler la procédure PUBLIC.RESET_CONFIGURATION()
.
La réinitialisation de la configuration comprend les phases configurables suivantes, qui n’ont par défaut aucun effet :
Validation du statut
Validation de l’état
Rappel interne
Rappel de SDK
Mise à jour du statut
Exigences¶
La réinitialisation de la configuration nécessite l’exécution des fichiers SQL suivants lors de l’installation de l’application native :
core.sql
configuration/app_config.sql
configuration/prerequisites.sql
configuration/connector_configuration.sql
configuration/connection_configuration.sql
configuration/reset_configuration.sql
Validation du statut¶
Pour réinitialiser la configuration, le connecteur doit être dans le statut CONFIGURING
. Le statut de la configuration doit être égal à l’un des éléments suivants : INSTALLED
, PREREQUISITES_DONE
, CONFIGURED
ou CONNECTED
. Pour le diagramme complet des transitions de statut, voir Débit du connecteur.
La validation ne peut pas être écrasée en utilisant ResetConfigurationHandlerBuilder
ou en écrasant une procédure stockée. Toutefois, il est possible d’implémenter un gestionnaire (handler) personnalisé, qui n’aura pas ce type de validation.
Validation de l’état¶
La phase de validation de l’état est personnalisable et, par défaut, exécute la procédure PUBLIC.RESET_CONFIGURATION_VALIDATE()
, qui renvoie 'response_code': 'OK'
. Cette procédure peut être personnalisée en remplaçant la procédure utilisant SQL ou en implémentant l’interface ResetConfigurationValidator
.
Rappel interne¶
La phase de rappel interne est personnalisable et, par défaut, exécute la procédure PUBLIC.RESET_CONFIGURATION_INTERNAL()
, qui renvoie 'response_code': 'OK'
. Cette procédure permet d’exécuter la logique personnalisée requise lors de la réinitialisation de la configuration. Par exemple, la suppression d’une configuration personnalisée. Cette procédure peut être personnalisée en remplaçant la procédure utilisant SQL ou en implémentant l’interface ResetConfigurationCallback
.
Rappel de SDK¶
SDK est utilisé pour mettre à jour les composants contrôlés par SDK. Cette étape se compose des processus suivants, qui sont exécutés en une seule transaction :
Définir l’ensemble des conditions préalables comme non remplies
Supprimer la configuration du connecteur
Supprimer la configuration des connexions
Définir l’ensemble des conditions préalables comme non remplies¶
Au cours de cette étape, la valeur de la colonne IS_COMPLETED
est définie sur Faux pour tous les enregistrements de la table interne PREREQUISITES
.
Supprimer la configuration du connecteur¶
Au cours de cette étape, connector_configuration
est supprimé de la table interne APP_CONFIG
.
Supprimer la configuration du connecteur¶
Au cours de cette étape, connection_configuration
est supprimé de la table interne APP_CONFIG
.
Le rappel SDK ne peut pas être écrasé en utilisant ResetConfigurationHandlerBuilder
ou en écrasant la procédure stockée. Il est possible d’implémenter un gestionnaire personnalisé, qui n’aura pas ce rappel.
Note
La vue PUBLIC.CONNECTOR_CONFIGURATION
renvoie la configuration actuelle de la table interne APP_CONFIG
. La vue PUBLIC.PREREQUISITES
renvoie les conditions préalables de la table interne PREREQUISITES
. Les deux vues sont disponibles pour les rôles d’application ADMIN
et VIEWER
.
Mise à jour du statut¶
Une fois terminée, cette étape définit le statut interne du connecteur :
{
"status": "CONFIGURING",
"configurationStatus": "INSTALLED"
}
Réponse¶
Réponse aboutie¶
Si la procédure s’achève avec succès, elle renvoie un code de réponse OK
comme indiqué ci-dessous :
{
"response_code": "OK"
}
Erreur de réponse¶
En cas d’erreur, la réponse suivante est renvoyée :
{
"response_code": "<ERROR_CODE>",
"message": "<error message>"
}
Les codes d’erreur possibles sont les suivants :
INVALID_CONNECTOR_STATUS
- Statut du connecteur non valide. Statut attendu :[CONFIGURING]
INVALID_CONNECTOR_CONFIGURATION_STATUS
- Statut du connecteur non valide. Statuts attendus :[INSTALLED, PREREQUISITES_DONE, CONFIGURED, CONNECTED]
.INTERNAL_ERROR
- Quelque chose s’est mal passé en interne, le message doit être descriptif.PROCEDURE_NOT_FOUND
- La procédure appelée n’existe pas.UNKNOWN_SQL_ERROR
- Cette erreur se produit lorsque quelque chose d’inattendu se produit lors de l’appel de procédures internes.INVALID_RESPONSE
- Cette erreur se produit lorsque la réponse reçue de la procédure interne ne contient pas deresponse_code
ou qu’une erreur de réponse ne contient pas demessage
, mais contient unresponse_code
.UNKNOWN_ERROR
- Cela signifie que quelque chose d’inattendu s’est mal passé (le message de l’exception levée est transmis).Codes d’erreur personnalisés reçus des procédures
RESET_CONFIGURATION_INTERNAL
etRESET_CONFIGURATION_VALIDATE
- définis par le développeur du connecteur.