AbstractReconciler : global

  • Rversion finale: Washingtondc
  • Mis à jour 1 févr. 2024
  • 4 minutes de lecture
  • Utilisez ce script include comme classe de base pour créer votre propre rapprochement de détection.

    Il s’agit d’une classe de base abstraite permettant de réconcilier les données nouvellement découvertes dans une table XMLMemoryTable avec une liste connexe de la base de données. AbstractReconciler implémente la logique commune et les méthodes d’assistance pour rapprocher 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 commutateurs sont rapprochées, des informations sont collectées (dans une instance de carte) qui mappe un numéro d’interface pour une partition sur le sys_id de l’enregistrement de la partition dans la table de partition. Puis, ultérieurement, lorsque les ports de commutateur 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étectées 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, doit être remplacée dans toutes les sous-classes concrètes.

    Tableau 1. Paramètres
    Nom Type Description
    Aucun
    Tableau 2. Renvoie
    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, doit être remplacée dans toutes les sous-classes concrètes.

    Tableau 3. Paramètres
    Nom Type Description
    Aucun
    Tableau 4. Renvoie
    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étectées 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, doit être remplacée dans toutes les sous-classes concrètes.

    Tableau 5. Paramètres
    Nom Type Description
    Aucun
    Tableau 6. Renvoie
    Type Description
    Booléen True 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 d’installation sur « Absent » ; D’autres tables sont marquées en définissant le champ (présumé présent) « absent » sur vrai.

    Tableau 7. Paramètres
    Nom Type Description
    Aucun
    Tableau 8. Renvoie
    Type Description
    nul

    AbstractReconciler : markPresent()

    Marque les CI comme présents en définissant l’état d’installation sur « Installé » ; D’autres tables sont marquées en définissant le champ (présumé présent) « absent » sur faux.

    Tableau 9. Paramètres
    Nom Type Description
    Aucun
    Tableau 10. Renvoie
    Type Description
    nul

    AbstractReconciler - process()

    Rapproche les données nouvellement détectées 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.

    Tableau 11. Paramètres
    Nom Type Description
    Aucun
    Tableau 12. Renvoie
    Type Description
    nul

    AbstractReconciler : readDatabaseFields()

    Lit l’enregistrement de la table de mémoire actuelle des données nouvellement découvertes et vérifie leur validité.

    Méthode obligatoire, doit être remplacée dans toutes les sous-classes concrètes.

    Tableau 13. Paramètres
    Nom Type Description
    Aucun
    Tableau 14. Renvoie
    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 leur validité.

    Méthode obligatoire, doit être remplacée dans toutes les sous-classes concrètes.

    Tableau 15. Paramètres
    Nom Type Description
    Aucun
    Tableau 16. Renvoie
    Type Description
    Booléen Vrai si les données sont valides.

    AbstractReconciler : resolveReferenceFields()

    Lit les champs de l’enregistrement de la base de données actuel dans les champs membres de l’instance.

    Méthode obligatoire, doit être remplacée dans toutes les sous-classes concrètes.

    Tableau 17. Paramètres
    Nom Type Description
    Aucun
    Tableau 18. Renvoie
    Type Description
    nul

    AbstractReconciler : setDatabaseFields()

    Définit les champs de base de données de l’enregistrement actuel selon les valeurs des informations nouvellement détectées.

    Cette méthode est invoqué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étectées ont changé.

    Méthode obligatoire, doit être remplacée dans toutes les sous-classes concrètes.

    Tableau 19. Paramètres
    Nom Type Description
    Aucun
    Tableau 20. Renvoie
    Type Description
    nul

    AbstractReconciler : setup()

    Remplacement facultatif pour les sous-classes de béton qui nécessitent une configuration spéciale.

    Tableau 21. Paramètres
    Nom Type Description
    Aucun
    Tableau 22. Renvoie
    Type Description
    nul

    AbstractReconciler : track(chaîne sys_id)

    Méthode facultative à remplacer dans les sous-classes concrètes qui doivent résoudre des champs de référence.

    Cette méthode est invoquée après la lecture des données détectées valides. En règle générale, les implémentations utilisent certaines de ces données découvertes comme clé dans une carte (transmise à la classe de rapprochement concret lors de l’instanciation) qui renvoie la sys_id de l’enregistrement de la base de données contenant les informations référencées. Toutefois, les implémentations ne sont pas nécessaires pour utiliser cette approche.

    Tableau 23. Paramètres
    Nom Type Description
    sys_id Chaîne sys_id de l’enregistrement de base de données actuel.
    Tableau 24. Renvoie
    Type Description
    nul