Workflow-Skriptelemente, -aktionen und -richtlinien erfordern eine grundlegende Skripts für häufige Aufgaben. Sie können diese Beispiele in Ihre(n) Skriptelementen ausschneiden, einfügen und anpassen.

Zugriff auf XML-Dokumente

Anhand des folgenden JavaScript-Beispiels können Sie mit der Implementierung von ECMAScript for XML (E4X) in der JavaScript-API von Orchestrator auf JavaScript-XML-Dokumente zugreifen.

Anmerkung:

Zusätzlich zur Implementierung von E4X in der JavaScript-API stellt Orchestrator auch eine XML-Implementierung für ein Document Object Model (DOM) im XML-Plug-In bereit. Information zum XML-Plug-In und seinen Beispielworkflows finden Sie unter Verwenden von vRealize Orchestrator-Plug-Ins.

var people = <people>
                 <person id="1">
                     <name>Moe</name>
                 </person>
                 <person id="2">
                     <name>Larry</name>
                 </person>
             </people>;

System.log("'people' = " + people);

// built-in XML type
System.log("'people' is of type : " + typeof(people)); 

// list-like interface System.log("which contains a list of " +
people.person.length() + " persons"); 
System.log("whose first element is : " + people.person[0]);

// attribute 'id' is mapped to field '@id'
people.person[0].@id='47'; 
// change Moe's id to 47 
// also supports search by constraints
System.log("Moe's id is now : " + people.person.(name=='Moe').@id);

// suppress Moe from the list
delete people.person[0];
System.log("Moe is now removed.");

// new (sub-)document can be built from a string 
people.person[1] = new XML("<person id=\"3\"><name>James</name></person>");
System.log("Added James to the list, which is now :");
for each(var person in people..person)

for each(var person in people..person){
	System.log("- " + person.name + " (id=" + person.@id + ")"); 
}

Festlegen und Abrufen von Eigenschaften über eine Hashtabelle

Im folgenden JavaScript-Beispiel werden Eigenschaften in einer Hashtabelle festgelegt und die Eigenschaften von der Hashtabelle abgerufen. Im folgenden Beispiel handelt es sich beim Schlüssel immer um einen Zeichenfolge, und der Wert ist ein Objekt, eine Zahl, ein Boolescher Wert oder eine Zeichenfolge.

var table = new Properties() ; 
table.put("myKey",new Date()) ;
// get the object back 
var myDate= table.get("myKey") ;
System.log("Date is : "+myDate) ;

Ersetzen von Zeichenfolge-Inhalten

Im folgenden JavaScript-Beispiel wird der Inhalt einer Zeichenfolge durch neuen Inhalt ersetzt.

var str1 = "'hello'" ; 
var reg = new RegExp("(')", "g"); 
var str2 = str1.replace(reg,"\\'") ; 
System.log(""+str2) ; // result : \'hello\'

Vergleichen von Typen

Im folgenden JavaScript-Beispiel wird geprüft, ob ein Objekt mit einem angegebenen Objekttyp übereinstimmt.

var path = 'myurl/test';
if(typeof(path, string)){
  throw("string");
else {
  throw("other");
}

Ausführen eines Befehls auf dem Orchestrator-Server

Im folgenden JavaScript-Beispiel können Sie eine Befehlszeile auf dem Orchestrator-Server ausführen. Verwenden Sie dieselben Anmeldedaten wie jene zum Starten des Servers.

Anmerkung:

Der Zugriff auf das Dateisystem ist standardmäßig eingeschränkt.

var cmd = new Command("ls -al") ;
cmd.execute(true) ;
System.log(cmd.output) ;