Yes, we would need something similar based on the input and output
parameters for the cwl tool.

In Taverna 2, as the tutorial follows, the Activity implementation makes
the ports based on its Configuration (e.g. a REST activity makes port for
each {variable} in the URI template). So this would match that tutorial and
you would need to do something similar for your Taverna 2 DummyCwlActivity.

In Taverna 3 we realised this means you don't know the ports without
understanding the activity (having its plugin installed) - making it hard
to edit a workflow which plugin you have not got installed.

So we changed it to that the Activity input and output parts are defined
explicitly in the SCUFL2 model (
https://taverna.incubator.apache.org/javadoc/taverna-language/org/apache/taverna/scufl2/api/activity/Activity.html#setInputPorts-java.util.Set-)
- and in the Taverna 3 engine the responsibility for making the ports moved
from Activity.configure() to being done by the engine.

(The ActivityImpl.configure should still check the defined ports are still
valid according to its Configuration, but it's OK if the config implies
extra output ports that are not wired up in the workflow)

So in Taverna 3 the responsibility for making the activity ports falls on
the GUI part when the activity is added to the workflow, that is cwlbrowse.
I think there is a an ActivityFactory or something that is consulted by the
GUI on what ports come from a given config. I will have to look it up.
On 6 May 2016 7:24 p.m., "Thilina Manamgoda" <[email protected]> wrote:

Hi ,

So tutorial (
http://dev.mygrid.org.uk/wiki/display/developer/3.+Configuring+the+service+instance
)
show example of how to configure an Activity. Does configuring Input and
Output  ports  enough for CWL Activity to work ?.


regards,
Thilina.

Reply via email to