You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@taverna.apache.org by st...@apache.org on 2015/02/17 21:43:45 UTC
[41/51] [partial] incubator-taverna-engine git commit: temporarily
empty repository
http://git-wip-us.apache.org/repos/asf/incubator-taverna-engine/blob/3ecb1291/taverna-execution-remote/src/main/java/uk/org/taverna/platform/execution/impl/remote/RemoteExecution.java
----------------------------------------------------------------------
diff --git a/taverna-execution-remote/src/main/java/uk/org/taverna/platform/execution/impl/remote/RemoteExecution.java b/taverna-execution-remote/src/main/java/uk/org/taverna/platform/execution/impl/remote/RemoteExecution.java
deleted file mode 100644
index cf94d39..0000000
--- a/taverna-execution-remote/src/main/java/uk/org/taverna/platform/execution/impl/remote/RemoteExecution.java
+++ /dev/null
@@ -1,96 +0,0 @@
-/*******************************************************************************
- * Copyright (C) 2011 The University of Manchester
- *
- * Modifications to the initial code base are copyright of their
- * respective authors, or their employers as appropriate.
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public License
- * as published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
- ******************************************************************************/
-package uk.org.taverna.platform.execution.impl.remote;
-
-import org.purl.wf4ever.robundle.Bundle;
-
-import uk.org.taverna.platform.execution.api.AbstractExecution;
-import uk.org.taverna.platform.report.ActivityReport;
-import uk.org.taverna.platform.report.ProcessorReport;
-import uk.org.taverna.platform.report.WorkflowReport;
-import uk.org.taverna.scufl2.api.activity.Activity;
-import uk.org.taverna.scufl2.api.container.WorkflowBundle;
-import uk.org.taverna.scufl2.api.core.Processor;
-import uk.org.taverna.scufl2.api.core.Workflow;
-import uk.org.taverna.scufl2.api.profiles.Profile;
-
-/**
- * An {@link uk.org.taverna.platform.execution.api.Execution Execution} for executing a Taverna workflow on a Taverna Server.
- *
- * @author David Withers
- */
-public class RemoteExecution extends AbstractExecution {
-
- public RemoteExecution(WorkflowBundle workflowBundle, Workflow workflow, Profile profile,
- Bundle inputs) {
- super(workflowBundle, workflow, profile, inputs);
- // TODO Auto-generated constructor stub
- }
-
- @Override
- protected WorkflowReport createWorkflowReport(Workflow workflow) {
- // TODO Auto-generated method stub
- return null;
- }
-
- @Override
- protected ProcessorReport createProcessorReport(Processor processor) {
- // TODO Auto-generated method stub
- return null;
- }
-
- @Override
- protected ActivityReport createActivityReport(Activity activity) {
- // TODO Auto-generated method stub
- return null;
- }
-
- @Override
- public void start() {
- // TODO Auto-generated method stub
-
- }
-
- @Override
- public void pause() {
- // TODO Auto-generated method stub
-
- }
-
- @Override
- public void resume() {
- // TODO Auto-generated method stub
-
- }
-
- @Override
- public void cancel() {
- // TODO Auto-generated method stub
-
- }
-
- @Override
- public void delete() {
- // TODO Auto-generated method stub
-
- }
-
-}
http://git-wip-us.apache.org/repos/asf/incubator-taverna-engine/blob/3ecb1291/taverna-execution-remote/src/main/java/uk/org/taverna/platform/execution/impl/remote/RemoteExecutionService.java
----------------------------------------------------------------------
diff --git a/taverna-execution-remote/src/main/java/uk/org/taverna/platform/execution/impl/remote/RemoteExecutionService.java b/taverna-execution-remote/src/main/java/uk/org/taverna/platform/execution/impl/remote/RemoteExecutionService.java
deleted file mode 100644
index 6ca8db7..0000000
--- a/taverna-execution-remote/src/main/java/uk/org/taverna/platform/execution/impl/remote/RemoteExecutionService.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/*******************************************************************************
- * Copyright (C) 2011 The University of Manchester
- *
- * Modifications to the initial code base are copyright of their
- * respective authors, or their employers as appropriate.
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public License
- * as published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
- ******************************************************************************/
-package uk.org.taverna.platform.execution.impl.remote;
-
-import java.util.Collections;
-import java.util.Set;
-
-import org.purl.wf4ever.robundle.Bundle;
-
-import uk.org.taverna.platform.execution.api.AbstractExecutionService;
-import uk.org.taverna.platform.execution.api.Execution;
-import uk.org.taverna.platform.execution.api.ExecutionEnvironment;
-import uk.org.taverna.platform.execution.api.InvalidWorkflowException;
-import uk.org.taverna.scufl2.api.container.WorkflowBundle;
-import uk.org.taverna.scufl2.api.core.Workflow;
-import uk.org.taverna.scufl2.api.profiles.Profile;
-
-/**
- * Service for executing Taverna workflows on a Taverna Server.
- *
- * @author David Withers
- */
-public class RemoteExecutionService extends AbstractExecutionService {
-
- public RemoteExecutionService() {
- super(RemoteExecutionService.class.getName(), "Taverna Remote Execution Service",
- "Execution Service for executing Taverna workflows on a Taverna Server");
- }
-
- @Override
- protected Execution createExecutionImpl(WorkflowBundle workflowBundle, Workflow workflow,
- Profile profile, Bundle inputs)
- throws InvalidWorkflowException {
- return new RemoteExecution(workflowBundle, workflow, profile, inputs);
- }
-
- @Override
- public Set<ExecutionEnvironment> getExecutionEnvironments() {
- return Collections.<ExecutionEnvironment>emptySet();
- }
-
-}
http://git-wip-us.apache.org/repos/asf/incubator-taverna-engine/blob/3ecb1291/taverna-execution-remote/src/main/resources/META-INF/spring/execution-remote-context-osgi.xml
----------------------------------------------------------------------
diff --git a/taverna-execution-remote/src/main/resources/META-INF/spring/execution-remote-context-osgi.xml b/taverna-execution-remote/src/main/resources/META-INF/spring/execution-remote-context-osgi.xml
deleted file mode 100644
index 2bce13d..0000000
--- a/taverna-execution-remote/src/main/resources/META-INF/spring/execution-remote-context-osgi.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<beans:beans xmlns="http://www.springframework.org/schema/osgi"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xmlns:beans="http://www.springframework.org/schema/beans"
- xsi:schemaLocation="http://www.springframework.org/schema/beans
- http://www.springframework.org/schema/beans/spring-beans.xsd
- http://www.springframework.org/schema/osgi
- http://www.springframework.org/schema/osgi/spring-osgi.xsd">
-
- <service ref="remoteExecution" interface="uk.org.taverna.platform.execution.api.ExecutionService" />
-
-</beans:beans>
http://git-wip-us.apache.org/repos/asf/incubator-taverna-engine/blob/3ecb1291/taverna-execution-remote/src/main/resources/META-INF/spring/execution-remote-context.xml
----------------------------------------------------------------------
diff --git a/taverna-execution-remote/src/main/resources/META-INF/spring/execution-remote-context.xml b/taverna-execution-remote/src/main/resources/META-INF/spring/execution-remote-context.xml
deleted file mode 100644
index 70f9f9d..0000000
--- a/taverna-execution-remote/src/main/resources/META-INF/spring/execution-remote-context.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://www.springframework.org/schema/beans
- http://www.springframework.org/schema/beans/spring-beans.xsd">
-
- <bean id="remoteExecution" class="uk.org.taverna.platform.execution.impl.remote.RemoteExecutionService" />
-
-</beans>
http://git-wip-us.apache.org/repos/asf/incubator-taverna-engine/blob/3ecb1291/taverna-integration-tests/pom.xml
----------------------------------------------------------------------
diff --git a/taverna-integration-tests/pom.xml b/taverna-integration-tests/pom.xml
deleted file mode 100644
index c1cd2be..0000000
--- a/taverna-integration-tests/pom.xml
+++ /dev/null
@@ -1,92 +0,0 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
- <modelVersion>4.0.0</modelVersion>
- <parent>
- <groupId>org.apache.taverna.engine</groupId>
- <artifactId>taverna-engine</artifactId>
- <version>3.1.0-incubating-SNAPSHOT</version>
- </parent>
- <artifactId>taverna-integration-tests</artifactId>
- <name>Apache Taverna Integration Tests</name>
- <dependencies>
- <dependency>
- <groupId>org.apache.taverna.engine</groupId>
- <artifactId>taverna-engine-product</artifactId>
- <version>0.0.1-SNAPSHOT</version>
- <scope>test</scope>
- <exclusions>
- <exclusion>
- <groupId>org.apache.xalan</groupId>
- <artifactId>com.springsource.org.apache.xalan</artifactId>
- </exclusion>
- <exclusion>
- <groupId>org.apache.xerces</groupId>
- <artifactId>com.springsource.org.apache.xerces</artifactId>
- </exclusion>
- </exclusions>
- </dependency>
- <dependency>
- <groupId>org.apache.taverna.language</groupId>
- <artifactId>taverna-scufl2-api</artifactId>
- <version>${taverna.language.version}</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.apache.taverna.language</groupId>
- <artifactId>taverna-databundle</artifactId>
- <version>${taverna.language.version}</version>
- <exclusions>
- <exclusion>
- <groupId>log4j</groupId>
- <artifactId>log4j</artifactId>
- </exclusion>
- </exclusions>
- </dependency>
- <dependency>
- <groupId>${project.parent.groupId}</groupId>
- <artifactId>taverna-execution-api</artifactId>
- <version>${project.parent.version}</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>${project.parent.groupId}</groupId>
- <artifactId>taverna-report-api</artifactId>
- <version>${project.parent.version}</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>${project.parent.groupId}</groupId>
- <artifactId>taverna-run-api</artifactId>
- <version>${project.parent.version}</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>commons-io</groupId>
- <artifactId>commons-io</artifactId>
- <version>2.4</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>junit</groupId>
- <artifactId>junit</artifactId>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.eclipse</groupId>
- <artifactId>org.eclipse.osgi</artifactId>
- <version>${osgi.equinox.version}</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.osgi</groupId>
- <artifactId>org.osgi.core</artifactId>
- <version>${osgi.core.version}</version>
- <scope>provided</scope>
- </dependency>
- <dependency>
- <groupId>org.osgi</groupId>
- <artifactId>org.osgi.compendium</artifactId>
- <version>${osgi.core.version}</version>
- <scope>provided</scope>
- </dependency>
- </dependencies>
-</project>
http://git-wip-us.apache.org/repos/asf/incubator-taverna-engine/blob/3ecb1291/taverna-integration-tests/src/test/java/uk/org/taverna/platform/ActivityIT.java
----------------------------------------------------------------------
diff --git a/taverna-integration-tests/src/test/java/uk/org/taverna/platform/ActivityIT.java b/taverna-integration-tests/src/test/java/uk/org/taverna/platform/ActivityIT.java
deleted file mode 100644
index 5574ee0..0000000
--- a/taverna-integration-tests/src/test/java/uk/org/taverna/platform/ActivityIT.java
+++ /dev/null
@@ -1,84 +0,0 @@
-/*******************************************************************************
- * Copyright (C) 2010 The University of Manchester
- *
- * Modifications to the initial code base are copyright of their
- * respective authors, or their employers as appropriate.
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public License
- * as published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
- ******************************************************************************/
-package uk.org.taverna.platform;
-
-import java.io.File;
-import java.net.URI;
-
-import org.junit.AfterClass;
-import org.junit.BeforeClass;
-import org.junit.Ignore;
-import org.junit.Test;
-import org.osgi.framework.BundleContext;
-
-import uk.org.taverna.osgi.starter.TavernaStarter;
-import uk.org.taverna.platform.execution.api.ExecutionEnvironment;
-import uk.org.taverna.platform.run.api.RunService;
-
-public class ActivityIT extends PlatformIT {
-
- private static TavernaStarter tavernaStarter;
- private static BundleContext bundleContext;
- private static RunService runService;
-
- @BeforeClass
- public static void setup() throws Exception {
- tavernaStarter = new TavernaStarter(new File("/tmp"));
- tavernaStarter.start();
- runService = tavernaStarter.getRunService();
- }
-
- @AfterClass
- public static void shutdown() throws Exception {
- tavernaStarter.stop();
- }
-
- @Test
- public void testGetActivityURIs() {
- System.out.println("================= Available Activities ===================");
- for (ExecutionEnvironment executionEnvironment : runService.getExecutionEnvironments()) {
- for (URI uri : executionEnvironment.getActivityTypes()) {
- System.out.println(uri);
- }
- }
- System.out.println("==========================================================");
- System.out.println("");
- }
-
- public void testCreateActivity() throws Exception {
-// for (URI uri : activityService.getActivityTypes()) {
-// System.out.println("Creating activity " + uri);
-// Activity<?> activity = activityService.createActivity(uri, null);
-// }
- }
-
- @Test
- public void testGetActivityConfigurationDefinition() throws Exception {
- System.out.println("============ Activity Configuration Definitions ==========");
- for (ExecutionEnvironment executionEnvironment : runService.getExecutionEnvironments()) {
- for (URI uri : executionEnvironment.getActivityTypes()) {
- System.out.println(executionEnvironment.getActivityConfigurationSchema(uri));
- }
- }
- System.out.println("==========================================================");
- }
-
-}
http://git-wip-us.apache.org/repos/asf/incubator-taverna-engine/blob/3ecb1291/taverna-integration-tests/src/test/java/uk/org/taverna/platform/PlatformIT.java
----------------------------------------------------------------------
diff --git a/taverna-integration-tests/src/test/java/uk/org/taverna/platform/PlatformIT.java b/taverna-integration-tests/src/test/java/uk/org/taverna/platform/PlatformIT.java
deleted file mode 100644
index 24bcbdb..0000000
--- a/taverna-integration-tests/src/test/java/uk/org/taverna/platform/PlatformIT.java
+++ /dev/null
@@ -1,151 +0,0 @@
-/*******************************************************************************
- * Copyright (C) 2010 The University of Manchester
- *
- * Modifications to the initial code base are copyright of their
- * respective authors, or their employers as appropriate.
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public License
- * as published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
- ******************************************************************************/
-package uk.org.taverna.platform;
-
-import static org.junit.Assert.assertNotNull;
-
-import java.io.File;
-import java.io.FileNotFoundException;
-import java.io.IOException;
-import java.net.URI;
-import java.net.URL;
-import java.nio.file.Path;
-
-import org.apache.commons.io.FileUtils;
-import org.apache.commons.io.IOUtils;
-import org.junit.Ignore;
-
-import uk.org.taverna.databundle.DataBundles;
-import uk.org.taverna.databundle.ErrorDocument;
-import uk.org.taverna.platform.report.State;
-import uk.org.taverna.platform.report.WorkflowReport;
-import uk.org.taverna.scufl2.api.container.WorkflowBundle;
-import uk.org.taverna.scufl2.api.io.WorkflowBundleIO;
-
-@Ignore
-public class PlatformIT {
-
- public WorkflowBundle loadWorkflow(String t2FlowFile, WorkflowBundleIO workflowBundleIO)
- throws Exception {
- URL wfResource = getClass().getResource(t2FlowFile);
- assertNotNull(wfResource);
- return workflowBundleIO.readBundle(wfResource.openStream(), null);
- }
-
- public File loadFile(String fileName) throws IOException, FileNotFoundException {
- File file = File.createTempFile("platform-test", null);
- file.deleteOnExit();
- FileUtils.copyURLToFile(getClass().getResource(fileName), file);
- return file;
- }
-
- public void printErrors(Path error) {
- try {
- ErrorDocument errorDocument = DataBundles.getError(error);
- String message = errorDocument.getMessage();
- if (message != null) {
- System.out.println(message);
- }
- String trace = errorDocument.getTrace();
- if (trace != null) {
- System.out.println(trace);
- }
- } catch (IOException e) {
- e.printStackTrace();
- }
- }
-
- public boolean checkResult(Path result, String expectedResult) {
- if (DataBundles.isError(result)) {
- printErrors(result);
- return false;
- } else {
- String resultValue;
- if (DataBundles.isValue(result)) {
- try {
- resultValue = DataBundles.getStringValue(result);
- } catch (IOException e) {
- e.printStackTrace();
- return false;
- }
- } else if (DataBundles.isReference(result)) {
- try {
- URI reference = DataBundles.getReference(result);
- resultValue = IOUtils.toString(reference);
- } catch (IOException e) {
- e.printStackTrace();
- return false;
- }
- } else {
- System.out.println("Expected a value or reference");
- return false;
- }
- if (resultValue.startsWith(expectedResult)) {
- return true;
- } else {
- System.out.println("Expected: " + expectedResult + ", Actual: " + resultValue);
- return false;
- }
- }
- }
-
- public boolean waitForState(WorkflowReport report, State state) throws InterruptedException {
- return waitForState(report, state, true);
- }
-
- public boolean waitForState(WorkflowReport report, State state, boolean printReport)
- throws InterruptedException {
- int wait = 0;
- while (!report.getState().equals(state) && wait++ < 30) {
- if (printReport) {
- System.out.println(report);
- }
- Thread.sleep(500);
- }
- if (printReport) {
- System.out.println(report);
- }
- return report.getState().equals(state);
- }
-
- public void waitForResults(Path outputs, WorkflowReport report, String... ports)
- throws InterruptedException {
- int wait = 0;
- while (!resultsReady(outputs, ports) && wait++ < 20) {
- System.out.println(report);
- Thread.sleep(500);
- }
- }
-
- private boolean resultsReady(Path outputs, String... ports) {
- for (String port : ports) {
- try {
- if (DataBundles.isMissing(DataBundles.getPort(outputs, port))) {
- return false;
- }
- } catch (IOException e) {
- return false;
- }
- }
- return true;
- }
-
-}
http://git-wip-us.apache.org/repos/asf/incubator-taverna-engine/blob/3ecb1291/taverna-integration-tests/src/test/java/uk/org/taverna/platform/RunIT.java
----------------------------------------------------------------------
diff --git a/taverna-integration-tests/src/test/java/uk/org/taverna/platform/RunIT.java b/taverna-integration-tests/src/test/java/uk/org/taverna/platform/RunIT.java
deleted file mode 100644
index 72cbe40..0000000
--- a/taverna-integration-tests/src/test/java/uk/org/taverna/platform/RunIT.java
+++ /dev/null
@@ -1,954 +0,0 @@
-/*******************************************************************************
- * Copyright (C) 2010 The University of Manchester
- *
- * Modifications to the initial code base are copyright of their
- * respective authors, or their employers as appropriate.
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public License
- * as published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
- ******************************************************************************/
-package uk.org.taverna.platform;
-
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertFalse;
-import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertTrue;
-import static org.junit.Assume.assumeTrue;
-
-import java.io.File;
-import java.net.URI;
-import java.net.URL;
-import java.nio.file.Path;
-import java.security.cert.CertificateFactory;
-import java.security.cert.X509Certificate;
-import java.util.List;
-import java.util.Set;
-
-import net.sf.taverna.t2.security.credentialmanager.CredentialManager;
-import net.sf.taverna.t2.security.credentialmanager.MasterPasswordProvider;
-import net.sf.taverna.t2.security.credentialmanager.UsernamePassword;
-
-import org.junit.AfterClass;
-import org.junit.BeforeClass;
-import org.junit.Ignore;
-import org.junit.Test;
-import org.osgi.framework.BundleContext;
-import org.purl.wf4ever.robundle.Bundle;
-
-import uk.org.taverna.databundle.DataBundles;
-import uk.org.taverna.osgi.starter.TavernaStarter;
-import uk.org.taverna.platform.execution.api.ExecutionEnvironment;
-import uk.org.taverna.platform.report.State;
-import uk.org.taverna.platform.report.WorkflowReport;
-import uk.org.taverna.platform.run.api.RunProfile;
-import uk.org.taverna.platform.run.api.RunService;
-import uk.org.taverna.scufl2.api.container.WorkflowBundle;
-import uk.org.taverna.scufl2.api.io.WorkflowBundleIO;
-
-public class RunIT extends PlatformIT {
-
- private static TavernaStarter tavernaStarter;
- private static BundleContext bundleContext;
- private static WorkflowBundleIO workflowBundleIO;
- private static CredentialManager credentialManager;
- private static RunService runService;
-
- public WorkflowBundle loadWorkflow(String t2FlowFile) throws Exception {
- return super.loadWorkflow(t2FlowFile, workflowBundleIO);
- }
-
- @BeforeClass
- public static void setup() throws Exception {
- tavernaStarter = new TavernaStarter(new File("/tmp"));
- tavernaStarter.start();
- bundleContext = tavernaStarter.getContext();
- runService = tavernaStarter.getRunService();
- credentialManager = tavernaStarter.getCredentialManager();
- workflowBundleIO = tavernaStarter.getWorkflowBundleIO();
-
- bundleContext.registerService(
- "net.sf.taverna.t2.security.credentialmanager.MasterPasswordProvider",
- new MasterPasswordProvider() {
- public String getMasterPassword(boolean firstTime) {
- return "test";
- }
-
- public void setMasterPassword(String password) {
- }
-
- public int getProviderPriority() {
- return 0;
- }
- }, null);
-
- }
-
- @AfterClass
- public static void shutdown() throws Exception {
- tavernaStarter.stop();
- }
-
- @Test
- public void testRun() throws Exception {
- WorkflowBundle workflowBundle = loadWorkflow("/t2flow/in-out.t2flow");
-
- Set<ExecutionEnvironment> executionEnvironments = runService
- .getExecutionEnvironments(workflowBundle);
- assertTrue(executionEnvironments.size() > 0);
- for (ExecutionEnvironment executionEnvironment : executionEnvironments) {
- Bundle inputBundle = DataBundles.createBundle();
- Path inputs = DataBundles.getInputs(inputBundle);
- Path port = DataBundles.getPort(inputs, "in");
- DataBundles.setStringValue(port, "test-input");
-
- String runId = runService.createRun(new RunProfile(executionEnvironment,
- workflowBundle, inputBundle));
- assertEquals(State.CREATED, runService.getState(runId));
-
- WorkflowReport report = runService.getWorkflowReport(runId);
- System.out.println(report);
-
- runService.start(runId);
- assertTrue(waitForState(report, State.COMPLETED));
-
- Bundle outputBundle = runService.getDataBundle(runId);
- assertNotNull(outputBundle);
- Path outputs = DataBundles.getOutputs(outputBundle);
-
- assertTrue(checkResult(DataBundles.getPort(outputs, "out"), "test-input"));
- }
- }
-
- @Test
- public void testRunApiConsumer() throws Exception {
- WorkflowBundle workflowBundle = loadWorkflow("/t2flow/apiconsumer.t2flow");
-
- Set<ExecutionEnvironment> executionEnvironments = runService
- .getExecutionEnvironments(workflowBundle);
- assertTrue(executionEnvironments.size() > 0);
- for (ExecutionEnvironment executionEnvironment : executionEnvironments) {
- Bundle inputBundle = DataBundles.createBundle();
- Path inputs = DataBundles.getInputs(inputBundle);
- Path port = DataBundles.getPort(inputs, "in");
- DataBundles.setStringValue(port, "test-input");
-
- String runId = runService.createRun(new RunProfile(executionEnvironment,
- workflowBundle, inputBundle));
- assertEquals(State.CREATED, runService.getState(runId));
-
- WorkflowReport report = runService.getWorkflowReport(runId);
- System.out.println(report);
-
- runService.start(runId);
- assertTrue(waitForState(report, State.COMPLETED));
-
- Bundle outputBundle = runService.getDataBundle(runId);
- assertNotNull(outputBundle);
- Path outputs = DataBundles.getOutputs(outputBundle);
-
- assertTrue(checkResult(DataBundles.getPort(outputs, "out"), "TEST-INPUT"));
- }
- }
-
- @Test
- public void testRunBeanshell() throws Exception {
- WorkflowBundle workflowBundle = loadWorkflow("/t2flow/beanshell.t2flow");
-
- Set<ExecutionEnvironment> executionEnvironments = runService
- .getExecutionEnvironments(workflowBundle);
- assertTrue(executionEnvironments.size() > 0);
- for (ExecutionEnvironment executionEnvironment : executionEnvironments) {
- Bundle inputBundle = DataBundles.createBundle();
- Path inputs = DataBundles.getInputs(inputBundle);
- Path port = DataBundles.getPort(inputs, "in");
- DataBundles.setStringValue(port, "test-input");
-
- String runId = runService.createRun(new RunProfile(executionEnvironment,
- workflowBundle, inputBundle));
- assertEquals(State.CREATED, runService.getState(runId));
-
- WorkflowReport report = runService.getWorkflowReport(runId);
- System.out.println(report);
-
- runService.start(runId);
- assertTrue(waitForState(report, State.COMPLETED));
-
- Bundle outputBundle = runService.getDataBundle(runId);
- assertNotNull(outputBundle);
- Path outputs = DataBundles.getOutputs(outputBundle);
-
- Path outPort = DataBundles.getPort(outputs, "out");
- assertTrue(DataBundles.isList(outPort));
- List<Path> result = DataBundles.getList(outPort);
- assertEquals(1000, result.size());
- assertEquals("test-input:0", DataBundles.getStringValue(result.get(0)));
- }
- }
-
- @Test
- public void testRunBiomart() throws Exception {
- WorkflowBundle workflowBundle = loadWorkflow("/t2flow/biomart.t2flow");
-
- Set<ExecutionEnvironment> executionEnvironments = runService
- .getExecutionEnvironments(workflowBundle);
- assertTrue(executionEnvironments.size() > 0);
- for (ExecutionEnvironment executionEnvironment : executionEnvironments) {
- String runId = runService
- .createRun(new RunProfile(executionEnvironment, workflowBundle, DataBundles.createBundle()));
- assertEquals(State.CREATED, runService.getState(runId));
-
- WorkflowReport report = runService.getWorkflowReport(runId);
- System.out.println(report);
-
- runService.start(runId);
- assertTrue(waitForState(report, State.COMPLETED));
-
- Bundle outputBundle = runService.getDataBundle(runId);
- assertNotNull(outputBundle);
- Path outputs = DataBundles.getOutputs(outputBundle);
-
- Path outPort = DataBundles.getPort(outputs, "out");
- assertTrue(DataBundles.isList(outPort));
- List<Path> result = DataBundles.getList(outPort);
- assertEquals(6, result.size());
- assertEquals("ENSBTAG00000018278", DataBundles.getStringValue(result.get(0)));
- }
- }
-
- @Test
- @Ignore
- public void testRunBiomoby() throws Exception {
- WorkflowBundle workflowBundle = loadWorkflow("/t2flow/biomoby.t2flow");
-
- Set<ExecutionEnvironment> executionEnvironments = runService
- .getExecutionEnvironments(workflowBundle);
- assumeTrue(executionEnvironments.size() > 0);
- for (ExecutionEnvironment executionEnvironment : executionEnvironments) {
-
- String runId = runService
- .createRun(new RunProfile(executionEnvironment, workflowBundle, DataBundles.createBundle()));
- assertEquals(State.CREATED, runService.getState(runId));
-
- WorkflowReport report = runService.getWorkflowReport(runId);
- System.out.println(report);
-
- runService.start(runId);
- assertTrue(waitForState(report, State.COMPLETED));
-
- Bundle outputBundle = runService.getDataBundle(runId);
- assertNotNull(outputBundle);
- Path outputs = DataBundles.getOutputs(outputBundle);
-
- Path outPort = DataBundles.getPort(outputs, "out");
- assertTrue(DataBundles.isList(outPort));
- List<Path> result = DataBundles.getList(outPort);
- assertEquals(5, result.size());
- assertEquals("ENSBTAG00000018854", DataBundles.getStringValue(result.get(0)));
- }
- }
-
- @Test
- public void testRunDataflow() throws Exception {
- WorkflowBundle workflowBundle = loadWorkflow("/t2flow/dataflow.t2flow");
-
- Set<ExecutionEnvironment> executionEnvironments = runService
- .getExecutionEnvironments(workflowBundle);
- assertTrue(executionEnvironments.size() > 0);
- for (ExecutionEnvironment executionEnvironment : executionEnvironments) {
- Bundle inputBundle = DataBundles.createBundle();
- Path inputs = DataBundles.getInputs(inputBundle);
- Path port = DataBundles.getPort(inputs, "in");
- DataBundles.setStringValue(port, "test-input");
-
- String runId = runService.createRun(new RunProfile(executionEnvironment,
- workflowBundle, inputBundle));
- assertEquals(State.CREATED, runService.getState(runId));
-
- WorkflowReport report = runService.getWorkflowReport(runId);
- System.out.println(report);
-
- runService.start(runId);
- assertTrue(waitForState(report, State.COMPLETED));
-
- Bundle outputBundle = runService.getDataBundle(runId);
- assertNotNull(outputBundle);
- Path outputs = DataBundles.getOutputs(outputBundle);
-
- assertTrue(checkResult(DataBundles.getPort(outputs, "out"), "nested dataflow : test-input"));
- }
- }
-
- @Test
- public void testRunLocalworker() throws Exception {
- WorkflowBundle workflowBundle = loadWorkflow("/t2flow/localworker.t2flow");
-
- Set<ExecutionEnvironment> executionEnvironments = runService
- .getExecutionEnvironments(workflowBundle);
- assertTrue(executionEnvironments.size() > 0);
- for (ExecutionEnvironment executionEnvironment : executionEnvironments) {
- Bundle inputBundle = DataBundles.createBundle();
- Path inputs = DataBundles.getInputs(inputBundle);
- Path port = DataBundles.getPort(inputs, "in");
- DataBundles.setStringValue(port, "Tom");
-
- String runId = runService.createRun(new RunProfile(executionEnvironment,
- workflowBundle, inputBundle));
- assertEquals(State.CREATED, runService.getState(runId));
-
- WorkflowReport report = runService.getWorkflowReport(runId);
- System.out.println(report);
-
- runService.start(runId);
- assertTrue(waitForState(report, State.COMPLETED));
-
- Bundle outputBundle = runService.getDataBundle(runId);
- assertNotNull(outputBundle);
- Path outputs = DataBundles.getOutputs(outputBundle);
-
- assertTrue(checkResult(DataBundles.getPort(outputs, "out"), "Hello Tom"));
- }
- }
-
- @Test
- public void testRunRest() throws Exception {
- WorkflowBundle workflowBundle = loadWorkflow("/t2flow/rest.t2flow");
-
- Set<ExecutionEnvironment> executionEnvironments = runService
- .getExecutionEnvironments(workflowBundle);
- assertTrue(executionEnvironments.size() > 0);
- for (ExecutionEnvironment executionEnvironment : executionEnvironments) {
- String runId = runService
- .createRun(new RunProfile(executionEnvironment, workflowBundle, DataBundles.createBundle()));
- assertEquals(State.CREATED, runService.getState(runId));
-
- WorkflowReport report = runService.getWorkflowReport(runId);
- System.out.println(report);
-
- runService.start(runId);
- assertTrue(waitForState(report, State.COMPLETED));
-
- Bundle outputBundle = runService.getDataBundle(runId);
- assertNotNull(outputBundle);
- Path outputs = DataBundles.getOutputs(outputBundle);
-
- String outString = DataBundles.getStringValue(DataBundles.getPort(outputs, "out"));
- assertTrue(outString.contains("<name>AATM_RABIT</name>"));
- }
- }
-
- @Test
- public void testRunRestSecureBasic() throws Exception {
- credentialManager.addUsernameAndPasswordForService(new UsernamePassword("testuser",
- "testpasswd"), URI
- .create("http://heater.cs.man.ac.uk:7070/#Example+HTTP+BASIC+Authentication"));
-
- WorkflowBundle workflowBundle = loadWorkflow("/t2flow/secure-basic-authentication.t2flow");
-
- Set<ExecutionEnvironment> executionEnvironments = runService
- .getExecutionEnvironments(workflowBundle);
- assertTrue(executionEnvironments.size() > 0);
- for (ExecutionEnvironment executionEnvironment : executionEnvironments) {
- String runId = runService
- .createRun(new RunProfile(executionEnvironment, workflowBundle, DataBundles.createBundle()));
- assertEquals(State.CREATED, runService.getState(runId));
-
- WorkflowReport report = runService.getWorkflowReport(runId);
- System.out.println(report);
-
- runService.start(runId);
- assertTrue(waitForState(report, State.COMPLETED));
-
- Bundle outputBundle = runService.getDataBundle(runId);
- assertNotNull(outputBundle);
- Path outputs = DataBundles.getOutputs(outputBundle);
-
- assertTrue(checkResult(
- DataBundles.getPort(outputs, "out"),
- "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 Transitional//EN\">\n"
- + "<HTML><HEAD><TITLE>Apache Tomcat Examples</TITLE>\n"
- + "<META http-equiv=Content-Type content=\"text/html\">\n"
- + "</HEAD>\n"
- + "<BODY>\n"
- + "<P>\n"
- + "<H3>Secure Apache Tomcat Examples</H3>\n"
- + "<P>Congratulations! If you see this page that means that you have authenticated yourself successfully using HTTP Basic Authentication.</P>\n"
- + "</BODY></HTML>"));
- }
- }
-
- @Test
- public void testRunRestSecureBasicHttps() throws Exception {
- credentialManager.addUsernameAndPasswordForService(new UsernamePassword("testuser",
- "testpasswd"), URI
- .create("https://heater.cs.man.ac.uk:7443/#Example+HTTP+BASIC+Authentication"));
-
- URL trustedCertficateFileURL = getClass().getResource(
- "/security/tomcat_heater_certificate.pem");
- CertificateFactory certFactory = CertificateFactory.getInstance("X.509");
- X509Certificate trustedCertficate = (X509Certificate) certFactory
- .generateCertificate(trustedCertficateFileURL.openStream());
- credentialManager.addTrustedCertificate(trustedCertficate);
-
- WorkflowBundle workflowBundle = loadWorkflow("/t2flow/secure-basic-authentication-https.t2flow");
-
- Set<ExecutionEnvironment> executionEnvironments = runService
- .getExecutionEnvironments(workflowBundle);
- assertTrue(executionEnvironments.size() > 0);
- for (ExecutionEnvironment executionEnvironment : executionEnvironments) {
- String runId = runService
- .createRun(new RunProfile(executionEnvironment, workflowBundle, DataBundles.createBundle()));
- assertEquals(State.CREATED, runService.getState(runId));
-
- WorkflowReport report = runService.getWorkflowReport(runId);
- System.out.println(report);
-
- runService.start(runId);
- assertTrue(waitForState(report, State.COMPLETED));
-
- Bundle outputBundle = runService.getDataBundle(runId);
- assertNotNull(outputBundle);
- Path outputs = DataBundles.getOutputs(outputBundle);
-
- assertTrue(checkResult(
- DataBundles.getPort(outputs, "out"),
- "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 Transitional//EN\">\n"
- + "<HTML><HEAD><TITLE>Apache Tomcat Examples</TITLE>\n"
- + "<META http-equiv=Content-Type content=\"text/html\">\n"
- + "</HEAD>\n"
- + "<BODY>\n"
- + "<P>\n"
- + "<H3>Secure Apache Tomcat Examples</H3>\n"
- + "<P>Congratulations! If you see this page that means that you have authenticated yourself successfully using HTTP Basic Authentication.</P>\n"
- + "</BODY></HTML>"));
- }
- }
-
- @Test
- public void testRunRestSecureDigest() throws Exception {
- credentialManager.addUsernameAndPasswordForService(new UsernamePassword("testuser",
- "testpasswd"), URI
- .create("http://heater.cs.man.ac.uk:7070/#Example+HTTP+BASIC+Authentication"));
-
- WorkflowBundle workflowBundle = loadWorkflow("/t2flow/secure-digest-authentication.t2flow");
-
- Set<ExecutionEnvironment> executionEnvironments = runService
- .getExecutionEnvironments(workflowBundle);
- assertTrue(executionEnvironments.size() > 0);
- for (ExecutionEnvironment executionEnvironment : executionEnvironments) {
- String runId = runService
- .createRun(new RunProfile(executionEnvironment, workflowBundle, DataBundles.createBundle()));
- assertEquals(State.CREATED, runService.getState(runId));
-
- WorkflowReport report = runService.getWorkflowReport(runId);
- System.out.println(report);
-
- runService.start(runId);
- assertTrue(waitForState(report, State.COMPLETED));
-
- Bundle outputBundle = runService.getDataBundle(runId);
- assertNotNull(outputBundle);
- Path outputs = DataBundles.getOutputs(outputBundle);
-
- assertTrue(checkResult(
- DataBundles.getPort(outputs, "out"),
- "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 Transitional//EN\">\n"
- + "<HTML><HEAD><TITLE>Apache Tomcat Examples</TITLE>\n"
- + "<META http-equiv=Content-Type content=\"text/html\">\n"
- + "</HEAD>\n"
- + "<BODY>\n"
- + "<P>\n"
- + "<H3>Secure Apache Tomcat Examples</H3>\n"
- + "<P>Congratulations! If you see this page that means that you have authenticated yourself successfully using HTTP Digest Authentication.</P>\n"
- + "</BODY></HTML>"));
- }
- }
-
- @Test
- public void testRunRestSecureDigestHttps() throws Exception {
- credentialManager.addUsernameAndPasswordForService(new UsernamePassword("testuser",
- "testpasswd"), URI
- .create("http://heater.cs.man.ac.uk:7443/#Example+HTTP+BASIC+Authentication"));
-
- URL trustedCertficateFileURL = getClass().getResource(
- "/security/tomcat_heater_certificate.pem");
- CertificateFactory certFactory = CertificateFactory.getInstance("X.509");
- X509Certificate trustedCertficate = (X509Certificate) certFactory
- .generateCertificate(trustedCertficateFileURL.openStream());
- credentialManager.addTrustedCertificate(trustedCertficate);
-
- WorkflowBundle workflowBundle = loadWorkflow("/t2flow/secure-digest-authentication-https.t2flow");
-
- Set<ExecutionEnvironment> executionEnvironments = runService
- .getExecutionEnvironments(workflowBundle);
- assertTrue(executionEnvironments.size() > 0);
- for (ExecutionEnvironment executionEnvironment : executionEnvironments) {
- String runId = runService
- .createRun(new RunProfile(executionEnvironment, workflowBundle, DataBundles.createBundle()));
- assertEquals(State.CREATED, runService.getState(runId));
-
- WorkflowReport report = runService.getWorkflowReport(runId);
- System.out.println(report);
-
- runService.start(runId);
- assertTrue(waitForState(report, State.COMPLETED));
-
- Bundle outputBundle = runService.getDataBundle(runId);
- assertNotNull(outputBundle);
- Path outputs = DataBundles.getOutputs(outputBundle);
-
- assertTrue(checkResult(
- DataBundles.getPort(outputs, "out"),
- "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 Transitional//EN\">\n"
- + "<HTML><HEAD><TITLE>Apache Tomcat Examples</TITLE>\n"
- + "<META http-equiv=Content-Type content=\"text/html\">\n"
- + "</HEAD>\n"
- + "<BODY>\n"
- + "<P>\n"
- + "<H3>Secure Apache Tomcat Examples</H3>\n"
- + "<P>Congratulations! If you see this page that means that you have authenticated yourself successfully using HTTP Digest Authentication.</P>\n"
- + "</BODY></HTML>"));
- }
- }
-
- @Test
- public void testRunSpreadsheetImport() throws Exception {
- WorkflowBundle workflowBundle = loadWorkflow("/t2flow/spreadsheetimport.t2flow");
-
- Set<ExecutionEnvironment> executionEnvironments = runService
- .getExecutionEnvironments(workflowBundle);
- assertTrue(executionEnvironments.size() > 0);
- for (ExecutionEnvironment executionEnvironment : executionEnvironments) {
- String runId = runService
- .createRun(new RunProfile(executionEnvironment, workflowBundle, DataBundles.createBundle()));
- assertEquals(State.CREATED, runService.getState(runId));
-
- WorkflowReport report = runService.getWorkflowReport(runId);
- System.out.println(report);
-
- runService.start(runId);
- assertTrue(waitForState(report, State.COMPLETED));
-
- Bundle outputBundle = runService.getDataBundle(runId);
- assertNotNull(outputBundle);
- Path outputs = DataBundles.getOutputs(outputBundle);
-
- Path outPort = DataBundles.getPort(outputs, "out");
- assertTrue(DataBundles.isList(outPort));
- List<Path> result = DataBundles.getList(outPort);
- assertEquals(35, result.size());
- assertEquals("1971.0", DataBundles.getStringValue(result.get(1)));
- assertEquals("2004.0", DataBundles.getStringValue(result.get(34)));
- }
- }
-
- @Test
- public void testRunSoaplab() throws Exception {
- // TODO find new soaplab service for testing
- WorkflowBundle workflowBundle = loadWorkflow("/t2flow/soaplab.t2flow");
-
- Set<ExecutionEnvironment> executionEnvironments = runService
- .getExecutionEnvironments(workflowBundle);
- assertTrue(executionEnvironments.size() > 0);
- for (ExecutionEnvironment executionEnvironment : executionEnvironments) {
- String runId = runService
- .createRun(new RunProfile(executionEnvironment, workflowBundle, DataBundles.createBundle()));
- assertEquals(State.CREATED, runService.getState(runId));
-
- WorkflowReport report = runService.getWorkflowReport(runId);
- System.out.println(report);
-
- runService.start(runId);
- assertTrue(waitForState(report, State.COMPLETED));
-
- Bundle outputBundle = runService.getDataBundle(runId);
- assertNotNull(outputBundle);
- Path outputs = DataBundles.getOutputs(outputBundle);
-
- assertTrue(checkResult(DataBundles.getPort(outputs, "sequence"),
- "ID X52524; SV 1; linear; genomic DNA; STD; INV; 4507 BP."));
- }
- }
-
- @Test
- public void testRunStringConstant() throws Exception {
- WorkflowBundle workflowBundle = loadWorkflow("/t2flow/stringconstant.t2flow");
-
- Set<ExecutionEnvironment> executionEnvironments = runService
- .getExecutionEnvironments(workflowBundle);
- assertTrue(executionEnvironments.size() > 0);
- for (ExecutionEnvironment executionEnvironment : executionEnvironments) {
- String runId = runService
- .createRun(new RunProfile(executionEnvironment, workflowBundle, DataBundles.createBundle()));
- WorkflowReport report = runService.getWorkflowReport(runId);
- assertEquals(State.CREATED, runService.getState(runId));
-
- runService.start(runId);
- assertTrue(waitForState(report, State.COMPLETED));
-
- Bundle outputBundle = runService.getDataBundle(runId);
- assertNotNull(outputBundle);
- Path outputs = DataBundles.getOutputs(outputBundle);
-
- assertTrue(checkResult(DataBundles.getPort(outputs, "out"), "Test Value"));
- }
- }
-
- @Test
- public void testRunTool() throws Exception {
- WorkflowBundle workflowBundle = loadWorkflow("/t2flow/tool.t2flow");
-
- Set<ExecutionEnvironment> executionEnvironments = runService
- .getExecutionEnvironments(workflowBundle);
- assertTrue(executionEnvironments.size() > 0);
- for (ExecutionEnvironment executionEnvironment : executionEnvironments) {
- String runId = runService
- .createRun(new RunProfile(executionEnvironment, workflowBundle, DataBundles.createBundle()));
- WorkflowReport report = runService.getWorkflowReport(runId);
- assertEquals(State.CREATED, runService.getState(runId));
-
- runService.start(runId);
- assertTrue(waitForState(report, State.COMPLETED));
-
- Bundle outputBundle = runService.getDataBundle(runId);
- assertNotNull(outputBundle);
- Path outputs = DataBundles.getOutputs(outputBundle);
-
- assertTrue(checkResult(DataBundles.getPort(outputs, "out"), "HelloWorld"));
- }
- }
-
- @Test
- public void testRunIteration() throws Exception {
- WorkflowBundle workflowBundle = loadWorkflow("/t2flow/iteration.t2flow");
-
- Set<ExecutionEnvironment> executionEnvironments = runService
- .getExecutionEnvironments(workflowBundle);
- assertTrue(executionEnvironments.size() > 0);
- for (ExecutionEnvironment executionEnvironment : executionEnvironments) {
- Bundle inputBundle = DataBundles.createBundle();
- Path inputs = DataBundles.getInputs(inputBundle);
- Path port = DataBundles.getPort(inputs, "in");
- DataBundles.setStringValue(port, "test");
-
- String runId = runService.createRun(new RunProfile(executionEnvironment,
- workflowBundle, inputBundle));
- assertEquals(State.CREATED, runService.getState(runId));
-
- WorkflowReport report = runService.getWorkflowReport(runId);
- System.out.println(report);
-
- runService.start(runId);
- assertTrue(waitForState(report, State.COMPLETED));
-
- Bundle outputBundle = runService.getDataBundle(runId);
- assertNotNull(outputBundle);
- Path outputs = DataBundles.getOutputs(outputBundle);
-
- Path crossPort = DataBundles.getPort(outputs, "cross");
- assertTrue(DataBundles.isList(crossPort));
- List<Path> crossResult = DataBundles.getList(crossPort);
- assertEquals(10, crossResult.size());
- assertEquals(10, DataBundles.getList(crossResult.get(0)).size());
- assertEquals(10, DataBundles.getList(crossResult.get(5)).size());
- assertEquals("test:0test:0", DataBundles.getStringValue(DataBundles.getListItem(DataBundles.getListItem(crossPort, 0), 0)));
- assertEquals("test:0test:1", DataBundles.getStringValue(DataBundles.getListItem(DataBundles.getListItem(crossPort, 0), 1)));
- assertEquals("test:4test:2", DataBundles.getStringValue(DataBundles.getListItem(DataBundles.getListItem(crossPort, 4), 2)));
- assertEquals("test:7test:6", DataBundles.getStringValue(DataBundles.getListItem(DataBundles.getListItem(crossPort, 7), 6)));
-
- Path dotPort = DataBundles.getPort(outputs, "dot");
- assertTrue(DataBundles.isList(dotPort));
- List<Path> dotResult = DataBundles.getList(dotPort);
- assertEquals(10, dotResult.size());
- assertEquals("test:0test:0", DataBundles.getStringValue(DataBundles.getListItem(dotPort, 0)));
- assertEquals("test:5test:5", DataBundles.getStringValue(DataBundles.getListItem(dotPort, 5)));
-
- Path crossdotPort = DataBundles.getPort(outputs, "crossdot");
- assertTrue(DataBundles.isList(crossdotPort));
- List<Path> crossdotResult = DataBundles.getList(crossdotPort);
- assertEquals(10, crossdotResult.size());
- assertEquals(10, DataBundles.getList(crossdotResult.get(0)).size());
- assertEquals(10, DataBundles.getList(crossdotResult.get(5)).size());
- assertEquals("test:0test:0test", DataBundles.getStringValue(DataBundles.getListItem(DataBundles.getListItem(crossdotPort, 0), 0)));
- assertEquals("test:0test:1test", DataBundles.getStringValue(DataBundles.getListItem(DataBundles.getListItem(crossdotPort, 0), 1)));
- assertEquals("test:4test:2test", DataBundles.getStringValue(DataBundles.getListItem(DataBundles.getListItem(crossdotPort, 4), 2)));
- assertEquals("test:7test:6test", DataBundles.getStringValue(DataBundles.getListItem(DataBundles.getListItem(crossdotPort, 7), 6)));
-
- Path dotcrossPort = DataBundles.getPort(outputs, "dotcross");
- assertTrue(DataBundles.isList(dotcrossPort));
- List<Path> dotcrossResult = DataBundles.getList(crossdotPort);
- assertEquals(10, dotcrossResult.size());
- assertEquals("test:0test:0test", DataBundles.getStringValue(DataBundles.getListItem(dotcrossPort, 0)));
- assertEquals("test:5test:5test", DataBundles.getStringValue(DataBundles.getListItem(dotcrossPort, 5)));
-
- Path dotdotPort = DataBundles.getPort(outputs, "dotdot");
- assertTrue(DataBundles.isList(dotdotPort));
- List<Path> dotdotResult = DataBundles.getList(crossdotPort);
- assertEquals(10, dotdotResult.size());
- assertEquals("test:0test:0test:0", DataBundles.getStringValue(DataBundles.getListItem(dotdotPort, 0)));
- assertEquals("test:5test:5test:5", DataBundles.getStringValue(DataBundles.getListItem(dotdotPort, 5)));
- }
- }
-
- @Test
- public void testRunWSDL() throws Exception {
- WorkflowBundle workflowBundle = loadWorkflow("/t2flow/wsdl.t2flow");
-
- Set<ExecutionEnvironment> executionEnvironments = runService
- .getExecutionEnvironments(workflowBundle);
- assertTrue(executionEnvironments.size() > 0);
- for (ExecutionEnvironment executionEnvironment : executionEnvironments) {
- String runId = runService
- .createRun(new RunProfile(executionEnvironment, workflowBundle, DataBundles.createBundle()));
- assertEquals(State.CREATED, runService.getState(runId));
-
- WorkflowReport report = runService.getWorkflowReport(runId);
- System.out.println(report);
-
- runService.start(runId);
- assertTrue(waitForState(report, State.COMPLETED));
-
- Bundle outputBundle = runService.getDataBundle(runId);
- assertNotNull(outputBundle);
- Path outputs = DataBundles.getOutputs(outputBundle);
-
- // assertTrue(checkResult(results.get("out"),
- // "Apache Axis version: 1.4\nBuilt on Apr 22, 2006 (06:55:48 PDT)"));
- assertTrue(checkResult(DataBundles.getPort(outputs, "out"),
- "Apache Axis version: 1.2\nBuilt on May 03, 2005 (02:20:24 EDT)"));
- }
- }
-
- @Test
- public void testRunWSDLSecure() throws Exception {
- credentialManager
- .addUsernameAndPasswordForService(
- new UsernamePassword("testuser", "testpasswd"),
- URI.create("http://heater.cs.man.ac.uk:7070/axis/services/HelloService-PlaintextPassword?wsdl"));
-
- WorkflowBundle workflowBundle = loadWorkflow("/t2flow/wsdl-secure.t2flow");
-
- Set<ExecutionEnvironment> executionEnvironments = runService
- .getExecutionEnvironments(workflowBundle);
- assertTrue(executionEnvironments.size() > 0);
- for (ExecutionEnvironment executionEnvironment : executionEnvironments) {
- String runId = runService
- .createRun(new RunProfile(executionEnvironment, workflowBundle, DataBundles.createBundle()));
- assertEquals(State.CREATED, runService.getState(runId));
-
- WorkflowReport report = runService.getWorkflowReport(runId);
- System.out.println(report);
-
- runService.start(runId);
- assertTrue(waitForState(report, State.COMPLETED));
-
- Bundle outputBundle = runService.getDataBundle(runId);
- assertNotNull(outputBundle);
- Path outputs = DataBundles.getOutputs(outputBundle);
-
- assertTrue(checkResult(DataBundles.getPort(outputs, "out"), "Hello Alan!"));
- }
- }
-
- @Test
- public void testRunWSDLSecureFull() throws Exception {
- credentialManager
- .addUsernameAndPasswordForService(
- new UsernamePassword("testuser", "testpasswd"),
- URI.create("http://heater.cs.man.ac.uk:7070/axis/services/HelloService-PlaintextPassword?wsdl"));
- credentialManager
- .addUsernameAndPasswordForService(
- new UsernamePassword("testuser", "testpasswd"),
- URI.create("http://heater.cs.man.ac.uk:7070/axis/services/HelloService-DigestPassword?wsdl"));
- credentialManager
- .addUsernameAndPasswordForService(
- new UsernamePassword("testuser", "testpasswd"),
- URI.create("http://heater.cs.man.ac.uk:7070/axis/services/HelloService-DigestPassword-Timestamp?wsdl"));
- credentialManager
- .addUsernameAndPasswordForService(
- new UsernamePassword("testuser", "testpasswd"),
- URI.create("http://heater.cs.man.ac.uk:7070/axis/services/HelloService-PlaintextPassword-Timestamp?wsdl"));
-
- WorkflowBundle workflowBundle = loadWorkflow("/t2flow/secure-ws.t2flow");
-
- Set<ExecutionEnvironment> executionEnvironments = runService
- .getExecutionEnvironments(workflowBundle);
- assertTrue(executionEnvironments.size() > 0);
- for (ExecutionEnvironment executionEnvironment : executionEnvironments) {
- String runId = runService
- .createRun(new RunProfile(executionEnvironment, workflowBundle, DataBundles.createBundle()));
- assertEquals(State.CREATED, runService.getState(runId));
-
- WorkflowReport report = runService.getWorkflowReport(runId);
- System.out.println(report);
-
- runService.start(runId);
- assertTrue(waitForState(report, State.COMPLETED));
-
- Bundle outputBundle = runService.getDataBundle(runId);
- assertNotNull(outputBundle);
- Path outputs = DataBundles.getOutputs(outputBundle);
-
- assertTrue(checkResult(DataBundles.getPort(outputs, "out_plaintext"), "Hello Alan!"));
- assertTrue(checkResult(DataBundles.getPort(outputs, "out_digest"), "Hello Stian!"));
- assertTrue(checkResult(DataBundles.getPort(outputs, "out_digest_timestamp"), "Hello David!"));
- assertTrue(checkResult(DataBundles.getPort(outputs, "out_plaintext_timestamp"), "Hello Alex!"));
- }
- }
-
- @Test
- public void testRunWSDLSecureSsh() throws Exception {
- credentialManager
- .addUsernameAndPasswordForService(
- new UsernamePassword("testuser", "testpasswd"),
- URI.create("https://heater.cs.man.ac.uk:7443/axis/services/HelloService-PlaintextPassword?wsdl"));
- credentialManager
- .addUsernameAndPasswordForService(
- new UsernamePassword("testuser", "testpasswd"),
- URI.create("https://heater.cs.man.ac.uk:7443/axis/services/HelloService-DigestPassword?wsdl"));
- credentialManager
- .addUsernameAndPasswordForService(
- new UsernamePassword("testuser", "testpasswd"),
- URI.create("https://heater.cs.man.ac.uk:7443/axis/services/HelloService-DigestPassword-Timestamp?wsdl"));
- credentialManager
- .addUsernameAndPasswordForService(
- new UsernamePassword("testuser", "testpasswd"),
- URI.create("https://heater.cs.man.ac.uk:7443/axis/services/HelloService-PlaintextPassword-Timestamp?wsdl"));
-
- URL trustedCertficateFileURL = getClass().getResource(
- "/security/tomcat_heater_certificate.pem");
- CertificateFactory certFactory = CertificateFactory.getInstance("X.509");
- X509Certificate trustedCertficate = (X509Certificate) certFactory
- .generateCertificate(trustedCertficateFileURL.openStream());
- credentialManager.addTrustedCertificate(trustedCertficate);
-
- WorkflowBundle workflowBundle = loadWorkflow("/t2flow/secure-ws-https.t2flow");
-
- Set<ExecutionEnvironment> executionEnvironments = runService
- .getExecutionEnvironments(workflowBundle);
- assertTrue(executionEnvironments.size() > 0);
- for (ExecutionEnvironment executionEnvironment : executionEnvironments) {
- String runId = runService
- .createRun(new RunProfile(executionEnvironment, workflowBundle, DataBundles.createBundle()));
- assertEquals(State.CREATED, runService.getState(runId));
-
- WorkflowReport report = runService.getWorkflowReport(runId);
- System.out.println(report);
-
- runService.start(runId);
- assertTrue(waitForState(report, State.COMPLETED));
-
- Bundle outputBundle = runService.getDataBundle(runId);
- assertNotNull(outputBundle);
- Path outputs = DataBundles.getOutputs(outputBundle);
-
- assertTrue(checkResult(DataBundles.getPort(outputs, "out_plaintext"), "Hello Alan!"));
- assertTrue(checkResult(DataBundles.getPort(outputs, "out_digest"), "Hello Stian!"));
- assertTrue(checkResult(DataBundles.getPort(outputs, "out_digest_timestamp"), "Hello David!"));
- assertTrue(checkResult(DataBundles.getPort(outputs, "out_plaintext_timestamp"), "Hello Alex!"));
- }
- }
-
- @Test
- public void testRunXMLSplitter() throws Exception {
- WorkflowBundle workflowBundle = loadWorkflow("/t2flow/xmlSplitter.t2flow");
-
- Set<ExecutionEnvironment> executionEnvironments = runService
- .getExecutionEnvironments(workflowBundle);
- assertTrue(executionEnvironments.size() > 0);
- for (ExecutionEnvironment executionEnvironment : executionEnvironments) {
- Bundle inputBundle = DataBundles.createBundle();
- Path inputs = DataBundles.getInputs(inputBundle);
- DataBundles.setStringValue(DataBundles.getPort(inputs, "firstName"), "John");
- DataBundles.setStringValue(DataBundles.getPort(inputs, "lastName"), "Smith");
- DataBundles.setStringValue(DataBundles.getPort(inputs, "age"), "21");
-
- String runId = runService.createRun(new RunProfile(executionEnvironment,
- workflowBundle, inputBundle));
- assertEquals(State.CREATED, runService.getState(runId));
-
- WorkflowReport report = runService.getWorkflowReport(runId);
- System.out.println(report);
-
- runService.start(runId);
- assertTrue(waitForState(report, State.COMPLETED));
-
- Bundle outputBundle = runService.getDataBundle(runId);
- assertNotNull(outputBundle);
- Path outputs = DataBundles.getOutputs(outputBundle);
-
- assertTrue(checkResult(DataBundles.getPort(outputs, "out"),
- "John Smith (21) of 40, Oxford Road. Manchester."));
- }
- }
-
- @Test
- public void testRunXPath() throws Exception {
- WorkflowBundle workflowBundle = loadWorkflow("/t2flow/xpath.t2flow");
-
- Set<ExecutionEnvironment> executionEnvironments = runService
- .getExecutionEnvironments(workflowBundle);
- assertTrue(executionEnvironments.size() > 0);
- for (ExecutionEnvironment executionEnvironment : executionEnvironments) {
- String runId = runService
- .createRun(new RunProfile(executionEnvironment, workflowBundle, DataBundles.createBundle()));
- assertEquals(State.CREATED, runService.getState(runId));
-
- WorkflowReport report = runService.getWorkflowReport(runId);
- System.out.println(report);
-
- runService.start(runId);
- assertTrue(waitForState(report, State.COMPLETED));
-
- Bundle outputBundle = runService.getDataBundle(runId);
- assertNotNull(outputBundle);
- Path outputs = DataBundles.getOutputs(outputBundle);
-
- assertTrue(checkResult(DataBundles.getPort(outputs, "out"), "<test-element>test</test-element>"));
- }
- }
-
- @Test
- public void testRunFromFile() throws Exception {
- WorkflowBundle workflowBundle = loadWorkflow("/t2flow/in-out.t2flow");
-
- Set<ExecutionEnvironment> executionEnvironments = runService
- .getExecutionEnvironments(workflowBundle);
- assertTrue(executionEnvironments.size() > 0);
- for (ExecutionEnvironment executionEnvironment : executionEnvironments) {
- Bundle inputBundle = DataBundles.createBundle();
- Path inputs = DataBundles.getInputs(inputBundle);
- File file = loadFile("/t2flow/input.txt");
- DataBundles.setReference(DataBundles.getPort(inputs, "in"), file.toURI());
- assertTrue(DataBundles.isReference(DataBundles.getPort(inputs, "in")));
- assertFalse(DataBundles.isValue(DataBundles.getPort(inputs, "in")));
-
- String runId = runService.createRun(new RunProfile(executionEnvironment,
- workflowBundle, inputBundle));
- assertEquals(State.CREATED, runService.getState(runId));
-
- WorkflowReport report = runService.getWorkflowReport(runId);
- System.out.println(report);
-
- runService.start(runId);
- assertTrue(waitForState(report, State.COMPLETED));
-
- Bundle outputBundle = runService.getDataBundle(runId);
- assertNotNull(outputBundle);
- Path outputs = DataBundles.getOutputs(outputBundle);
-
- assertTrue(checkResult(DataBundles.getPort(outputs, "out"), "test input value"));
- }
- }
-
-}