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 2016/06/08 12:40:44 UTC
[03/15] incubator-taverna-common-activities git commit: dependency
problem resolved
dependency problem resolved
Project: http://git-wip-us.apache.org/repos/asf/incubator-taverna-common-activities/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-taverna-common-activities/commit/6bb504ed
Tree: http://git-wip-us.apache.org/repos/asf/incubator-taverna-common-activities/tree/6bb504ed
Diff: http://git-wip-us.apache.org/repos/asf/incubator-taverna-common-activities/diff/6bb504ed
Branch: refs/heads/cwl-browse
Commit: 6bb504ed588e0627f1b5b8ebf504ef50d830caec
Parents: 6f71070
Author: ThilinaManamgoda <ma...@gmail.com>
Authored: Sat May 28 17:27:58 2016 +0530
Committer: ThilinaManamgoda <ma...@gmail.com>
Committed: Sat May 28 17:27:58 2016 +0530
----------------------------------------------------------------------
taverna-cwl-activity-ui/pom.xml | 13 +++-
.../CwlActivityConfigurationBean.java | 33 ---------
.../cwl/ui/serviceprovider/CwlServiceDesc.java | 18 +++++
.../ui/serviceprovider/CwlServiceProvider.java | 21 +++---
.../taverna/cwl/ui/serviceprovider/Testing.java | 32 +++++---
.../org/apache/taverna/cwl/CwlDumyActivity.java | 77 +++++++++++++++++++-
.../main/java/org/apache/taverna/cwl/Type.java | 23 ++++++
7 files changed, 155 insertions(+), 62 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-taverna-common-activities/blob/6bb504ed/taverna-cwl-activity-ui/pom.xml
----------------------------------------------------------------------
diff --git a/taverna-cwl-activity-ui/pom.xml b/taverna-cwl-activity-ui/pom.xml
index da02053..e14b203 100644
--- a/taverna-cwl-activity-ui/pom.xml
+++ b/taverna-cwl-activity-ui/pom.xml
@@ -63,7 +63,8 @@
<artifactId>jackson-databind</artifactId>
<version>${jackson.version}</version>
</dependency>
-<!-- =====================================These Dependencies were added later !!! =============================================================== -->
+ <!-- =====================================These Dependencies were added
+ later !!! =============================================================== -->
<dependency>
<groupId>org.yaml</groupId>
<artifactId>snakeyaml</artifactId>
@@ -74,12 +75,16 @@
<artifactId>activity-palette-api</artifactId>
<version>${t2.ui.api.version}</version>
</dependency>
-
- <!-- ==================================================================================================== -->
+ <dependency>
+ <artifactId>taverna-cwl-activity</artifactId>
+ <groupId>${project.groupId}</groupId>
+ <version>${project.version}</version>
+ </dependency>
+ <!-- ==================================================================================================== -->
</dependencies>
-
+
<!-- Added these properties to configure new dependencies -->
<properties>
<t2.ui.api.version>1.5</t2.ui.api.version>
http://git-wip-us.apache.org/repos/asf/incubator-taverna-common-activities/blob/6bb504ed/taverna-cwl-activity-ui/src/main/java/org/apache/taverna/cwl/ui/serviceprovider/CwlActivityConfigurationBean.java
----------------------------------------------------------------------
diff --git a/taverna-cwl-activity-ui/src/main/java/org/apache/taverna/cwl/ui/serviceprovider/CwlActivityConfigurationBean.java b/taverna-cwl-activity-ui/src/main/java/org/apache/taverna/cwl/ui/serviceprovider/CwlActivityConfigurationBean.java
deleted file mode 100644
index 81d6b5f..0000000
--- a/taverna-cwl-activity-ui/src/main/java/org/apache/taverna/cwl/ui/serviceprovider/CwlActivityConfigurationBean.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/*******************************************************************************
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *******************************************************************************/
-package org.apache.taverna.cwl.ui.serviceprovider;
-
-import java.util.Map;
-
-public class CwlActivityConfigurationBean {
-//This class holds the object which is produced by the ServiceProvider and contains the configurations that are need for the CWLActivity
-
- private Map cwlConfigurations;
-
- public Map getCwlConfigurations() {
- return cwlConfigurations;
- }
-
- public void setCwlConfigurations(Map cwlConfigurations) {
- this.cwlConfigurations = cwlConfigurations;
- }
-}
http://git-wip-us.apache.org/repos/asf/incubator-taverna-common-activities/blob/6bb504ed/taverna-cwl-activity-ui/src/main/java/org/apache/taverna/cwl/ui/serviceprovider/CwlServiceDesc.java
----------------------------------------------------------------------
diff --git a/taverna-cwl-activity-ui/src/main/java/org/apache/taverna/cwl/ui/serviceprovider/CwlServiceDesc.java b/taverna-cwl-activity-ui/src/main/java/org/apache/taverna/cwl/ui/serviceprovider/CwlServiceDesc.java
index 8759c2f..b35f32a 100644
--- a/taverna-cwl-activity-ui/src/main/java/org/apache/taverna/cwl/ui/serviceprovider/CwlServiceDesc.java
+++ b/taverna-cwl-activity-ui/src/main/java/org/apache/taverna/cwl/ui/serviceprovider/CwlServiceDesc.java
@@ -1,3 +1,19 @@
+/*******************************************************************************
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *******************************************************************************/
package org.apache.taverna.cwl.ui.serviceprovider;
import java.util.List;
@@ -5,6 +21,8 @@ import java.util.Map;
import javax.swing.Icon;
+import org.apache.taverna.cwl.CwlActivityConfigurationBean;
+
import net.sf.taverna.t2.servicedescriptions.ServiceDescription;
import net.sf.taverna.t2.workflowmodel.processor.activity.Activity;
http://git-wip-us.apache.org/repos/asf/incubator-taverna-common-activities/blob/6bb504ed/taverna-cwl-activity-ui/src/main/java/org/apache/taverna/cwl/ui/serviceprovider/CwlServiceProvider.java
----------------------------------------------------------------------
diff --git a/taverna-cwl-activity-ui/src/main/java/org/apache/taverna/cwl/ui/serviceprovider/CwlServiceProvider.java b/taverna-cwl-activity-ui/src/main/java/org/apache/taverna/cwl/ui/serviceprovider/CwlServiceProvider.java
index a6ade53..44cdbdc 100644
--- a/taverna-cwl-activity-ui/src/main/java/org/apache/taverna/cwl/ui/serviceprovider/CwlServiceProvider.java
+++ b/taverna-cwl-activity-ui/src/main/java/org/apache/taverna/cwl/ui/serviceprovider/CwlServiceProvider.java
@@ -36,34 +36,35 @@ public class CwlServiceProvider implements ServiceDescriptionProvider {
@Override
public void findServiceDescriptionsAsync(FindServiceDescriptionsCallBack callBack) {
+
+ // This is holding the CWL configuration beans
+ List<CwlServiceDesc> result = new ArrayList<CwlServiceDesc>();
+
+ File[] cwlFiles = getCwlFiles();
- //This is holding the CWL configuration beans
- List<CwlServiceDesc> result = new ArrayList<CwlServiceDesc>();
+ // Load the CWL file using SnakeYaml lib
+ Yaml cwlReader = new Yaml();
- File[] cwlFiles = getCwlFiles();
-
for (File file : cwlFiles) {
Map cwlFile = null;
- // Load the CWL file using SnakeYaml lib
- Yaml cwlReader = new Yaml();
+
try {
cwlFile = (Map) cwlReader.load(new FileInputStream(file));
} catch (FileNotFoundException e) {
e.printStackTrace();
}
if (cwlFile != null) {
- //Creating CWl service Description
+ // Creating CWl service Description
CwlServiceDesc cwlServiceDesc = new CwlServiceDesc();
cwlServiceDesc.setCwlConfiguration(cwlFile);
- //add to the result
+ // add to the result
result.add(cwlServiceDesc);
- //return the service description
+ // return the service description
callBack.partialResults(result);
}
}
callBack.finished();
-
}
http://git-wip-us.apache.org/repos/asf/incubator-taverna-common-activities/blob/6bb504ed/taverna-cwl-activity-ui/src/main/java/org/apache/taverna/cwl/ui/serviceprovider/Testing.java
----------------------------------------------------------------------
diff --git a/taverna-cwl-activity-ui/src/main/java/org/apache/taverna/cwl/ui/serviceprovider/Testing.java b/taverna-cwl-activity-ui/src/main/java/org/apache/taverna/cwl/ui/serviceprovider/Testing.java
index 0dfab96..9a7a015 100644
--- a/taverna-cwl-activity-ui/src/main/java/org/apache/taverna/cwl/ui/serviceprovider/Testing.java
+++ b/taverna-cwl-activity-ui/src/main/java/org/apache/taverna/cwl/ui/serviceprovider/Testing.java
@@ -5,10 +5,11 @@ import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FilenameFilter;
import java.util.ArrayList;
-import java.util.Arrays;
import java.util.HashMap;
import java.util.Map;
+import org.apache.taverna.cwl.CwlActivityConfigurationBean;
+import org.apache.taverna.cwl.Type;
import org.yaml.snakeyaml.Yaml;
public class Testing {
@@ -18,7 +19,8 @@ public class Testing {
private static final String TYPE = "type";
private static final String ARRAY = "array";
private static final String FILE = "File";
-
+ private static final String ITEMS = "items";
+ static int i=0;
public static void main(String[] args) {
File[] cwlFiles = getCwlFiles();
@@ -42,35 +44,43 @@ public class Testing {
}
private static void getInputs(CwlActivityConfigurationBean configurationBean) {
-
+
+ System.out.println(i);
+ i++;
Map cwlFile = configurationBean.getCwlConfigurations();
for (Object mainKey : cwlFile.keySet()) {
if (mainKey.equals(INPUTS)) {
ArrayList<Map> arrayList = (ArrayList<Map>) cwlFile.get(mainKey);
- processInputs(arrayList);
+
+ HashMap<String, Type> map = processInputs(arrayList);
+ for (String s:map.keySet() ) {
+ if(map.get(s).getType().equals(FILE)) System.out.println("ID: "+s+" type : File");
+
+ if(map.get(s).getType().equals(ARRAY)) System.out.println("ID :"+s+" type: Array items: "+map.get(s).getItems());
+ }
}
}
}
- private static HashMap<String, String> processInputs(ArrayList<Map> inputs) {
+ private static HashMap<String, Type> processInputs(ArrayList<Map> inputs) {
- HashMap<String, String> result = new HashMap<>();
+ HashMap<String, Type> result = new HashMap<>();
for (Map input : inputs) {
String currentInputId = (String) input.get(ID);
- System.out.println(currentInputId);
Map typeConfigurations;
- String type;
+ Type type = new Type();
try {
typeConfigurations = (Map) input.get(TYPE);
- type = (String) typeConfigurations.get(TYPE);
- System.out.println(type);
+ type.setType((String) typeConfigurations.get(TYPE));
+ type.setItems((String) typeConfigurations.get(ITEMS));
} catch (ClassCastException e) {
// This exception means type is described as single argument ex:
// type : File
- type = (String) input.get(TYPE);
+ type.setType((String)input.get(TYPE));
+ type.setItems(null);
}
result.put(currentInputId, type);
}
http://git-wip-us.apache.org/repos/asf/incubator-taverna-common-activities/blob/6bb504ed/taverna-cwl-activity/src/main/java/org/apache/taverna/cwl/CwlDumyActivity.java
----------------------------------------------------------------------
diff --git a/taverna-cwl-activity/src/main/java/org/apache/taverna/cwl/CwlDumyActivity.java b/taverna-cwl-activity/src/main/java/org/apache/taverna/cwl/CwlDumyActivity.java
index c8e24cc..d7147cc 100644
--- a/taverna-cwl-activity/src/main/java/org/apache/taverna/cwl/CwlDumyActivity.java
+++ b/taverna-cwl-activity/src/main/java/org/apache/taverna/cwl/CwlDumyActivity.java
@@ -16,6 +16,8 @@
*******************************************************************************/
package org.apache.taverna.cwl;
+import java.util.ArrayList;
+import java.util.HashMap;
import java.util.Map;
import org.apache.taverna.reference.T2Reference;
@@ -24,20 +26,87 @@ import org.apache.taverna.workflowmodel.processor.activity.ActivityConfiguration
import org.apache.taverna.workflowmodel.processor.activity.AsynchronousActivity;
import org.apache.taverna.workflowmodel.processor.activity.AsynchronousActivityCallback;
-public class CwlDumyActivity extends AbstractAsynchronousActivity<CwlActivityConfigurationBean> implements AsynchronousActivity<CwlActivityConfigurationBean>{
+public class CwlDumyActivity extends AbstractAsynchronousActivity<CwlActivityConfigurationBean>
+ implements AsynchronousActivity<CwlActivityConfigurationBean> {
+ private static final String INPUTS = "inputs";
+ private static final String ID = "id";
+ private static final String TYPE = "type";
+ private static final String ARRAY = "array";
+ private static final String FILE = "File";
+ private static final String ITEMS = "items";
@Override
public void configure(CwlActivityConfigurationBean arg0) throws ActivityConfigurationException {
removeInputs();
removeOutputs();
-
-
+
+ }
+
+ private void getInputs(CwlActivityConfigurationBean configurationBean) {
+
+ Map cwlFile = configurationBean.getCwlConfigurations();
+
+ // Get all input objects in
+ ArrayList<Map> inputs = (ArrayList<Map>) cwlFile.get(INPUTS);
+
+ HashMap<String, Type> processedInputs;
+
+ if (inputs != null) {
+ processedInputs = processInputs(inputs);
+
+ for (String inputId : processedInputs.keySet()) {
+ if (processedInputs.get(inputId).getType().equals(FILE))
+ System.out.println("ID: " + inputId + " type : File");
+
+ if (processedInputs.get(inputId).getType().equals(ARRAY))
+ System.out.println(
+ "ID :" + inputId + " type: Array items: " + processedInputs.get(inputId).getItems());
+ }
+
+ }
+ }
+
+ private HashMap<String, Type> processInputs(ArrayList<Map> inputs) {
+
+ HashMap<String, Type> result = new HashMap<>();
+
+ for (Map input : inputs) {
+
+ String Id = (String) input.get(ID);
+ // This require for nested type definitions
+ Map typeConfigurations;
+ // this object holds the type and if it's an array then type of the
+ // elements in the array
+ Type type = new Type();
+ try {
+ /*
+ * This part will go through nested type definitions
+ *
+ * type :
+ * type : array
+ * items : boolean
+ *
+ */
+
+ typeConfigurations = (Map) input.get(TYPE);
+ type.setType((String) typeConfigurations.get(TYPE));
+ type.setItems((String) typeConfigurations.get(ITEMS));
+ } catch (ClassCastException e) {
+ /*This exception means type is described as single argument ex:
+ * type : File
+ */
+ type.setType((String) input.get(TYPE));
+ type.setItems(null);
+ }
+ result.put(Id, type);
+ }
+ return result;
}
@Override
public void executeAsynch(Map<String, T2Reference> arg0, AsynchronousActivityCallback arg1) {
-
+
}
@Override
http://git-wip-us.apache.org/repos/asf/incubator-taverna-common-activities/blob/6bb504ed/taverna-cwl-activity/src/main/java/org/apache/taverna/cwl/Type.java
----------------------------------------------------------------------
diff --git a/taverna-cwl-activity/src/main/java/org/apache/taverna/cwl/Type.java b/taverna-cwl-activity/src/main/java/org/apache/taverna/cwl/Type.java
new file mode 100644
index 0000000..c9e0ff7
--- /dev/null
+++ b/taverna-cwl-activity/src/main/java/org/apache/taverna/cwl/Type.java
@@ -0,0 +1,23 @@
+package org.apache.taverna.cwl;
+
+public class Type {
+
+
+ private String type;
+ private String items;
+ public String getType() {
+ return type;
+ }
+ public void setType(String type) {
+ this.type = type;
+ }
+ public String getItems() {
+ return items;
+ }
+ public void setItems(String items) {
+ this.items = items;
+ }
+
+
+
+}