当前位置: 首页>>代码示例>>Java>>正文


Java Workflow.getInputPorts方法代码示例

本文整理汇总了Java中org.apache.taverna.scufl2.api.core.Workflow.getInputPorts方法的典型用法代码示例。如果您正苦于以下问题:Java Workflow.getInputPorts方法的具体用法?Java Workflow.getInputPorts怎么用?Java Workflow.getInputPorts使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在org.apache.taverna.scufl2.api.core.Workflow的用法示例。


在下文中一共展示了Workflow.getInputPorts方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: makeInputDescriptor

import org.apache.taverna.scufl2.api.core.Workflow; //导入方法依赖的package包/类
/**
 * Constructs input descriptions.
 * 
 * @param run
 *            The run to build for.
 * @param ui
 *            The mechanism for building URIs.
 * @return The description of the <i>expected</i> inputs of the run.
 */
public InputDescription makeInputDescriptor(TavernaRun run, UriInfo ui) {
	InputDescription desc = new InputDescription();
	try {
		UriBuilder ub = getRunUriBuilder(run, ui);
		Workflow workflow = fillInFromWorkflow(run, ub, desc);
		ub = ub.path("input/{name}");
		for (InputWorkflowPort port : workflow.getInputPorts()) {
			InputPort in = desc.addPort(port.getName());
			in.href = ub.build(in.name);
			try {
				in.depth = port.getDepth();
			} catch (NumberFormatException ex) {
				in.depth = null;
			}
		}
	} catch (IOException e) {
		log.info("failure in conversion to .scufl2", e);
	}
	return desc;
}
 
开发者ID:apache,项目名称:incubator-taverna-server,代码行数:30,代码来源:ContentsDescriptorBuilder.java

示例2: assertHasInputPorts

import org.apache.taverna.scufl2.api.core.Workflow; //导入方法依赖的package包/类
protected void assertHasInputPorts(Workflow dataflow,
		String... expectedInputPorts) {
	Set<String> expectedNames = new HashSet<String>();
	for (String expected : expectedInputPorts) {
		expectedNames.add(expected);
	}
	Set<String> foundNames = new HashSet<String>();
	for (InputWorkflowPort port : dataflow.getInputPorts()) {
		String name = port.getName();
		foundNames.add(name);
	}

	Set<String> extras = new HashSet<String>(foundNames);
	extras.removeAll(expectedNames);
	assertTrue("Unexpected input port  " + extras, extras.isEmpty());

	Set<String> missing = new HashSet<String>(expectedNames);
	missing.removeAll(foundNames);
	assertTrue("Could not find input port  " + missing, missing.isEmpty());

}
 
开发者ID:apache,项目名称:incubator-taverna-workbench,代码行数:22,代码来源:AbstractTestHelper.java

示例3: addInputPorts

import org.apache.taverna.scufl2.api.core.Workflow; //导入方法依赖的package包/类
private void addInputPorts(Workflow workflow, Dataflow dataflow)
		throws EditException {
	for (InputWorkflowPort inputWorkflowPort : workflow.getInputPorts()) {
		DataflowInputPort dataflowInputPort = edits
				.createDataflowInputPort(inputWorkflowPort.getName(),
						inputWorkflowPort.getDepth(),
						inputWorkflowPort.getDepth(), dataflow);
		edits.getAddDataflowInputPortEdit(dataflow, dataflowInputPort)
				.doEdit();
		outputPorts.put(inputWorkflowPort,
				dataflowInputPort.getInternalOutputPort());
	}
}
 
开发者ID:apache,项目名称:incubator-taverna-engine,代码行数:14,代码来源:WorkflowToDataflowMapper.java

示例4: inheritDataLinkDepthsFromWorkflowInputPorts

import org.apache.taverna.scufl2.api.core.Workflow; //导入方法依赖的package包/类
private void inheritDataLinkDepthsFromWorkflowInputPorts() {
	Workflow workflow = validatorState.get().getWorkflow();
	for (InputWorkflowPort iwp : workflow.getInputPorts()) {
		Integer iwpDepth = iwp.getDepth();
		validatorState.get().getEventListener()
				.depthResolution(iwp, iwpDepth);
		validatorState.get().setPortResolvedDepth(iwp, iwpDepth);
		for (DataLink dl : validatorState.get().getOutgoingDataLinks(iwp)) {
			validatorState.get().getEventListener()
					.depthResolution(dl, iwpDepth);
			validatorState.get().setDataLinkResolvedDepth(dl, iwpDepth);
		}
	}
}
 
开发者ID:apache,项目名称:incubator-taverna-language,代码行数:15,代码来源:StructuralValidator.java

示例5: getMergeEdit

import org.apache.taverna.scufl2.api.core.Workflow; //导入方法依赖的package包/类
/**
 * Make an {@link Edit} that when performed merges the given source dataflow
 * into the destination dataflow.
 * <p>
 * Internally a copy is made of the source dataflow, to avoid modifying the
 * links and processors.
 *
 * @param sourceWorkflow
 *            Dataflow to merge from
 * @param prefix
 *            A prefix which will be inserted in front of the names for the
 *            merged workflow components.
 * @return An edit that can perform and undo the insertion of the components
 *         from the source dataflow.
 * @throws MergeException
 *             If the merge cannot be performed.
 */
public CompoundEdit getMergeEdit(Workflow sourceWorkflow, String prefix)
		throws MergeException {
	List<Edit<?>> compoundEdit = new ArrayList<>();

	Workflow workflow = copyWorkflow(sourceWorkflow);

	for (InputWorkflowPort input : workflow.getInputPorts()) {
		destinationWorkflow.getInputPorts().addWithUniqueName(input);
		destinationWorkflow.getInputPorts().remove(input);
		compoundEdit.add(new AddWorkflowInputPortEdit(destinationWorkflow, input));
	}
	for (OutputWorkflowPort output : workflow.getOutputPorts()) {
		destinationWorkflow.getOutputPorts().addWithUniqueName(output);
		destinationWorkflow.getOutputPorts().remove(output);
		compoundEdit.add(new AddWorkflowOutputPortEdit(destinationWorkflow, output));
	}
	for (Processor processor : workflow.getProcessors()) {
		processor.setName(prefix + processor.getName());
		compoundEdit.add(new AddProcessorEdit(destinationWorkflow, processor));
	}
	for (DataLink dataLink : workflow.getDataLinks()) {
		compoundEdit.add(new AddDataLinkEdit(destinationWorkflow, dataLink));
	}
	for (ControlLink controlLink : workflow.getControlLinks()) {
		compoundEdit.add(new AddChildEdit<Workflow>(destinationWorkflow, controlLink));
	}

	return new CompoundEdit(compoundEdit);

}
 
开发者ID:apache,项目名称:incubator-taverna-workbench,代码行数:48,代码来源:DataflowMerger.java

示例6: findInputPort

import org.apache.taverna.scufl2.api.core.Workflow; //导入方法依赖的package包/类
protected InputWorkflowPort findInputPort(Workflow wf, String name) {
	for (InputWorkflowPort inp : wf.getInputPorts()) {
		if (inp.getName().equals(name)) {
			return inp;
		}
	}
	throw new IllegalArgumentException("Unknown input port: " + name);
}
 
开发者ID:apache,项目名称:incubator-taverna-workbench,代码行数:9,代码来源:AbstractTestHelper.java

示例7: createTree

import org.apache.taverna.scufl2.api.core.Workflow; //导入方法依赖的package包/类
/**
 * Creates the tree model from a given workflow, for a given tree root.
 */
private void createTree(Workflow df, DefaultMutableTreeNode root) {
	// Create the four main node groups - inputs, outputs,
	// services, data links, control links and merges.
	DefaultMutableTreeNode inputs = new DefaultMutableTreeNode(INPUTS);
	DefaultMutableTreeNode outputs = new DefaultMutableTreeNode(OUTPUTS);
	DefaultMutableTreeNode services = new DefaultMutableTreeNode(PROCESSORS);
	DefaultMutableTreeNode datalinks = new DefaultMutableTreeNode(DATALINKS);
	DefaultMutableTreeNode controllinks = new DefaultMutableTreeNode(CONTROLLINKS);

	// Attach them to the root of the tree
	root.add(inputs);
	root.add(outputs);
	root.add(services);
	root.add(datalinks);
	root.add(controllinks);

	// Populate the workflow's inputs.
	for (InputWorkflowPort dataflowInput : df.getInputPorts())
		inputs.add(new DefaultMutableTreeNode(dataflowInput));

	// Populate the workflow's outputs.
	for (OutputWorkflowPort dataflowOutput : df.getOutputPorts())
		outputs.add(new DefaultMutableTreeNode(dataflowOutput));

	/*
	 * Populate the workflow's processors (which in turn can contain a
	 * nested workflow).
	 */
	NamedSet<Processor> processorsList = df.getProcessors();
	for (Processor processor : processorsList) {
		DefaultMutableTreeNode processorNode = new DefaultMutableTreeNode(
				processor);
		services.add(processorNode);

	    // A processor node can have children (input and output ports).
		for (InputProcessorPort inputPort : processor.getInputPorts())
			processorNode.add(new DefaultMutableTreeNode(inputPort));
		for (OutputProcessorPort outputPort : processor.getOutputPorts())
			processorNode.add(new DefaultMutableTreeNode(outputPort));
	}

	// Populate the workflow's data links.
	for (DataLink datalink: df.getDataLinks())
		datalinks.add(new DefaultMutableTreeNode(datalink));

	// Populate the workflow's control links.
	for (ControlLink controlLink : df.getControlLinks())
		controllinks.add(new DefaultMutableTreeNode(controlLink));
}
 
开发者ID:apache,项目名称:incubator-taverna-workbench,代码行数:53,代码来源:WorkflowExplorerTreeModel.java


注:本文中的org.apache.taverna.scufl2.api.core.Workflow.getInputPorts方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。