public static boolean checkValidWorkflow(ScuflModel workflow, Component parentComponent) { // Check if all output ports are connected DataConstraint[] dataConstraints = workflow.getDataConstraints(); Port[] outputPorts = workflow.getWorkflowSinkPorts(); outputPortLoop: for (Port outputPort : outputPorts) { for (DataConstraint dataLink : dataConstraints) { if (dataLink.getSink().equals(outputPort)) { continue outputPortLoop; } } warnNotValidOutputPort(outputPort, parentComponent); return false; } // Everything OK as far as we know return true; }
private void createOutputs(Dataflow dataflow) throws EditException { for (Port sinkPort : scuflModel.getWorkflowSinkPorts()) { edits.getCreateDataflowOutputPortEdit(dataflow, sinkPort.getName()) .doEdit(); for (DataflowOutputPort outputPort : dataflow.getOutputPorts()) { if (outputPort.getName().equals(sinkPort.getName())) { outputMap.put(sinkPort, outputPort); break; } } } }
Port[] wsp = model.getWorkflowSinkPorts(); Processor[] processors = sourcePort.getProcessor().getModel() .getProcessors();
@SuppressWarnings("unchecked") private void createOutputs(Dataflow dataflow) throws EditException { for (Port sinkPort : scuflModel.getWorkflowSinkPorts()) { List<String> typeList = sinkPort.getMetadata().getMIMETypeList(); edits.getCreateDataflowOutputPortEdit(dataflow, sinkPort.getName()) .doEdit(); for (DataflowOutputPort outputPort : dataflow.getOutputPorts()) { // firstly add the mime types to the new port if (outputPort.getName().equals(sinkPort.getName())) { for (String mimeType : typeList) { MimeType mimeTypeAnnotation = new MimeType(); mimeTypeAnnotation.setText(mimeType); try { EditsRegistry.getEdits().getAddAnnotationChainEdit( outputPort, mimeTypeAnnotation).doEdit(); } catch (EditException e) { // TODO Auto-generated catch block e.printStackTrace(); } } outputMap.put(sinkPort, outputPort); break; } } } }
public void testConstruction() { ScuflModel model = new ScuflModel(); assertFalse(model.offline); ArrayAssert.assertEquals(new Processor[0], model.getProcessors()); ArrayAssert.assertEquals(new DataConstraint[0], model .getDataConstraints()); ArrayAssert.assertEquals(new ConcurrencyConstraint[0], model .getConcurrencyConstraints()); ArrayAssert.assertEquals(new ScuflModelEventListener[0], model .getListeners()); ArrayAssert.assertEquals(new Port[0], model.getWorkflowSinkPorts()); ArrayAssert.assertEquals(new Port[0], model.getWorkflowSourcePorts()); assertNotNull(model.getDescription()); // NOTE: the log level does not seem to be used for anything assertEquals(0, model.getLogLevel()); }
boolean changed = false; Port[] outputs = theInternalModel.getWorkflowSinkPorts(); for (int i = 0; i < outputs.length; i++) {