AbstractReconciler : global
L’include de script AbstractReconciler fournit des méthodes à utiliser comme classe de base pour créer votre propre rapprochement Discovery.
Il s’agit d’une classe de base abstraite pour réconcilier les données nouvellement découvertes dans une XMLMemoryTable avec une liste connexe dans la base de données. L’include de script AbstractReconciler implémente la logique commune et les méthodes d’assistance pour réconcilier les listes connexes d’un élément CMDB particulier avec les informations détectées présentes dans une instance MemoryTable.
La plupart de cette logique est très simple, mais un élément ne l’est peut-être pas : la résolution des références à des enregistrements précédemment rapprochés. Cette fonctionnalité fonctionne en collectant des informations lors du rapprochement d’une liste connexe, puis en transmettant ces informations au rapprochement d’une autre liste connexe. Par exemple, lorsque les partitions de commutateur sont rapprochées, des informations sont collectées (dans une instance de mappage) qui font correspondre un numéro d’interface pour une partition à la sys_id de l’enregistrement de la partition dans la table de partition. Puis, ultérieurement, lorsque les ports de commutation sont rapprochés, une référence à la partition de commutateur qui contient le port de commutateur peut être résolue à l’aide de cette carte.
AbstractReconciler : getReconciliationField()
Détermine si les données nouvellement découvertes sont différentes des données déjà présentes dans la base de données pour l’élément actuel.
Cette méthode n’est invoquée que pour les éléments qui ont été redétectés.
Méthode obligatoire qui doit être remplacée dans toutes les sous-classes concrètes.
| Nom | Type | Description |
|---|---|---|
| Aucun |
| Type | Description |
|---|---|
| Booléen | Vrai si les données ont changé. |
AbstractReconciler : getReconciliationKey()
Obtient la valeur de chaîne du champ à utiliser comme clé pour rechercher un enregistrement dans les données nouvellement détectées.
Cette valeur sera utilisée pour tenter de trouver un enregistrement dans les données détectées, à l’aide de la colonne renvoyée par la méthode getReconciliationKey().
Méthode obligatoire qui doit être remplacée dans toutes les sous-classes concrètes.
| Nom | Type | Description |
|---|---|---|
| Aucun |
| Type | Description |
|---|---|
| Chaîne | Valeur à utiliser comme clé dans les données détectées. |
AbstractReconciler : hasChanged()
Renvoie la valeur true si les données nouvellement découvertes sont différentes des données déjà présentes dans la base de données pour cet élément.
Cette méthode n’est invoquée que pour les éléments qui ont été redétectés.
Méthode obligatoire qui doit être remplacée dans toutes les sous-classes concrètes.
| Nom | Type | Description |
|---|---|---|
| Aucun |
| Type | Description |
|---|---|
| Booléen | Vrai si les données détectées sont différentes des données déjà présentes dans la base de données. |
AbstractReconciler : markAbsent()
Marque les CI comme absents en définissant l’état de l’installation sur « Absent » ; D’autres tables sont marquées en définissant le champ (présumé présent) « absent » sur vrai.
| Nom | Type | Description |
|---|---|---|
| Aucun |
| Type | Description |
|---|---|
| nul |
AbstractReconciler : markPresent()
Marque les CI comme présents en définissant l’état de l’installation sur « Installé » ; D’autres tables sont marquées en définissant le champ (présumé présent) « absent » sur faux.
| Nom | Type | Description |
|---|---|---|
| Aucun |
| Type | Description |
|---|---|
| nul |
AbstractReconciler : process()
Rapproche les données nouvellement découvertes avec les données déjà présentes dans la base de données et résout les références aux données précédemment rapprochées.
| Nom | Type | Description |
|---|---|---|
| Aucun |
| Type | Description |
|---|---|
| nul |
AbstractReconciler : readDatabaseFields()
Lit l’enregistrement de la table de mémoire actuelle des données nouvellement découvertes et vérifie sa validité.
Méthode obligatoire qui doit être remplacée dans toutes les sous-classes concrètes.
| Nom | Type | Description |
|---|---|---|
| Aucun |
| Type | Description |
|---|---|
| Booléen | Vrai si les données sont valides. |
AbstractReconciler : readDiscovered()
Lit l’enregistrement de la table de mémoire actuelle des données nouvellement découvertes et vérifie sa validité.
Méthode obligatoire qui doit être remplacée dans toutes les sous-classes concrètes.
| Nom | Type | Description |
|---|---|---|
| Aucun |
| Type | Description |
|---|---|
| Booléen | Vrai si les données sont valides. |
AbstractReconciler : resolveReferenceFields()
Lit les champs de l’enregistrement de base de données actuel dans les champs de membre de l’instance.
Méthode obligatoire qui doit être remplacée dans toutes les sous-classes concrètes.
| Nom | Type | Description |
|---|---|---|
| Aucun |
| Type | Description |
|---|---|
| nul |
AbstractReconciler : setDatabaseFields()
Définit les champs de base de données de l’enregistrement actuel sur les valeurs des informations nouvellement détectées.
Cette méthode est appelée à la fois pour les nouveaux enregistrements de base de données et pour les enregistrements de base de données existants lorsque les données découvertes ont changé.
Méthode obligatoire qui doit être remplacée dans toutes les sous-classes concrètes.
| Nom | Type | Description |
|---|---|---|
| Aucun |
| Type | Description |
|---|---|
| nul |
AbstractReconciler : setup()
Remplacement facultatif pour les sous-classes en béton qui nécessitent une configuration spéciale.
| Nom | Type | Description |
|---|---|---|
| Aucun |
| Type | Description |
|---|---|
| nul |
AbstractReconciler : track(chaîne sys_id)
Méthode facultative à remplacer dans les sous-classes concrètes qui doivent résoudre les champs de référence.
Cette méthode est invoquée après la lecture des données découvertes valides. Généralement, les implémentations utilisent certaines de ces données découvertes comme clé dans une carte (transmise dans la classe de rapprochement concret lors de l’instanciation) qui renvoie la sys_id de l’enregistrement de base de données contenant les informations référencées. Cependant, les implémentations ne sont pas nécessaires pour utiliser cette approche.
| Nom | Type | Description |
|---|---|---|
| sys_id | Chaîne | sys_id de l’enregistrement de base de données actuel. |
| Type | Description |
|---|---|
| nul |