org.apache.taverna.scufl2.api.core.Workflow.getDataLinks()方法的使用及代码示例

x33g5p2x  于2022-02-03 转载在 其他  
字(6.3k)|赞(0)|评价(0)|浏览(91)

本文整理了Java中org.apache.taverna.scufl2.api.core.Workflow.getDataLinks()方法的一些代码示例,展示了Workflow.getDataLinks()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Workflow.getDataLinks()方法的具体详情如下:
包路径:org.apache.taverna.scufl2.api.core.Workflow
类名称:Workflow
方法名:getDataLinks

Workflow.getDataLinks介绍

[英]Returns the DataLinks. If there are no DataLinks an empty set is returned.
[中]返回DataLinks。如果没有DataLinks,则返回一个空集。

代码示例

代码示例来源:origin: org.apache.taverna.language/taverna-scufl2-api

@Override
public void setParent(Workflow parent) {
  if (this.parent != null && this.parent != parent)
    this.parent.getDataLinks().remove(this);
  this.parent = parent;
  if (parent != null)
    parent.getDataLinks().add(this);
}

代码示例来源:origin: org.apache.taverna.language/taverna-scufl2-api

@SuppressWarnings("unchecked")
public List<DataLink> datalinksFrom(SenderPort senderPort) {
  Workflow wf = findParent(Workflow.class, (Child<Workflow>) senderPort);
  List<DataLink> links = new ArrayList<>();
  for (DataLink link : wf.getDataLinks())
    if (link.getReceivesFrom().equals(senderPort))
      links.add(link);
  Collections.sort(links);
  return links;
}

代码示例来源:origin: org.apache.taverna.language/taverna-scufl2-api

@SuppressWarnings("unchecked")
public List<DataLink> datalinksTo(ReceiverPort receiverPort) {
  Workflow wf = findParent(Workflow.class, (Child<Workflow>) receiverPort);
  List<DataLink> links = new ArrayList<>();
  for (DataLink link : wf.getDataLinks())
    if (link.getSendsTo().equals(receiverPort))
      links.add(link);
  Collections.sort(links);
  return links;
}

代码示例来源:origin: org.apache.taverna.language/taverna-scufl2-api

public void clearWorkflowData() {
    for (DataLink dl : workflow.getDataLinks())
      dataLinkResolvedDepthMap.remove(dl);
    for (InputWorkflowPort iwp : workflow.getInputPorts()) {
      senderDataLinkMap.remove(iwp);
      portResolvedDepthMap.remove(iwp);
    }
    for (Processor p : workflow.getProcessors()) {
      for (InputProcessorPort ipp : p.getInputPorts()) {
        portResolvedDepthMap.remove(ipp);
        receiverDataLinkMap.remove(ipp);
      }
      for (OutputProcessorPort opp : p.getOutputPorts()) {
        portResolvedDepthMap.remove(opp);
        senderDataLinkMap.remove(opp);
      }
    }
    for (OutputWorkflowPort owp : workflow.getOutputPorts()) {
      portResolvedDepthMap.remove(owp);
      receiverDataLinkMap.remove(owp);
    }
  }
}

代码示例来源:origin: org.apache.taverna.language/taverna-scufl2-api

private void rememberDataLinkConnections() {
  Workflow workflow = validatorState.get().getWorkflow();
  for (DataLink dl : workflow.getDataLinks()) {
    validatorState.get().getEventListener().dataLinkSender(dl);
    validatorState.get().rememberDataLinkSender(dl);
    validatorState.get().getEventListener().dataLinkReceiver(dl);
    validatorState.get().rememberDataLinkReceiver(dl);
  }
}

代码示例来源:origin: org.apache.taverna.language/taverna-scufl2-api

@Override
public boolean accept(Visitor visitor) {
  if (visitor.visitEnter(this)) {
    List<WorkflowBean> children = new ArrayList<>();
    children.addAll(getInputPorts());
    children.addAll(getOutputPorts());
    children.addAll(getProcessors());
    children.addAll(getDataLinks());
    children.addAll(getControlLinks());
    children.add(getCurrentRevision());
    for (WorkflowBean bean : children)
      if (!bean.accept(visitor))
        break;
  }
  return visitor.visitLeave(this);
}

代码示例来源:origin: org.apache.taverna.language/taverna-scufl2-api

@Test
public void dataLinkNotAddedTwice() throws Exception {
  assertEquals(3, workflow.getDataLinks().size());
  DataLink dl1 = workflow.getDataLinks().iterator().next();
  assertTrue(workflow.getDataLinks().contains(dl1));
  workflow.getDataLinks().add(dl1);
  dl1.setParent(workflow);
  // This could happen because dataLink.compareTo() calls
  // .compareTo() on the sender/receiver link, and if 
  // their parents was null at insertion and non-null
  // later, the TreeSet order got messed up.
  assertEquals(3, workflow.getDataLinks().size());
}

代码示例来源:origin: org.apache.taverna.language/taverna-scufl2-api

@Override
public void visitWorkflow(Workflow bean) {
  Set<DataLink> dataLinks = bean.getDataLinks();
  Set<ControlLink> controlLinks = bean.getControlLinks();
  
  // ports are done in Ported
  
  NamedSet<Processor> processors = bean.getProcessors();
  URI workflowIdentifier = bean.getIdentifier();
  
  if (workflowIdentifier != null) {
    if (!workflowIdentifier.isAbsolute())
      listener.nonAbsoluteURI(bean, "workflowIdentifier", workflowIdentifier);
    else if (workflowIdentifier.getScheme().equals("file"))
      listener.nonAbsoluteURI(bean, "workflowIdentifier", workflowIdentifier);
  }
  
  if (checkComplete) {
    if (dataLinks == null)
      listener.nullField(bean, "dataLinks");
    if (controlLinks == null)
      listener.nullField(bean, "controlLinks");
    if (processors == null)
      listener.nullField(bean, "processors");
    if (workflowIdentifier == null)
      listener.nullField(bean, "workflowIdentifier");
  }
}

代码示例来源:origin: org.apache.taverna.language/taverna-scufl2-api

@SuppressWarnings({ "unchecked", "unused" })
@Test
public void expectedOrder() throws Exception {
  Workflow wf = new Workflow();
  wf.setName("wf");
  InputWorkflowPort a = new InputWorkflowPort(wf, "a");
  InputWorkflowPort b = new InputWorkflowPort(wf, "b");
  InputWorkflowPort c = new InputWorkflowPort(wf, "c");
  OutputWorkflowPort x = new OutputWorkflowPort(wf, "x");
  OutputWorkflowPort y = new OutputWorkflowPort(wf, "y");
  OutputWorkflowPort z = new OutputWorkflowPort(wf, "z");
  DataLink c_x = new DataLink(wf, c, x);
  DataLink b_x = new DataLink(wf, b, x);
  DataLink b_z = new DataLink(wf, b, z);
  DataLink a_z = new DataLink(wf, a, z);
  DataLink a_x = new DataLink(wf, a, x);
  ArrayList<DataLink> links = new ArrayList<DataLink>(wf.getDataLinks());
  assertEquals(Arrays.asList(a_x, a_z, b_x, b_z, c_x), links);
  Collections.shuffle(links);
  Collections.sort(links);
  assertEquals(Arrays.asList(a_x, a_z, b_x, b_z, c_x), links);
}

代码示例来源:origin: org.apache.taverna.language/taverna-scufl2-api

a_null.setParent(wf);
ArrayList<DataLink> links = new ArrayList<DataLink>(wf.getDataLinks());
assertEquals(Arrays.asList(null_null, null_z, a_null, a_z), links);

代码示例来源:origin: org.apache.taverna.language/taverna-scufl2-api

for (DataLink dl : wf.getDataLinks())
  links.add(datalink(dl.getReceivesFrom()) + " -> " + datalink(dl.getSendsTo()));
Collections.sort(links);

代码示例来源:origin: org.apache.taverna.language/taverna-scufl2-api

pNested.getOutputPorts().add(pNested_o);
wf1.getDataLinks().add(new DataLink(wf1, p1_y2, pNested_i));
wf1.getDataLinks().add(new DataLink(wf1, p1_y2, p4_x2));
wf1.getDataLinks().add(new DataLink(wf1, pNested_o, p1_y1));
wf1.getDataLinks().add(new DataLink(wf1, p4_y, wf1_out1));

相关文章