注:runFlowでは、Flow内のすべてのステップを実行することも、指定したステップのみを実行することもできます。
package com.marklogic.hub.flow; import com.marklogic.hub.ApplicationConfig; import com.marklogic.hub.HubConfig; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.SpringApplication; import org.springframework.boot.WebApplicationType; import javax.annotation.PostConstruct; import java.util.Arrays; public class MyApp { // Get a HubConfig instance. @Autowired HubConfig hubConfig; // Get a FlowRunner instance. @Autowired FlowRunner fr; @PostConstruct void runUserFlows() { /* * After Spring creates the HubConfig object and the project is initialized with * createProject(String), you can use setter methods to change the HubConfig properties * and then call the refreshProject() method which will load the HubConfig object with values * from gradle.properties (optionally overridden with gradle-{env}.properties) and the setters. */ hubConfig.createProject("/path/to/your/project"); hubConfig.withPropertiesFromEnvironment("local"); hubConfig.refreshProject(); // Runs the entire flow. RunFlowResponse testFlowResp = fr.runFlow("testFlow"); // Runs only the specified steps. RunFlowResponse mapFlowResp = fr.runFlow("mapFlow", Arrays.asList("1","3")); // Wait for the flow to end. fr.awaitCompletion(); } public static void main(String[] args) { // Start the Spring application. SpringApplication app = new SpringApplication(MyApp.class, ApplicationConfig.class); app.setWebApplicationType(WebApplicationType.NONE); app.run(); } }