Stian Soiland-Reyes created TAVERNA-1002:
--------------------------------------------
Summary: Update taverna-iteration-strategy-ui for scufl2
Key: TAVERNA-1002
URL: https://issues.apache.org/jira/browse/TAVERNA-1002
Project: Apache Taverna
Issue Type: Task
Components: Taverna Workbench
Reporter: Stian Soiland-Reyes
taverna-iteration-strategy-ui used to edit the TreeModel bound directly to the
engine's CrossProduct (which subclass DefaultMutableTreeNode)
As the workbench in Taverna 3 needs to edit the SCUFL2 model instead, I've
started an attempt to update this code, but I'm afraid I have to stop midway
due to time constraints.
I've added two alternatives:
IterationStrategyTreeModel is a TreeModel view of a SCUFL2
IterationStrategyTopNode tree. To finish this it just need to have support for
the change listeners - which needs to be notified from the buttons if anything
is added/removed/moved.
or IterationStrategyTreeNode, which shows an individual SCUFL2
IterationStrategyNode as a TreeNode, this can then be used with a
DefaultTreeModel which would handle the listener part. The downside here is
that it will make lots of intermediate IterationStrategyTreeNode instances -
but as iteration strategies are quite small (e.g. no more than 10 input ports)
the overhead is probably negligible.
The remaining work is to:
a) Finish updating IterationStrategyTree to work with either of the above models
b) Update the actions from IterationStrategyEditorControl to manipulate the
SCUFL2 iteration strategy -- and notify the tree if needed.
c) Test it :) There's a test RunIterationStrategyEditor that can be run
standalone.
d) Remove dependencies on taverna-workflowmodel-api
e) If brave - add support for multiple layers of iteration stack. Each could
drill down to a different port depth, so the depth would need to be exposed.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)