CdmAbfrage – Umfang

  • Freigeben Version: Yokohama
  • Aktualisiert 30. Januar 2025
  • 16 Minuten Lesedauer
  • Die CdmAbfrage Die Skripteinbindung bietet Methoden, mit denen Sie abfragen können CDMDatenmodellstruktur. Gibt eine Liste von Knotenobjekten zurück, die bestimmte Felder/Spalten in der Tabelle „CDM-Knoten“ [sn_cdm_node] sind. Diese Werte werden als Eigenschaften im Objekt zurückgegeben. Jedes Objekt ist ein Knoten im Datenmodell.

    Diese Skripteinbindung ist Fluent, was bedeutet, dass die meisten ihrer Methoden die Verkettung unterstützen und ein CdmQuery-Objekt zurückgeben. Die Methoden in dieser Skripteinbindung sind in verschiedene Typen klassifiziert. Sie müssen sie in einer bestimmten Reihenfolge innerhalb eines Anrufs basierend auf ihrem Typ angeben. Alle Methoden mit Ausnahme der Ergebnismethoden sind verkettbar.

    Hinweis:
    Diese Dokumentation deckt nur die Verwendung von ab CdmAbfrage Skripteinbindung bei der Abfrage von Snapshot-Daten. Daher werden derzeit nur Methoden dokumentiert, die für diesen Prozess erforderlich sind. Das Abfragen von Snapshot-Daten ist beim Schreiben von PACE-Richtlinienskripts für die Datenvalidierung und erforderlich CDMexporteur-Skripts für Datenexport.
    Methodentypen:

    Die Snapshot-ID() Und Abfrage() Methoden sind obligatorisch. Sie müssen Filter- und Einstellungsmethoden vor hinzufügen Abfrage() Methode, aber nach Snapshot-ID() Methode. Die Reihenfolge, in der Sie Filter- und Einstellungsmethoden hinzufügen, ist nicht wichtig, es sei denn, sie stehen in Konflikt. In diesem Fall gilt die neueste relevante Methode. Sie müssen alle Ergebnismethoden hinzufügen, z. B. GetTree() Um das Ergebnis nach abzurufen Abfrage() Methode.

    Zum Beispiel:
    var primarySnapshot = new sn_cdm.CdmQuery()
      .snapshotId("1a2fe2e6c3a27010cc0a259d7640dd59")
      .decryptPassword(true)
      .includeFileMetadata()
      .query()
      .getTree(true, false);

    Diese API wird in ausgeführt sn_cdm Namespace und Sie müssen über die Rollen „sn_cdm.cdm_Viewer“ oder „sn_cdm.cdm_secrets“ verfügen, um auf die verschiedenen Methoden zuzugreifen.

    CdmQuery – CdmQuery()

    Instanziiert ein CdmQuery-Objekt. Sie müssen diese Methode aufrufen, bevor Sie eine andere aufrufen CdmAbfrage Methoden.

    Tabelle : 1. Parameter
    Name Typ Beschreibung
    Keine

    Die folgenden Codebeispiele zeigen, wie aufgerufen wird CdmAbfrage Methode zum Instanziieren eines CdmQuery-Objekts im sn_cdm-Namespace.

    var primarySnapshot = new sn_cdm.CdmQuery()
    .snapshotId("1a2fe2e6c3a27010cc0a259d7640dd59")
    .decryptPassword(true)
    .query()
    .getTree();

    CdmQuery – decryptPassword (boolesche Entschlüsselung)

    Ermöglicht Ihnen, anzugeben, ob entschlüsselte Werte für verschlüsselte Konfigurationsdatenelemente (CDI) und Variablenknoten in den Ergebnissen zurückgegeben werden.

    Ein Fehler wird ausgelöst, wenn der Anwender nicht über die erforderliche Rolle „sn_cdm.cdm_secrets“ verfügt.

    Tabelle : 2. Parameter
    Name Typ Beschreibung
    Entschlüsseln Boolean Optional. Kennzeichnung, die angibt, ob entschlüsselte Werte für die CDI- und Variablenknoten zurückgegeben werden sollen.
    Gültige Werte:
    • Wahr: Entschlüsselte Werte für die CDI- und Variablenknoten zurückgeben.
    • Falsch: Verschlüsselte Werte für die CDI- und Variablenknoten zurückgeben.

    Standard: Falsch

    Tabelle : 3. Rückgaben
    Typ Beschreibung
    Keine

    Das folgende Codebeispiel zeigt, wie aufgerufen wird CdmQuery() API und geben Sie an, um verschlüsselte Werte für die CDI- und Variablenknoten zurückzugeben.

    var primarySnapshot = new sn_cdm.CdmQuery()
    .snapshotId("9f12a80047352150fd6ce977746d4364")
    .decryptPassword(false)
    .query()
    .getTree(true,true);
    
    gs.info(primarySnapshot);

    Ergebnisse zurückgeben:

    {
      "Development_1": {
        "vars": {},
        "services": {
          "vars": {},
          "paymentComponent": {
            "applicationSLA": "24x7",
            "paymentService": {
              "database": {
                "backup": {
                  "dbServer": "db23.paymentx.be"
                },
                "dbIpAddress": "10.20.40.50",
                "dbName": "paymentX_dev2",
                "dbPort": "8050",
                "dbServer": "db22.paymentx.be",
                "dbUserName": "root",
                "dbPassword": "*******"
              }
            }
          }
        }
      }
    }

    Das folgende Codebeispiel zeigt, wie aufgerufen wird CdmQuery() API und geben Sie an, um entschlüsselte Werte für die CDI- und Variablenknoten zurückzugeben.

    var primarySnapshot = new sn_cdm.CdmQuery()
    .snapshotId("9f12a80047352150fd6ce977746d4364")
    .decryptPassword(true)
    .query()
    .getTree(true,true);
    
    gs.info(primarySnapshot);

    Ergebnisse zurückgeben:

    {
      "Development_1": {
        "vars": {},
        "services": {
          "vars": {},
          "paymentComponent": {
            "applicationSLA": "24x7",
            "paymentService": {
              "database": {
                "backup": {
                  "dbServer": "db23.paymentx.be"
                },
                "dbIpAddress": "10.20.40.50",
                "dbName": "paymentX_dev2",
                "dbPort": "8050",
                "dbServer": "db22.paymentx.be",
                "dbUserName": "root",
                "dbPassword": "dev1-password"
              }
            }
          }
        }
      }
    }

    CdmQuery – follow Includes(boolescher Wert folgeIncludes)

    Ermöglicht Ihnen, anzugeben, ob verknüpfte Knoten vollständig aufgelöst sind, sodass untergeordnete Knoten eines referenzierten Knotens unter einem verknüpften Knoten angezeigt werden.

    Tabelle : 4. Parameter
    Name Typ Beschreibung
    Follow-Includes Boolean Optional. Kennzeichnung, die angibt, ob verknüpfte Knoten vollständig aufgelöst sind.
    Gültige Werte:
    • Wahr: Verknüpfte Knoten sind vollständig aufgelöst.
    • Falsch: Verknüpfte Knoten sind nicht vollständig aufgelöst.

    Standard: Wahr

    Tabelle : 5. Rückgaben
    Typ Beschreibung
    Keine

    Das folgende Codebeispiel zeigt, wie Daten zurückgegeben werden, die vollständig gelöst sind: followIncludes= wahr.

    var primarySnapshot = new sn_cdm.CdmQuery()
      .snapshotId("9f12a80047352150fd6ce977746d4364")
      .followIncludes(true)
      .query()
      .getTree(false, true);

    Beispiel für Rückgabedaten:

    {
      "sys_id": "62a0a0cc47f12150fd6ce977746d431a",
      "type": "sn_cdm_node_deployable",
      "main_id": "111673",
      "name": "Development_1",
      "node_path": "!K<+!K<0!K<1",
      "effective_path": "!K<+!K<0!K<1",
      "main_id_encoded": "K<1",
      "node_classifier": "/application/deployables/env:Development",
      "status": "valid",
      "level": "2",
      "children": [
        {
          "sys_id": "2aa0a0cc47f12150fd6ce977746d431a",
          "type": "sn_cdm_node_folder",
          "main_id": "111674",
          "name": "vars",
          "node_path": "!K<+!K<0!K<1!K<2",
          "effective_path": "!K<+!K<0!K<1!K<2",
          "main_id_encoded": "K<2",
          "node_classifier": "/application/deployables/env:Development/vars",
          "status": "valid",
          "level": "3",
          "children": [],
          "hasParent": true
        },
        {
          "sys_id": "2ca1600047352150fd6ce977746d4391",
          "type": "sn_cdm_node_linked",
          "main_id": "111693",
          "name": "services",
          "node_path": "!K<+!K<0!K<1!K<G",
          "effective_path": "!K<+!K<0!K<1!K<G",
          "main_id_encoded": "K<G",
          "node_classifier": "/application/deployables/env:Development",
          "status": "valid",
          "level": "3",
          "children": [
            {
              "sys_id": "2bb0e0cc47f12150fd6ce977746d43e2",
              "type": "sn_cdm_node_folder",
              "main_id": "111680",
              "name": "vars",
              "node_path": "!K<+!K</!K<7!K<8",
              "effective_path": "!K<+!K<0!K<1!K<G!K<8",
              "main_id_encoded": "K<8",
              "node_classifier": "/application/collections/vars",
              "status": "valid",
              "level": "3",
              "children": [],
              "hasParent": true
            },
            {
              "sys_id": "ccf1640047352150fd6ce977746d438b",
              "type": "sn_cdm_node_component",
              "main_id": "111697",
              "name": "paymentComponent",
              "node_path": "!K<+!K<0!K<1!K<G!K<K",
              "effective_path": "!K<+!K<0!K<1!K<G!K<K",
              "main_id_encoded": "K<K",
              "node_classifier": "/application/deployables/env:Development",
              "status": "valid",
              "level": "4",
              "children": [
                {
                  "sys_id": "7fd064cc47f12150fd6ce977746d4372",
                  "type": "sn_cdm_node_cdi",
                  "main_id": "111682",
                  "name": "applicationSLA",
                  "node_path": "!K<+!K<,!K<9!K<:",
                  "value": "24x7",
                  "effective_path": "!K<+!K<0!K<1!K<G!K<K!K<:",
                  "main_id_encoded": "K<:",
                  "node_classifier": "/application/components",
                  "status": "valid",
                  "level": "3",
                  "children": [],
                  "hasParent": true
                },
                {
                  "sys_id": "44f1a40047352150fd6ce977746d43dc",
                  "type": "sn_cdm_node_component",
                  "main_id": "111698",
                  "name": "paymentService",
                  "node_path": "!K<+!K<0!K<1!K<G!K<K!K<L",
                  "effective_path": "!K<+!K<0!K<1!K<G!K<K!K<L",
                  "main_id_encoded": "K<L",
                  "node_classifier": "/application/deployables/env:Development",
                  "status": "valid",
                  "level": "5",
                  "children": [
                    {
                      "sys_id": "8cf1a40047352150fd6ce977746d43dc",
                      "type": "sn_cdm_node_component",
                      "main_id": "111699",
                      "name": "database",
                      "node_path": "!K<+!K<0!K<1!K<G!K<K!K<L!K<M",
                      "effective_path": "!K<+!K<0!K<1!K<G!K<K!K<L!K<M",
                      "main_id_encoded": "K<M",
                      "node_classifier": "/application/deployables/env:Development",
                      "status": "valid",
                      "level": "6",
                      "children": [
                        {
                          "sys_id": "b3d064cc47f12150fd6ce977746d4374",
                          "type": "sn_cdm_node_component",
                          "main_id": "111685",
                          "name": "backup",
                          "node_path": "!K<+!K<,!K<9!K<;!K<<!K<?",
                          "effective_path": "!K<+!K<0!K<1!K<G!K<K!K<L!K<M!K<?",
                          "main_id_encoded": "K<?",
                          "node_classifier": "/application/components",
                          "status": "valid",
                          "level": "5",
                          "children": [
                            {
                              "sys_id": "7bd064cc47f12150fd6ce977746d4374",
                              "type": "sn_cdm_node_cdi",
                              "main_id": "111686",
                              "name": "dbServer",
                              "node_path": "!K<+!K<,!K<9!K<;!K<<!K<?!K<@",
                              "value": "db23.paymentx.be",
                              "effective_path": "!K<+!K<0!K<1!K<G!K<K!K<L!K<M!K<?!K<@",
                              "main_id_encoded": "K<@",
                              "node_classifier": "/application/components",
                              "status": "valid",
                              "level": "6",
                              "children": [],
                              "hasParent": true
                            }
                          ],
                          "hasParent": true
                        },
                        {
                          "sys_id": "33d064cc47f12150fd6ce977746d4375",
                          "type": "sn_cdm_node_cdi",
                          "main_id": "111687",
                          "name": "dbIpAddress",
                          "node_path": "!K<+!K<,!K<9!K<;!K<<!K<A",
                          "value": "10.20.40.50",
                          "effective_path": "!K<+!K<0!K<1!K<G!K<K!K<L!K<M!K<A",
                          "main_id_encoded": "K<A",
                          "node_classifier": "/application/components",
                          "status": "valid",
                          "level": "5",
                          "children": [],
                          "hasParent": true
                        },
                        {
                          "sys_id": "f7d064cc47f12150fd6ce977746d4375",
                          "type": "sn_cdm_node_cdi",
                          "main_id": "111688",
                          "name": "dbName",
                          "node_path": "!K<+!K<,!K<9!K<;!K<<!K<B",
                          "value": "paymentX_dev2",
                          "effective_path": "!K<+!K<0!K<1!K<G!K<K!K<L!K<M!K<B",
                          "main_id_encoded": "K<B",
                          "node_classifier": "/application/components",
                          "status": "valid",
                          "level": "5",
                          "children": [],
                          "hasParent": true
                        },
                        {
                          "sys_id": "77d064cc47f12150fd6ce977746d4376",
                          "type": "sn_cdm_node_cdi",
                          "main_id": "111690",
                          "name": "dbPort",
                          "node_path": "!K<+!K<,!K<9!K<;!K<<!K<D",
                          "value": "8050",
                          "effective_path": "!K<+!K<0!K<1!K<G!K<K!K<L!K<M!K<D",
                          "main_id_encoded": "K<D",
                          "node_classifier": "/application/components",
                          "status": "valid",
                          "level": "5",
                          "children": [],
                          "hasParent": true
                        },
                        {
                          "sys_id": "3fd064cc47f12150fd6ce977746d4376",
                          "type": "sn_cdm_node_cdi",
                          "main_id": "111691",
                          "name": "dbServer",
                          "node_path": "!K<+!K<,!K<9!K<;!K<<!K<E",
                          "value": "db22.paymentx.be",
                          "effective_path": "!K<+!K<0!K<1!K<G!K<K!K<L!K<M!K<E",
                          "main_id_encoded": "K<E",
                          "node_classifier": "/application/components",
                          "status": "valid",
                          "level": "5",
                          "children": [],
                          "hasParent": true
                        },
                        {
                          "sys_id": "f3d064cc47f12150fd6ce977746d4377",
                          "type": "sn_cdm_node_cdi",
                          "main_id": "111692",
                          "name": "dbUserName",
                          "node_path": "!K<+!K<,!K<9!K<;!K<<!K<F",
                          "value": "root",
                          "effective_path": "!K<+!K<0!K<1!K<G!K<K!K<L!K<M!K<F",
                          "main_id_encoded": "K<F",
                          "node_classifier": "/application/components",
                          "status": "valid",
                          "level": "5",
                          "children": [],
                          "hasParent": true
                        },
                        {
                          "sys_id": "c4f1a40047352150fd6ce977746d43dd",
                          "type": "sn_cdm_node_cdi",
                          "main_id": "111700",
                          "name": "dbPassword",
                          "node_path": "!K<+!K<0!K<1!K<G!K<K!K<L!K<M!K<N",
                          "secure_value": "﷞﷟﷒dac329a2476c6110fd6ce977746d43e1﷬﷔1﷬﷭w8YJ85PO5byT5YNmeG_HwQ==WrNQP39n-PWKFs_VXFSjr3TJsGxS1ESKpyl4PUE=﷮﷯",
                          "effective_path": "!K<+!K<0!K<1!K<G!K<K!K<L!K<M!K<N",
                          "main_id_encoded": "K<N",
                          "node_classifier": "/application/deployables/env:Development",
                          "status": "valid",
                          "level": "7",
                          "masked_value": "*******",
                          "children": [],
                          "hasParent": true
                        }
                      ],
                      "hasParent": true
                    }
                  ],
                  "hasParent": true
                }
              ],
              "hasParent": true
            }
          ],
          "hasParent": true
        }
      ]
    }

    Das folgende Codebeispiel zeigt, wie Daten zurückgegeben werden, die nicht vollständig gelöst sind: followIncludes= falsch.

    var primarySnapshot = new sn_cdm.CdmQuery()
      .snapshotId("9f12a80047352150fd6ce977746d4364")
      .followIncludes(false)
      .query()
      .getTree(false, true);

    Beispiel für Rückgabedaten:

    {
      "sys_id": "62a0a0cc47f12150fd6ce977746d431a",
      "type": "sn_cdm_node_deployable",
      "main_id": "111673",
      "name": "Development_1",
      "node_path": "!K<+!K<0!K<1",
      "effective_path": "!K<+!K<0!K<1",
      "main_id_encoded": "K<1",
      "node_classifier": "/application/deployables/env:Development",
      "status": "valid",
      "level": "2",
      "children": [
        {
          "sys_id": "2aa0a0cc47f12150fd6ce977746d431a",
          "type": "sn_cdm_node_folder",
          "main_id": "111674",
          "name": "vars",
          "node_path": "!K<+!K<0!K<1!K<2",
          "effective_path": "!K<+!K<0!K<1!K<2",
          "main_id_encoded": "K<2",
          "node_classifier": "/application/deployables/env:Development/vars",
          "status": "valid",
          "level": "3",
          "children": [],
          "hasParent": true
        },
        {
          "sys_id": "2ca1600047352150fd6ce977746d4391",
          "type": "sn_cdm_node_linked",
          "main_id": "111693",
          "name": "services",
          "node_path": "!K<+!K<0!K<1!K<G",
          "effective_path": "!K<+!K<0!K<1!K<G",
          "main_id_encoded": "K<G",
          "node_classifier": "/application/deployables/env:Development",
          "status": "valid",
          "level": "3",
          "children": [
            {
              "sys_id": "ccf1640047352150fd6ce977746d438b",
              "type": "sn_cdm_node_component",
              "main_id": "111697",
              "name": "paymentComponent",
              "node_path": "!K<+!K<0!K<1!K<G!K<K",
              "effective_path": "!K<+!K<0!K<1!K<G!K<K",
              "main_id_encoded": "K<K",
              "node_classifier": "/application/deployables/env:Development",
              "status": "valid",
              "level": "4",
              "children": [
                {
                  "sys_id": "44f1a40047352150fd6ce977746d43dc",
                  "type": "sn_cdm_node_component",
                  "main_id": "111698",
                  "name": "paymentService",
                  "node_path": "!K<+!K<0!K<1!K<G!K<K!K<L",
                  "effective_path": "!K<+!K<0!K<1!K<G!K<K!K<L",
                  "main_id_encoded": "K<L",
                  "node_classifier": "/application/deployables/env:Development",
                  "status": "valid",
                  "level": "5",
                  "children": [
                    {
                      "sys_id": "8cf1a40047352150fd6ce977746d43dc",
                      "type": "sn_cdm_node_component",
                      "main_id": "111699",
                      "name": "database",
                      "node_path": "!K<+!K<0!K<1!K<G!K<K!K<L!K<M",
                      "effective_path": "!K<+!K<0!K<1!K<G!K<K!K<L!K<M",
                      "main_id_encoded": "K<M",
                      "node_classifier": "/application/deployables/env:Development",
                      "status": "valid",
                      "level": "6",
                      "children": [
                        {
                          "sys_id": "c4f1a40047352150fd6ce977746d43dd",
                          "type": "sn_cdm_node_cdi",
                          "main_id": "111700",
                          "name": "dbPassword",
                          "node_path": "!K<+!K<0!K<1!K<G!K<K!K<L!K<M!K<N",
                          "secure_value": "﷞﷟﷒dac329a2476c6110fd6ce977746d43e1﷬﷔1﷬﷭w8YJ85PO5byT5YNmeG_HwQ==WrNQP39n-PWKFs_VXFSjr3TJsGxS1ESKpyl4PUE=﷮﷯",
                          "effective_path": "!K<+!K<0!K<1!K<G!K<K!K<L!K<M!K<N",
                          "main_id_encoded": "K<N",
                          "node_classifier": "/application/deployables/env:Development",
                          "status": "valid",
                          "level": "7",
                          "masked_value": "*******",
                          "children": [],
                          "hasParent": true
                        }
                      ],
                      "hasParent": true
                    }
                  ],
                  "hasParent": true
                }
              ],
              "hasParent": true
            }
          ],
          "hasParent": true
        }
      ]
    }

    CdmQuery – forEach(Funktionsfunktion)

    Iteriert durch jeden der Ergebnisknoten und wendet die angegebene Funktion an, die ein CdmNode-Objekt akzeptiert.

    Tabelle : 6. Parameter
    Name Typ Beschreibung
    Funktion Funktion Funktion, die auf das CdmNode-Objekt angewendet werden soll.
    Tabelle : 7. Rückgaben
    Typ Beschreibung
    Keine

    Dieses Codebeispiel zeigt, wie aufgerufen wird Foreach() Methode.

    CdmQuery.forEach(function (node) {
      gs.info("Node - {0}:{1} ", [node.getValue("name"), node.getValue("value")]);
    });

    CdmQuery – getTree(Boolean simpleTree, Boolean prettify)

    Gibt den angegebenen zurück CDMAbfrageergebnisse.

    Sie können die Ebene und das Format des zurückzugebenden Inhalts angeben, indem Sie die zugehörigen Kennzeichnungen innerhalb des Anrufs festlegen. Standardmäßig wird eine formatierte Zeichenfolge zurückgegeben, die die Knotenmetadaten und ihre untergeordneten Knoten enthält und wobei der Eingabeknoten der oberste Knoten ist.

    Tabelle : 8. Parameter
    Name Typ Beschreibung
    SimpleTree Boolean Optional. Kennzeichnung, die die Ebene des zurückzugebenden Inhalts angibt.
    Gültige Werte:
    • Wahr: Gibt ein vereinfachtes JSON-Objekt aus hierarchischen Schlüssel-Wert-Paaren zurück, ausgenommen alle Knotenmetadaten.
    • Falsch: Gibt ein JSON-Objekt zurück, das die Knotenmetadaten und alle untergeordneten Knoten enthält, und gibt an, wo der Eingabeknoten der oberste Knoten ist.

    Standard: Falsch

    Schön Boolean Optional. Kennzeichnung, die angibt, ob eine formatierte Zeichenfolge anstelle eines JSON-Objekts zurückgegeben werden soll.
    Gültige Werte:
    • Wahr: Inhalt in einem JSON-Objekt zurückgeben.
    • Falsch: Inhalt als formatierte Zeichenfolge zurückgeben. Verwenden Sie diese Option nur in UI und Exporter, da der Antwort neue Zeilen- und Escape-Zeichen hinzugefügt werden.

    Standard: Falsch

    Tabelle : 9. Rückgaben
    Typ Beschreibung
    CdmAbfrage CdmQuery-Objekt, das die angegebenen Abfrageinformationen enthält.

    Das folgende Codebeispiel zeigt, wie aufgerufen wird GetTree() Methode, die die Standardeinstellungen verwendet. Dadurch wird eine formatierte Zeichenfolge zurückgegeben, die die Knotenmetadaten und alle untergeordneten Knoten enthält.

    var primarySnapshot = new sn_cdm.CdmQuery()
      .snapshotId("9f12a80047352150fd6ce977746d4364")
      .query()
      .getTree();
    
    gs.info(JSON.stringify(primarySnapshot));

    Ergebnisse zurückgeben:

    {"sys_id":"62a0a0cc47f12150fd6ce977746d431a","type":"sn_cdm_node_deployable","main_id":"111673","name":"Development_1","node_path":"!K<+!K<0!K<1","effective_path":"!K<+!K<0!K<1","main_id_encoded":"K<1","node_classifier":"/application/deployables/env:Development","status":"valid","level":"2","children":[{"sys_id":"2aa0a0cc47f12150fd6ce977746d431a","type":"sn_cdm_node_folder","main_id":"111674","name":"vars","node_path":"!K<+!K<0!K<1!K<2","effective_path":"!K<+!K<0!K<1!K<2","main_id_encoded":"K<2","node_classifier":"/application/deployables/env:Development/vars","status":"valid","level":"3","children":[],"hasParent":true},{"sys_id":"2ca1600047352150fd6ce977746d4391","type":"sn_cdm_node_linked","main_id":"111693","name":"services","node_path":"!K<+!K<0!K<1!K<G","effective_path":"!K<+!K<0!K<1!K<G","main_id_encoded":"K<G","node_classifier":"/application/deployables/env:Development","status":"valid","level":"3","children":[{"sys_id":"2bb0e0cc47f12150fd6ce977746d43e2","type":"sn_cdm_node_folder","main_id":"111680","name":"vars","node_path":"!K<+!K</!K<7!K<8","effective_path":"!K<+!K<0!K<1!K<G!K<8","main_id_encoded":"K<8","node_classifier":"/application/collections/vars","status":"valid","level":"3","children":[],"hasParent":true},{"sys_id":"ccf1640047352150fd6ce977746d438b","type":"sn_cdm_node_component","main_id":"111697","name":"paymentComponent","node_path":"!K<+!K<0!K<1!K<G!K<K","effective_path":"!K<+!K<0!K<1!K<G!K<K","main_id_encoded":"K<K","node_classifier":"/application/deployables/env:Development","status":"valid","level":"4","children":[{"sys_id":"7fd064cc47f12150fd6ce977746d4372","type":"sn_cdm_node_cdi","main_id":"111682","name":"applicationSLA","node_path":"!K<+!K<,!K<9!K<:","value":"24x7","effective_path":"!K<+!K<0!K<1!K<G!K<K!K<:","main_id_encoded":"K<:","node_classifier":"/application/components","status":"valid","level":"3","children":[],"hasParent":true},{"sys_id":"44f1a40047352150fd6ce977746d43dc","type":"sn_cdm_node_component","main_id":"111698","name":"paymentService","node_path":"!K<+!K<0!K<1!K<G!K<K!K<L","effective_path":"!K<+!K<0!K<1!K<G!K<K!K<L","main_id_encoded":"K<L","node_classifier":"/application/deployables/env:Development","status":"valid","level":"5","children":[{"sys_id":"8cf1a40047352150fd6ce977746d43dc","type":"sn_cdm_node_component","main_id":"111699","name":"database","node_path":"!K<+!K<0!K<1!K<G!K<K!K<L!K<M","effective_path":"!K<+!K<0!K<1!K<G!K<K!K<L!K<M","main_id_encoded":"K<M","node_classifier":"/application/deployables/env:Development","status":"valid","level":"6","children":[{"sys_id":"b3d064cc47f12150fd6ce977746d4374","type":"sn_cdm_node_component","main_id":"111685","name":"backup","node_path":"!K<+!K<,!K<9!K<;!K<<!K<?","effective_path":"!K<+!K<0!K<1!K<G!K<K!K<L!K<M!K<?","main_id_encoded":"K<?","node_classifier":"/application/components","status":"valid","level":"5","children":[{"sys_id":"7bd064cc47f12150fd6ce977746d4374","type":"sn_cdm_node_cdi","main_id":"111686","name":"dbServer","node_path":"!K<+!K<,!K<9!K<;!K<<!K<?!K<@","value":"db23.paymentx.be","effective_path":"!K<+!K<0!K<1!K<G!K<K!K<L!K<M!K<?!K<@","main_id_encoded":"K<@","node_classifier":"/application/components","status":"valid","level":"6","children":[],"hasParent":true}],"hasParent":true},{"sys_id":"33d064cc47f12150fd6ce977746d4375","type":"sn_cdm_node_cdi","main_id":"111687","name":"dbIpAddress","node_path":"!K<+!K<,!K<9!K<;!K<<!K<A","value":"10.20.40.50","effective_path":"!K<+!K<0!K<1!K<G!K<K!K<L!K<M!K<A","main_id_encoded":"K<A","node_classifier":"/application/components","status":"valid","level":"5","children":[],"hasParent":true},{"sys_id":"f7d064cc47f12150fd6ce977746d4375","type":"sn_cdm_node_cdi","main_id":"111688","name":"dbName","node_path":"!K<+!K<,!K<9!K<;!K<<!K<B","value":"paymentX_dev2","effective_path":"!K<+!K<0!K<1!K<G!K<K!K<L!K<M!K<B","main_id_encoded":"K<B","node_classifier":"/application/components","status":"valid","level":"5","children":[],"hasParent":true},{"sys_id":"77d064cc47f12150fd6ce977746d4376","type":"sn_cdm_node_cdi","main_id":"111690","name":"dbPort","node_path":"!K<+!K<,!K<9!K<;!K<<!K<D","value":"8050","effective_path":"!K<+!K<0!K<1!K<G!K<K!K<L!K<M!K<D","main_id_encoded":"K<D","node_classifier":"/application/components","status":"valid","level":"5","children":[],"hasParent":true},{"sys_id":"3fd064cc47f12150fd6ce977746d4376","type":"sn_cdm_node_cdi","main_id":"111691","name":"dbServer","node_path":"!K<+!K<,!K<9!K<;!K<<!K<E","value":"db22.paymentx.be","effective_path":"!K<+!K<0!K<1!K<G!K<K!K<L!K<M!K<E","main_id_encoded":"K<E","node_classifier":"/application/components","status":"valid","level":"5","children":[],"hasParent":true},{"sys_id":"f3d064cc47f12150fd6ce977746d4377","type":"sn_cdm_node_cdi","main_id":"111692","name":"dbUserName","node_path":"!K<+!K<,!K<9!K<;!K<<!K<F","value":"root","effective_path":"!K<+!K<0!K<1!K<G!K<K!K<L!K<M!K<F","main_id_encoded":"K<F","node_classifier":"/application/components","status":"valid","level":"5","children":[],"hasParent":true},{"sys_id":"c4f1a40047352150fd6ce977746d43dd","type":"sn_cdm_node_cdi","main_id":"111700","name":"dbPassword","node_path":"!K<+!K<0!K<1!K<G!K<K!K<L!K<M!K<N","secure_value":"﷞﷟﷒dac329a2476c6110fd6ce977746d43e1﷬﷔1﷬﷭w8YJ85PO5byT5YNmeG_HwQ==WrNQP39n-PWKFs_VXFSjr3TJsGxS1ESKpyl4PUE=﷮﷯","effective_path":"!K<+!K<0!K<1!K<G!K<K!K<L!K<M!K<N","main_id_encoded":"K<N","node_classifier":"/application/deployables/env:Development","status":"valid","level":"7","masked_value":"*******","children":[],"hasParent":true}],"hasParent":true}],"hasParent":true}],"hasParent":true}],"hasParent":true}]}
    

    Das folgende Codebeispiel zeigt, wie aufgerufen wird GetTree() Methode zum Rückgeben eines vereinfachten JSON-Objekts von hierarchischen Schlüssel-Wert-Paaren.

    var primarySnapshot = new sn_cdm.CdmQuery()
      .snapshotId("9f12a80047352150fd6ce977746d4364")
      .query()
      .getTree(true, true);
    
    gs.info(JSON.stringify(primarySnapshot));

    Ergebnisse zurückgeben:

    {
      "Development_1": {
        "vars": {},
        "services": {
          "vars": {},
          "paymentComponent": {
            "applicationSLA": "24x7",
            "paymentService": {
              "database": {
                "backup": {
                  "dbServer": "db23.paymentx.be"
                },
                "dbIpAddress": "10.20.40.50",
                "dbName": "paymentX_dev2",
                "dbPort": "8050",
                "dbServer": "db22.paymentx.be",
                "dbUserName": "root",
                "dbPassword": "*******"
              }
            }
          }
        }
      }
    }

    Das folgende Codebeispiel zeigt, wie aufgerufen wird GetTree() Methode zum Rückgeben eines JSON-Objekts, das die Knotenmetadaten und alle seine untergeordneten Knoten enthält.

    var primarySnapshot = new sn_cdm.CdmQuery()
      .snapshotId("9f12a80047352150fd6ce977746d4364")
      .query()
      .getTree(false, true);
    
    gs.info(JSON.stringify(primarySnapshot));

    Ergebnisse zurückgeben:

    {
      "sys_id": "62a0a0cc47f12150fd6ce977746d431a",
      "type": "sn_cdm_node_deployable",
      "main_id": "111673",
      "name": "Development_1",
      "node_path": "!K<+!K<0!K<1",
      "effective_path": "!K<+!K<0!K<1",
      "main_id_encoded": "K<1",
      "node_classifier": "/application/deployables/env:Development",
      "status": "valid",
      "level": "2",
      "children": [
        {
          "sys_id": "2aa0a0cc47f12150fd6ce977746d431a",
          "type": "sn_cdm_node_folder",
          "main_id": "111674",
          "name": "vars",
          "node_path": "!K<+!K<0!K<1!K<2",
          "effective_path": "!K<+!K<0!K<1!K<2",
          "main_id_encoded": "K<2",
          "node_classifier": "/application/deployables/env:Development/vars",
          "status": "valid",
          "level": "3",
          "children": [],
          "hasParent": true
        },
        {
          "sys_id": "2ca1600047352150fd6ce977746d4391",
          "type": "sn_cdm_node_linked",
          "main_id": "111693",
          "name": "services",
          "node_path": "!K<+!K<0!K<1!K<G",
          "effective_path": "!K<+!K<0!K<1!K<G",
          "main_id_encoded": "K<G",
          "node_classifier": "/application/deployables/env:Development",
          "status": "valid",
          "level": "3",
          "children": [
            {
              "sys_id": "2bb0e0cc47f12150fd6ce977746d43e2",
              "type": "sn_cdm_node_folder",
              "main_id": "111680",
              "name": "vars",
              "node_path": "!K<+!K</!K<7!K<8",
              "effective_path": "!K<+!K<0!K<1!K<G!K<8",
              "main_id_encoded": "K<8",
              "node_classifier": "/application/collections/vars",
              "status": "valid",
              "level": "3",
              "children": [],
              "hasParent": true
            },
            {
              "sys_id": "ccf1640047352150fd6ce977746d438b",
              "type": "sn_cdm_node_component",
              "main_id": "111697",
              "name": "paymentComponent",
              "node_path": "!K<+!K<0!K<1!K<G!K<K",
              "effective_path": "!K<+!K<0!K<1!K<G!K<K",
              "main_id_encoded": "K<K",
              "node_classifier": "/application/deployables/env:Development",
              "status": "valid",
              "level": "4",
              "children": [
                {
                  "sys_id": "7fd064cc47f12150fd6ce977746d4372",
                  "type": "sn_cdm_node_cdi",
                  "main_id": "111682",
                  "name": "applicationSLA",
                  "node_path": "!K<+!K<,!K<9!K<:",
                  "value": "24x7",
                  "effective_path": "!K<+!K<0!K<1!K<G!K<K!K<:",
                  "main_id_encoded": "K<:",
                  "node_classifier": "/application/components",
                  "status": "valid",
                  "level": "3",
                  "children": [],
                  "hasParent": true
                },
                {
                  "sys_id": "44f1a40047352150fd6ce977746d43dc",
                  "type": "sn_cdm_node_component",
                  "main_id": "111698",
                  "name": "paymentService",
                  "node_path": "!K<+!K<0!K<1!K<G!K<K!K<L",
                  "effective_path": "!K<+!K<0!K<1!K<G!K<K!K<L",
                  "main_id_encoded": "K<L",
                  "node_classifier": "/application/deployables/env:Development",
                  "status": "valid",
                  "level": "5",
                  "children": [
                    {
                      "sys_id": "8cf1a40047352150fd6ce977746d43dc",
                      "type": "sn_cdm_node_component",
                      "main_id": "111699",
                      "name": "database",
                      "node_path": "!K<+!K<0!K<1!K<G!K<K!K<L!K<M",
                      "effective_path": "!K<+!K<0!K<1!K<G!K<K!K<L!K<M",
                      "main_id_encoded": "K<M",
                      "node_classifier": "/application/deployables/env:Development",
                      "status": "valid",
                      "level": "6",
                      "children": [
                        {
                          "sys_id": "b3d064cc47f12150fd6ce977746d4374",
                          "type": "sn_cdm_node_component",
                          "main_id": "111685",
                          "name": "backup",
                          "node_path": "!K<+!K<,!K<9!K<;!K<<!K<?",
                          "effective_path": "!K<+!K<0!K<1!K<G!K<K!K<L!K<M!K<?",
                          "main_id_encoded": "K<?",
                          "node_classifier": "/application/components",
                          "status": "valid",
                          "level": "5",
                          "children": [
                            {
                              "sys_id": "7bd064cc47f12150fd6ce977746d4374",
                              "type": "sn_cdm_node_cdi",
                              "main_id": "111686",
                              "name": "dbServer",
                              "node_path": "!K<+!K<,!K<9!K<;!K<<!K<?!K<@",
                              "value": "db23.paymentx.be",
                              "effective_path": "!K<+!K<0!K<1!K<G!K<K!K<L!K<M!K<?!K<@",
                              "main_id_encoded": "K<@",
                              "node_classifier": "/application/components",
                              "status": "valid",
                              "level": "6",
                              "children": [],
                              "hasParent": true
                            }
                          ],
                          "hasParent": true
                        },
                        {
                          "sys_id": "33d064cc47f12150fd6ce977746d4375",
                          "type": "sn_cdm_node_cdi",
                          "main_id": "111687",
                          "name": "dbIpAddress",
                          "node_path": "!K<+!K<,!K<9!K<;!K<<!K<A",
                          "value": "10.20.40.50",
                          "effective_path": "!K<+!K<0!K<1!K<G!K<K!K<L!K<M!K<A",
                          "main_id_encoded": "K<A",
                          "node_classifier": "/application/components",
                          "status": "valid",
                          "level": "5",
                          "children": [],
                          "hasParent": true
                        },
                        {
                          "sys_id": "f7d064cc47f12150fd6ce977746d4375",
                          "type": "sn_cdm_node_cdi",
                          "main_id": "111688",
                          "name": "dbName",
                          "node_path": "!K<+!K<,!K<9!K<;!K<<!K<B",
                          "value": "paymentX_dev2",
                          "effective_path": "!K<+!K<0!K<1!K<G!K<K!K<L!K<M!K<B",
                          "main_id_encoded": "K<B",
                          "node_classifier": "/application/components",
                          "status": "valid",
                          "level": "5",
                          "children": [],
                          "hasParent": true
                        },
                        {
                          "sys_id": "77d064cc47f12150fd6ce977746d4376",
                          "type": "sn_cdm_node_cdi",
                          "main_id": "111690",
                          "name": "dbPort",
                          "node_path": "!K<+!K<,!K<9!K<;!K<<!K<D",
                          "value": "8050",
                          "effective_path": "!K<+!K<0!K<1!K<G!K<K!K<L!K<M!K<D",
                          "main_id_encoded": "K<D",
                          "node_classifier": "/application/components",
                          "status": "valid",
                          "level": "5",
                          "children": [],
                          "hasParent": true
                        },
                        {
                          "sys_id": "3fd064cc47f12150fd6ce977746d4376",
                          "type": "sn_cdm_node_cdi",
                          "main_id": "111691",
                          "name": "dbServer",
                          "node_path": "!K<+!K<,!K<9!K<;!K<<!K<E",
                          "value": "db22.paymentx.be",
                          "effective_path": "!K<+!K<0!K<1!K<G!K<K!K<L!K<M!K<E",
                          "main_id_encoded": "K<E",
                          "node_classifier": "/application/components",
                          "status": "valid",
                          "level": "5",
                          "children": [],
                          "hasParent": true
                        },
                        {
                          "sys_id": "f3d064cc47f12150fd6ce977746d4377",
                          "type": "sn_cdm_node_cdi",
                          "main_id": "111692",
                          "name": "dbUserName",
                          "node_path": "!K<+!K<,!K<9!K<;!K<<!K<F",
                          "value": "root",
                          "effective_path": "!K<+!K<0!K<1!K<G!K<K!K<L!K<M!K<F",
                          "main_id_encoded": "K<F",
                          "node_classifier": "/application/components",
                          "status": "valid",
                          "level": "5",
                          "children": [],
                          "hasParent": true
                        },
                        {
                          "sys_id": "c4f1a40047352150fd6ce977746d43dd",
                          "type": "sn_cdm_node_cdi",
                          "main_id": "111700",
                          "name": "dbPassword",
                          "node_path": "!K<+!K<0!K<1!K<G!K<K!K<L!K<M!K<N",
                          "secure_value": "﷞﷟﷒dac329a2476c6110fd6ce977746d43e1﷬﷔1﷬﷭w8YJ85PO5byT5YNmeG_HwQ==WrNQP39n-PWKFs_VXFSjr3TJsGxS1ESKpyl4PUE=﷮﷯",
                          "effective_path": "!K<+!K<0!K<1!K<G!K<K!K<L!K<M!K<N",
                          "main_id_encoded": "K<N",
                          "node_classifier": "/application/deployables/env:Development",
                          "status": "valid",
                          "level": "7",
                          "masked_value": "*******",
                          "children": [],
                          "hasParent": true
                        }
                      ],
                      "hasParent": true
                    }
                  ],
                  "hasParent": true
                }
              ],
              "hasParent": true
            }
          ],
          "hasParent": true
        }
      ]
    }

    CdmQuery – getValue(String fieldName)

    Gibt den Wert des angegebenen Felds des aktuellen iterierten Knotenergebnisses zurück.

    Tabelle : 10. Parameter
    Name Typ Beschreibung
    fieldName Zeichenfolge Name des Felds mit dem zurückzugebenden Snapshot-Datensatz.
    Tabelle : 11. Rückgaben
    Typ Beschreibung
    Keine

    Das folgende Codebeispiel zeigt, wie verwendet wird GetValue() Methode zum Extrahieren erforderlicher Daten.

    var cdmQuery = new sn_cdm.CdmQuery()
      .snapshotId("1a2fe2e6c3a27010cc0a259d7640dd59")
      .decryptPassword(true)
      .query();  
    
    var output = [];
      while(cdmQuery.next()) {
        var name = cdmQuery.getValue('name');
        var type = cdmQuery.getValue('type');
    
        if (type == 'sg_cdm_node_cdi' || type == 'sg_cdm_node_variable') {
          var value = cdmQuery.getValue('value');
          output.push(gs.getMessage("{0} : {1} [{2}]", [name, value, type]));
        } else {
          output.push(gs.getMessage("{0} [{1}]", [name, type]));
      }
    } 

    Rückgabewerte:

    [
      "test_login_service [sg_cdm_node_deployable]",
      "vars [sg_cdm_node_folder]",
      "service_password : service12345 [sg_cdm_node_variable]",
      "login_service [sg_cdm_node_linked]",
      "vars [sg_cdm_node_folder]",
      "core_component [sg_cdm_node_component]",
      "user_name : admin [sg_cdm_node_cdi]",
      "user_password : service12345 [sg_cdm_node_cdi]"
    ]

    CdmQuery – next()

    Iteriert zum nächsten Knotenergebnis und gibt es zurück, falls vorhanden.

    Tabelle : 12. Parameter
    Name Typ Beschreibung
    Keine
    Tabelle : 13. Rückgaben
    Typ Beschreibung
    CdmAbfrage Falls verfügbar, das CdmQuery-Objekt des nächsten Knotens.

    Wenn keine zusätzlichen Knoten verfügbar sind, wird ein Null oder ein nicht definierter Wert zurückgegeben.

    Das folgende Codebeispiel zeigt, wie Next() Methode zum Iterieren durch den verfügbaren Knoten.

    var cdmQuery = new sn_cdm.CdmQuery()
      .snapshotId("1a2fe2e6c3a27010cc0a259d7640dd59")
      .decryptPassword(true)
      .query(); 
    
    var output = [];
    while(cdmQuery.next()) {
      var name = cdmQuery.getValue('name');
      var type = cdmQuery.getValue('type');
        if (type == 'sg_cdm_node_cdi' || type == 'sg_cdm_node_variable') {
          var value = cdmQuery.getValue('value');
          output.push(gs.getMessage("{0} : {1} [{2}]", [name, value, type]));
      } else {
        output.push(gs.getMessage("{0} [{1}]", [name, type]));
      }	 
    } 

    Ergebnisse zurückgeben:

    [
      "test_login_service [sg_cdm_node_deployable]",
      "vars [sg_cdm_node_folder]",
      "service_password : service12345 [sg_cdm_node_variable]",
      "login_service [sg_cdm_node_linked]",
      "vars [sg_cdm_node_folder]",
      "core_component [sg_cdm_node_component]",
      "user_name : username [sg_cdm_node_cdi]",
      "user_password : service12345 [sg_cdm_node_cdi]" 
    ]

    CdmQuery – query()

    Führt die angegebene Abfrage für aus CDMDatenbank oder Cache basierend auf den Einstellungen, dem Eingabeknoten und den Filtereinstellungen.

    Tabelle : 14. Parameter
    Name Typ Beschreibung
    Keine
    Tabelle : 15. Rückgaben
    Typ Beschreibung
    CdmAbfrage CdmQuery-Objekt.

    Das folgende Codebeispiel zeigt, wie aufgerufen wird CdmQuery() API und geben Sie den bereitstellbaren Snapshot an, der abgefragt werden soll.

    var primarySnapshot = new sn_cdm.CdmQuery()
    .snapshotId("1a2fe2e6c3a27010cc0a259d7640dd59")
    .decryptPassword(true)
    .query()
    .getTree();

    Ergebnisse zurückgeben:

    { 
      "_decryptPassword": true,
      "sys_id": "d73d6666c3a27010cc0a259d7640dde7",
      "type": "sg_cdm_node_deployable",
      "main_id": "731",
      "name": "test_login_service",
      "node_path": "!1+!1/!10",
      "effective_path": "!1+!1/!10",
      "main_id_encoded": "10",
      "node_classifier": "/application/deployables/dep:test_login_service", 
      "status": "valid", 
      "children": [
        {
          "_decryptPassword": true,
          "sys_id": "9f3d6666c3a27010cc0a259d7640dde7",
          "type": "sg_cdm_node_folder",
          "main_id": "732",
          "name": "vars",
          "node_path": "!1+!1/!10!11",
          "effective_path": "!1+!1/!10!11",
          "main_id_encoded": "11",
          "node_classifier": "/application/deployables/dep:test_login_service/vars",
          "status": "valid",
          "children": [
            {
              "_decryptPassword": true,
              "sys_id": "49dd2e66c3a27010cc0a259d7640ddf9",
              "type": "sg_cdm_node_variable", 
              "main_id": "741",
              "name": "service_password",
              "node_path": "!1+!1/!10!11!1:",
              "value": "service12345",
              "effective_path": "!1+!1/!10!11!1:",
              "main_id_encoded": "1:",
              "node_classifier": "/application/deployables/dep:test_login_service/vars",
              "status": "valid",
              "children": [],
              "hasParent": true 
            }
          ], 
          "hasParent": true 
        }, 
        {
          "_decryptPassword": true,
          "sys_id": "26bd2e66c3a27010cc0a259d7640dd74",
          "type": "sg_cdm_node_linked",
          "main_id": "740",
          "name": "login_service",
          "node_path": "!1+!1/!10!19",
          "effective_path": "!1+!1/!10!19",
          "main_id_encoded": "19",
          "node_classifier": "/application/deployables/dep:test_login_service",
          "status": "valid",
          "children": [
            {
              "_decryptPassword": true,
              "sys_id": "eeadea66c3a27010cc0a259d7640dd8c",
              "type": "sg_cdm_node_folder",
              "main_id": "738",
              "name": "vars",
              "node_path": "!1+!1.!16!17",
              "effective_path": "!1+!1/!10!19!17",
              "main_id_encoded": "17",
              "node_classifier": "/application/collections/vars",
              "status": "valid",
              "children": [],
              "hasParent": true 
            },
            { 
              "_decryptPassword": true,
              "sys_id": "da1f22e6c3a27010cc0a259d7640dda2",
              "type": "sg_cdm_node_component",
              "main_id": "742",
              "name": "core_component",
              "node_path": "!1+!1/!10!19!1;",
              "effective_path": "!1+!1/!10!19!1;",
              "main_id_encoded": "1;",
              "node_classifier": "/application/deployables/dep:test_login_service",
              "status": "valid",
              "children": [
                { 
                  "_decryptPassword": true,
                  "sys_id": "921f22e6c3a27010cc0a259d7640dda3",
                  "type": "sg_cdm_node_cdi",
                  "main_id": "743",
                  "name": "user_name",
                  "node_path": "!1+!1/!10!19!1;!1<",
                  "value": "admin",
                  "effective_path": "!1+!1/!10!19!1;!1<",
                  "main_id_encoded": "1<",
                  "node_classifier": "/application/deployables/dep:test_login_service",
                  "status": "valid",
                  "children": [],
                  "hasParent": true
                },
                { 
                  "_decryptPassword": true,
                  "sys_id": "5a1f22e6c3a27010cc0a259d7640dda3",
                  "type": "sg_cdm_node_cdi",
                  "main_id": "744",
                  "name": "user_password",
                  "node_path": "!1+!1/!10!19!1;!1?",
                  "value": "service12345",
                  "effective_path": "!1+!1/!10!19!1;!1?",
                  "main_id_encoded": "1?",
                  "node_classifier": "/application/deployables/dep:test_login_service",
                  "status": "valid",
                  "children": [],
                  "hasParent": true
                }
              ],
              "hasParent": true
            }
          ],
          "hasParent": true
        }
      ],
      "hasParent": false
    }

    CdmQuery – snapshotId(Zeichenfolge snapshotSysID)

    Gibt den Eingabeknoten an. Die CdmAbfrage Die API beschränkt ihre Abfrage auf den Eingabeknoten und die untergeordneten Knoten. Das Aufrufen dieser Methode ist obligatorisch.

    Tabelle : 16. Parameter
    Name Typ Beschreibung
    Snapshot-SysId Zeichenfolge SYS_ID des bereitstellbaren Snapshots, der abgefragt werden soll.

    Intern legt sie die sys_ID des Changesets und die sys_ID des bereitstellbaren Knotens fest.

    Tabelle: CDM-Snapshot [sn_cdm_Snapshot]

    Tabelle : 17. Rückgaben
    Typ Beschreibung
    Keine

    Das folgende Codebeispiel zeigt, wie aufgerufen wird CdmQuery() API und geben Sie den bereitstellbaren Snapshot an, der abgefragt werden soll.

    var primarySnapshot = new sn_cdm.CdmQuery()
    .snapshotId("1a2fe2e6c3a27010cc0a259d7640dd59")
    .decryptPassword(true)
    .query()
    .getTree();

    Ergebnisse zurückgeben:

    { 
      "_decryptPassword": true,
      "sys_id": "d73d6666c3a27010cc0a259d7640dde7",
      "type": "sg_cdm_node_deployable",
      "main_id": "731",
      "name": "test_login_service",
      "node_path": "!1+!1/!10",
      "effective_path": "!1+!1/!10",
      "main_id_encoded": "10",
      "node_classifier": "/application/deployables/dep:test_login_service", 
      "status": "valid", 
      "children": [
        {
          "_decryptPassword": true,
          "sys_id": "9f3d6666c3a27010cc0a259d7640dde7",
          "type": "sg_cdm_node_folder",
          "main_id": "732",
          "name": "vars",
          "node_path": "!1+!1/!10!11",
          "effective_path": "!1+!1/!10!11",
          "main_id_encoded": "11",
          "node_classifier": "/application/deployables/dep:test_login_service/vars",
          "status": "valid",
          "children": [
            {
              "_decryptPassword": true,
              "sys_id": "49dd2e66c3a27010cc0a259d7640ddf9",
              "type": "sg_cdm_node_variable", 
              "main_id": "741",
              "name": "service_password",
              "node_path": "!1+!1/!10!11!1:",
              "value": "service12345",
              "effective_path": "!1+!1/!10!11!1:",
              "main_id_encoded": "1:",
              "node_classifier": "/application/deployables/dep:test_login_service/vars",
              "status": "valid",
              "children": [],
              "hasParent": true 
            }
          ], 
          "hasParent": true 
        }, 
        {
          "_decryptPassword": true,
          "sys_id": "26bd2e66c3a27010cc0a259d7640dd74",
          "type": "sg_cdm_node_linked",
          "main_id": "740",
          "name": "login_service",
          "node_path": "!1+!1/!10!19",
          "effective_path": "!1+!1/!10!19",
          "main_id_encoded": "19",
          "node_classifier": "/application/deployables/dep:test_login_service",
          "status": "valid",
          "children": [
            {
              "_decryptPassword": true,
              "sys_id": "eeadea66c3a27010cc0a259d7640dd8c",
              "type": "sg_cdm_node_folder",
              "main_id": "738",
              "name": "vars",
              "node_path": "!1+!1.!16!17",
              "effective_path": "!1+!1/!10!19!17",
              "main_id_encoded": "17",
              "node_classifier": "/application/collections/vars",
              "status": "valid",
              "children": [],
              "hasParent": true 
            },
            { 
              "_decryptPassword": true,
              "sys_id": "da1f22e6c3a27010cc0a259d7640dda2",
              "type": "sg_cdm_node_component",
              "main_id": "742",
              "name": "core_component",
              "node_path": "!1+!1/!10!19!1;",
              "effective_path": "!1+!1/!10!19!1;",
              "main_id_encoded": "1;",
              "node_classifier": "/application/deployables/dep:test_login_service",
              "status": "valid",
              "children": [
                { 
                  "_decryptPassword": true,
                  "sys_id": "921f22e6c3a27010cc0a259d7640dda3",
                  "type": "sg_cdm_node_cdi",
                  "main_id": "743",
                  "name": "user_name",
                  "node_path": "!1+!1/!10!19!1;!1<",
                  "value": "admin",
                  "effective_path": "!1+!1/!10!19!1;!1<",
                  "main_id_encoded": "1<",
                  "node_classifier": "/application/deployables/dep:test_login_service",
                  "status": "valid",
                  "children": [],
                  "hasParent": true
                },
                { 
                  "_decryptPassword": true,
                  "sys_id": "5a1f22e6c3a27010cc0a259d7640dda3",
                  "type": "sg_cdm_node_cdi",
                  "main_id": "744",
                  "name": "user_password",
                  "node_path": "!1+!1/!10!19!1;!1?",
                  "value": "service12345",
                  "effective_path": "!1+!1/!10!19!1;!1?",
                  "main_id_encoded": "1?",
                  "node_classifier": "/application/deployables/dep:test_login_service",
                  "status": "valid",
                  "children": [],
                  "hasParent": true
                }
              ],
              "hasParent": true
            }
          ],
          "hasParent": true
        }
      ],
      "hasParent": false
    }

    CdmQuery – substituteVariable(boolescher Ersatz)

    Ermöglicht Ihnen, anzugeben, ob Variablenreferenzen in CDI-Knoten (Configuration Data Item) durch den Wert des referenzierten Variablenknotens ersetzt werden sollen.

    Tabelle : 18. Parameter
    Name Typ Beschreibung
    Ersetzen Boolean Optional. Kennzeichnung, die angibt, ob Variablenreferenzen in CDI-Knoten durch den Wert des referenzierten Variablenknotens ersetzt werden sollen.
    Gültige Werte:
    • Wahr: Ersetzen Sie Variablenreferenzen in CDI-Knoten durch den Wert des referenzierten Variablenknotens.
    • Falsch: Ersetzen Sie Variablenreferenzen in CDI-Knoten nicht durch den Wert des referenzierten Variablenknotens.

    Standard: Wahr

    Tabelle : 19. Rückgaben
    Typ Beschreibung
    Keine

    Die folgenden Codebeispiele zeigen, wie die Ersetzung von Variablenreferenzen in CDI-Knoten deaktiviert wird.

    var primarySnapshot = new sn_cdm.CdmQuery()
    .snapshotId("20c365a2476c6110fd6ce977746d4336")
    .substituteVariable(false)
    .query()
    .getTree(true, true);
    
    gs.info(primarySnapshot);

    Beispiel für Rückgabeergebnisse:

    {
      "paymentService-V1.1": {
        "featureToggles": {
          "paymentRefund": "enabled",
          "myPreferredPaymentMethods": "enabled",
          "invoicePrinting": "enabled",
          "payOnDelivery": "disabled",
          "payByVoucher": "enabled"
        },
        "vars": {
          "paymentService": {
            "database": {
              "dbName": "paymentX_dev2",
              "dbUserName": "root",
              "dbPassword": "admin123",
              "dbServer": "db22.paymentx.be",
              "dbPort": "8050",
              "dbIpAddress": "10.20.40.50",
              "backup": {
                "dbServer": "db23.paymentx.be"
              }
            }
          },
          "applicationSLA": "24x7"
        },
        "settings": {
          "merchantId": "10334",
          "paymentMethods": "1,3,5,6",
          "allowed.billing.countries": "74,76,88,136,139,176,197",
          "creditcards.cacf.type.ids": "43,44,45,46,48,49,50",
          "creditcards.oney.type.ids": "33,34,35",
          "included.availabilityids": "999",
          "included.warrantiestypeids.cacf": "19002,19005,19006,19009,19010,19011,19014,19016",
          "dbIPAddress": "@@paymentService/database/dbIpAddress@@",
          "dbPort": "@@paymentService/database/dbPort@@",
          "dbConnectionString": "@@paymentService/database/dbUserName@@:@@paymentService/database/dbPassword@@ @@paymentService/database/dbServer@@:@@paymentService/database/dbPort@@ @@paymentService/database/dbName@@",
          "dbConnectionStringBackup": "@@paymentService/database/dbUserName@@:@@paymentService/database/dbPassword@@ @@paymentService/database/backup/dbServer@@ @@paymentService/database/dbName@@",
          "paypal": "enabled",
          "applePay": "disabled",
          "ogone": "enabled"
        }
      }
    }

    Die folgenden Codebeispiele zeigen, wie die Ersetzung von Variablenreferenzen in CDI-Knoten und die zugehörigen Rückgabeergebnisse für denselben Datensatz aktiviert werden.

    var primarySnapshot = new sn_cdm.CdmQuery()
    .snapshotId("20c365a2476c6110fd6ce977746d4336")
    .substituteVariable(true)
    .query()
    .getTree(false, true);
    
    gs.info(primarySnapshot);

    Beispiel für Rückgabeergebnisse:

    {
      "paymentService-V1.1": {
        "featureToggles": {
          "paymentRefund": "enabled",
          "myPreferredPaymentMethods": "enabled",
          "invoicePrinting": "enabled",
          "payOnDelivery": "disabled",
          "payByVoucher": "enabled"
        },
        "vars": {
          "paymentService": {
            "database": {
              "dbName": "paymentX_dev2",
              "dbUserName": "root",
              "dbPassword": "admin123",
              "dbServer": "db22.paymentx.be",
              "dbPort": "8050",
              "dbIpAddress": "10.20.40.50",
              "backup": {
                "dbServer": "db23.paymentx.be"
              }
            }
          },
          "applicationSLA": "24x7"
        },
        "settings": {
          "merchantId": "10334",
          "paymentMethods": "1,3,5,6",
          "allowed.billing.countries": "74,76,88,136,139,176,197",
          "creditcards.cacf.type.ids": "43,44,45,46,48,49,50",
          "creditcards.oney.type.ids": "33,34,35",
          "included.availabilityids": "999",
          "included.warrantiestypeids.cacf": "19002,19005,19006,19009,19010,19011,19014,19016",
          "dbIPAddress": "10.20.40.50",
          "dbPort": "8050",
          "dbConnectionString": "root:admin123 db22.paymentx.be:8050 paymentX_dev2",
          "dbConnectionStringBackup": "root:admin123 db23.paymentx.be paymentX_dev2",
          "paypal": "enabled",
          "applePay": "disabled",
          "ogone": "enabled"
        }
      }
    }

    CdmQuery – useCache (boolescher useCache)

    Ermöglicht es Ihnen, anzugeben, ob Daten aus dem Cache abgerufen werden sollen, anstatt die Datenbank abzufragen.

    Tabelle : 20. Parameter
    Name Typ Beschreibung
    UseCache Boolean Optional. Kennzeichnung, die angibt, ob Daten aus dem Cache abgerufen werden sollen, falls vorhanden, anstatt die Datenbank abzufragen.
    Gültige Werte:
    • Wahr: Ruft Daten aus dem Cache ab.
    • Falsch: Abfrage der Datenbank ab, um die Daten abzurufen.

    Standard: Wahr

    Tabelle : 21. Rückgaben
    Typ Beschreibung
    Keine

    Die folgenden Codebeispiele zeigen, wie Sie die Verwendung des Cache deaktivieren, um Daten abzurufen.

    var cdmQuery = new sn_cdm.CdmQuery()
      .snapshotId("1a2fe2e6c3a27010cc0a259d7640dd59")
      .decryptPassword(true)
      .useCache(false)
      .query();