Sie können ein Java SDK-Bibliothek verwenden, um Vorgänge für die Orchestrator-REST-API in Java-Anwendungen auszuführen und direkt mit Objekten zu arbeiten.

Jeder REST-ful Webdienst des Orchestrator REST SDK verfügt über eine umhüllende Javaklasse mit Methoden, die den Vorgängen entsprechen, welche durch das Verwenden des Diensts ausgeführt werden.

Das Java REST SDK wird zusammen mit Orchestrator installiert. Die Java REST SDK-Artefakte sind an den folgenden Speicherorten verfügbar:

Anmerkung:

Der Zugriff auf die Artefakte ist nur möglich, wenn die Orchestrator-Appliance installiert ist.

  • https://Orchestrator_Host:Port/vco-repo/com/vmware/o11n/o11n-rest-client/

  • https://Orchestrator_Host:Port/vco-repo/com/vmware/o11n/o11n-rest-client-examples/

  • https://Orchestrator_Host:Port/vco-repo/com/vmware/o11n/o11n-rest-client-services/

  • https://Orchestrator_Host:Port/vco-repo/com/vmware/o11n/o11n-rest-client-stubs/

Ausführen eines Workflow und Warten, bis er abgeschlossen ist

Der folgende Beispielcode führt einen Workflow aus und wartet auf seine Beendigung.

//start a new session to Orchestrator by using specified credentials
VcoSession session = DefaultVcoSessionFactory.newLdapSession(new URI("https://orchestrator-server:8281/vco/api/"), "username", "password");

//create the services
WorkflowService workflowService = new WorkflowService(session);
ExecutionService executionService = new ExecutionService(session);

//find a workflow by ID
Workflow workflow = workflowService.getWorkflow("1231235");

//create an ExecutionContext from the user's input
ExecutionContext context = new ExecutionContextBuilder().addParam("name", "Jerry").addParam("age", 18).build();

//run the workflow
WorkflowExecution execution = executionService.execute(workflow, context);

//wait for the workflow to reach the user interaction state, checking every 500 milliseconds
execution = executionService.awaitState(execution, 500, 10, WorkflowExecutionState.CANCELED, WorkflowExecutionState.FAILED, WorkflowExecutionState.COMPLETED);

String nameParamValue = new ParameterExtractor().fromTheOutputOf(execution).extractString("name");
System.out.println("workflow was executed with 'name' input set to" + nameParamValue);