@Override protected void doEditAction(ProcessorImpl processor) throws EditException { if (processor.getInputPortWithName(port.getName())==null) throw new EditException("The processor doesn't have a port named:"+port.getName()); for (IterationStrategyImpl is : processor.iterationStack.getStrategies()) { is.removeInputByName(port.getName()); } processor.inputPorts.remove(port); }
@Override protected void doEditAction(ProcessorImpl processor) throws EditException { if (processor.getInputPortWithName(port.getName())==null) throw new EditException("The processor doesn't have a port named:"+port.getName()); for (IterationStrategyImpl is : processor.iterationStack.getStrategies()) { is.removeInputByName(port.getName()); } processor.inputPorts.remove(port); }
private EventHandlingInputPort findProcessorInputPort( Map<String, Processor> createdProcessors, String portName, String processorName) throws DeserializationException { EventHandlingInputPort result = null; Processor p = createdProcessors.get(processorName); if (p == null) throw new DeserializationException( "Unable to find processor named:" + processorName); for (ProcessorInputPort port : p.getInputPorts()) { if (port.getName().equals(portName)) { result = port; break; } } return result; }
private EventHandlingInputPort findProcessorInputPort( Map<String, Processor> createdProcessors, String portName, String processorName) throws DeserializationException { EventHandlingInputPort result = null; Processor p = createdProcessors.get(processorName); if (p == null) throw new DeserializationException( "Unable to find processor named:" + processorName); for (ProcessorInputPort port : p.getInputPorts()) { if (port.getName().equals(portName)) { result = port; break; } } return result; }
private Element processorInputPortsToXML(Processor processor) { Element inputPorts = new Element(PROCESSOR_INPUT_PORTS, T2_WORKFLOW_NAMESPACE); for (ProcessorInputPort port : processor.getInputPorts()) { Element portElement = new Element(PROCESSOR_PORT, T2_WORKFLOW_NAMESPACE); Element name = new Element(NAME, T2_WORKFLOW_NAMESPACE); Element depth = new Element(DEPTH, T2_WORKFLOW_NAMESPACE); name.setText(port.getName()); depth.setText(String.valueOf(port.getDepth())); portElement.addContent(name); portElement.addContent(depth); inputPorts.addContent(portElement); } return inputPorts; } }
public static ProcessorInputPort getProcessorInputPort(Processor processor, Activity<?> activity, InputPort activityInputPort) { ProcessorInputPort result = null; for (Entry<String, String> mapEntry : activity.getInputPortMapping() .entrySet()) { if (mapEntry.getValue().equals(activityInputPort.getName())) { for (ProcessorInputPort processorInputPort : processor .getInputPorts()) { if (processorInputPort.getName().equals(mapEntry.getKey())) { result = processorInputPort; break; } } break; } } return result; }
private Element processorInputPortsToXML(Processor processor) { Element inputPorts = new Element(PROCESSOR_INPUT_PORTS, T2_WORKFLOW_NAMESPACE); for (ProcessorInputPort port : processor.getInputPorts()) { Element portElement = new Element(PROCESSOR_PORT, T2_WORKFLOW_NAMESPACE); Element name = new Element(NAME, T2_WORKFLOW_NAMESPACE); Element depth = new Element(DEPTH, T2_WORKFLOW_NAMESPACE); name.setText(port.getName()); depth.setText(String.valueOf(port.getDepth())); portElement.addContent(name); portElement.addContent(depth); inputPorts.addContent(portElement); } return inputPorts; } }
public static ProcessorInputPort getProcessorInputPort(Processor processor, Activity<?> activity, InputPort activityInputPort) { ProcessorInputPort result = null; for (Entry<String, String> mapEntry : activity.getInputPortMapping() .entrySet()) { if (mapEntry.getValue().equals(activityInputPort.getName())) { for (ProcessorInputPort processorInputPort : processor .getInputPorts()) { if (processorInputPort.getName().equals(mapEntry.getKey())) { result = processorInputPort; break; } } break; } } return result; }
public static Edit<?> getRemoveProcessorInputPortEdit( ProcessorInputPort port) { List<Edit<?>> editList = new ArrayList<Edit<?>>(); Processor processor = port.getProcessor(); editList.add(edits.getRemoveProcessorInputPortEdit(port.getProcessor(), port)); for (Activity<?> activity : processor.getActivityList()) { editList.add(edits.getRemoveActivityInputPortMappingEdit(activity, port.getName())); } return new CompoundEdit(editList); }
public static Edit<?> getRemoveProcessorInputPortEdit( ProcessorInputPort port, Edits edits) { List<Edit<?>> editList = new ArrayList<Edit<?>>(); Processor processor = port.getProcessor(); editList.add(edits.getRemoveProcessorInputPortEdit(port.getProcessor(), port)); for (Activity<?> activity : processor.getActivityList()) { editList.add(edits.getRemoveActivityInputPortMappingEdit(activity, port.getName())); } return new CompoundEdit(editList); }
private void transferProcessor(List<Edit<?>> editList, Map<Object, Object> oldNewMapping, Dataflow nestedDataflow, Processor p) throws Exception { editList.add(edits.getRemoveProcessorEdit(currentDataflow, p)); Processor newProcessor = pasteProcessor(copyProcessor(p), nestedDataflow); oldNewMapping.put(p, newProcessor); for (ProcessorInputPort pip : p.getInputPorts()) for (ProcessorInputPort newPip : newProcessor.getInputPorts()) if (pip.getName().equals(newPip.getName())) { oldNewMapping.put(pip, newPip); break; } for (ProcessorOutputPort pop : p.getOutputPorts()) for (ProcessorOutputPort newPop : newProcessor.getOutputPorts()) if (pop.getName().equals(newPop.getName())) { oldNewMapping.put(pop, newPop); break; } }
private List<ProcessorInputPort> determineInputPortsForRemoval(Processor p,Activity<?>a) { List<ProcessorInputPort> result = new ArrayList<ProcessorInputPort>(); for (ProcessorInputPort pPort : p.getInputPorts()) { boolean found=false; for (ActivityInputPort aPort : a.getInputPorts()) { if (aPort.getName().equals(pPort.getName())) { if (pPort.getDepth() == aPort.getDepth()) { found=true; } break; } } if (!found) { result.add(pPort); } } return result; }
private List<ProcessorInputPort> determineInputPortsForRemoval(Processor p,Activity<?>a) { List<ProcessorInputPort> result = new ArrayList<ProcessorInputPort>(); for (ProcessorInputPort pPort : p.getInputPorts()) { boolean found=false; for (ActivityInputPort aPort : a.getInputPorts()) { if (aPort.getName().equals(pPort.getName())) { if (pPort.getDepth() == aPort.getDepth()) { found=true; } break; } } if (!found) { result.add(pPort); } } return result; }
@SuppressWarnings("null") @Test public void testBoundPortOverridesDefault() throws Exception { Dataflow dataflow = loadAndTranslateWorkflow("bound_port_overides_default.xml"); assertEquals("there should only be 2 processors",2,dataflow.getProcessors().size()); Processor processor_A=null; Processor processor_B=null; for (Processor p : dataflow.getProcessors()) { if (p.getLocalName().equals("Processor_A")) processor_A=p; if (p.getLocalName().equals("Processor_B")) processor_B=p; } assertNotNull("Could not find processor A",processor_A); assertNotNull("Could not find processor B",processor_B); assertEquals("processor_A should have no inputs",0,processor_A.getInputPorts().size()); assertEquals("processor_A should have 1 output",1,processor_A.getOutputPorts().size()); assertEquals("processor_B should have 1 input",1,processor_B.getInputPorts().size()); assertEquals("processor_B should have 1 input named input_1","input_1",processor_B.getInputPorts().get(0).getName()); assertEquals("processor_B should have 1 output",1,processor_B.getOutputPorts().size()); assertEquals("processor_B should have 1 activity",1,processor_B.getActivityList().size()); Activity<?>activity = processor_B.getActivityList().get(0); assertEquals("activity should have 3 input ports",3,activity.getInputPorts().size()); }
@SuppressWarnings("null") @Test public void testBoundPortOverridesDefault() throws Exception { Dataflow dataflow = loadAndTranslateWorkflow("bound_port_overides_default.xml"); assertEquals("there should only be 2 processors",2,dataflow.getProcessors().size()); Processor processor_A=null; Processor processor_B=null; for (Processor p : dataflow.getProcessors()) { if (p.getLocalName().equals("Processor_A")) processor_A=p; if (p.getLocalName().equals("Processor_B")) processor_B=p; } assertNotNull("Could not find processor A",processor_A); assertNotNull("Could not find processor B",processor_B); assertEquals("processor_A should have no inputs",0,processor_A.getInputPorts().size()); assertEquals("processor_A should have 1 output",1,processor_A.getOutputPorts().size()); assertEquals("processor_B should have 1 input",1,processor_B.getInputPorts().size()); assertEquals("processor_B should have 1 input named input_1","input_1",processor_B.getInputPorts().get(0).getName()); assertEquals("processor_B should have 1 output",1,processor_B.getOutputPorts().size()); assertEquals("processor_B should have 1 activity",1,processor_B.getActivityList().size()); Activity<?>activity = processor_B.getActivityList().get(0); assertEquals("activity should have 3 input ports",3,activity.getInputPorts().size()); }
@SuppressWarnings("null") @Test public void testRemovalOfUnboundPorts() throws Exception { Dataflow dataflow = loadAndTranslateWorkflow("unbound_ports.xml"); Processor processor_A=null; Processor processor_B=null; assertEquals("there should only be 2 processors",2,dataflow.getProcessors().size()); for (Processor p : dataflow.getProcessors()) { if (p.getLocalName().equals("Processor_A")) processor_A=p; if (p.getLocalName().equals("Processor_B")) processor_B=p; } assertNotNull("Could not find processor A",processor_A); assertNotNull("Could not find processor B",processor_B); assertEquals("processor_A should have no inputs",0,processor_A.getInputPorts().size()); assertEquals("processor_A should have 1 output",1,processor_A.getOutputPorts().size()); assertEquals("processor_B should have 1 input",1,processor_B.getInputPorts().size()); assertEquals("processor_B should have 1 input named input_1","input_1",processor_B.getInputPorts().get(0).getName()); assertEquals("processor_B should have 1 output",1,processor_B.getOutputPorts().size()); assertEquals("processor_B should have 1 activity",1,processor_B.getActivityList().size()); Activity<?>activity = processor_B.getActivityList().get(0); assertEquals("activity should have 3 input ports",3,activity.getInputPorts().size()); }
@SuppressWarnings("null") @Test public void testRemovalOfUnboundPorts() throws Exception { Dataflow dataflow = loadAndTranslateWorkflow("unbound_ports.xml"); Processor processor_A=null; Processor processor_B=null; assertEquals("there should only be 2 processors",2,dataflow.getProcessors().size()); for (Processor p : dataflow.getProcessors()) { if (p.getLocalName().equals("Processor_A")) processor_A=p; if (p.getLocalName().equals("Processor_B")) processor_B=p; } assertNotNull("Could not find processor A",processor_A); assertNotNull("Could not find processor B",processor_B); assertEquals("processor_A should have no inputs",0,processor_A.getInputPorts().size()); assertEquals("processor_A should have 1 output",1,processor_A.getOutputPorts().size()); assertEquals("processor_B should have 1 input",1,processor_B.getInputPorts().size()); assertEquals("processor_B should have 1 input named input_1","input_1",processor_B.getInputPorts().get(0).getName()); assertEquals("processor_B should have 1 output",1,processor_B.getOutputPorts().size()); assertEquals("processor_B should have 1 activity",1,processor_B.getActivityList().size()); Activity<?>activity = processor_B.getActivityList().get(0); assertEquals("activity should have 3 input ports",3,activity.getInputPorts().size()); }
@SuppressWarnings("null") @Test public void testBoundPortOverridesDefault() throws Exception { Dataflow dataflow = loadAndTranslateWorkflow("bound_port_overides_default.xml"); assertEquals("there should only be 2 processors",2,dataflow.getProcessors().size()); Processor processor_A=null; Processor processor_B=null; for (Processor p : dataflow.getProcessors()) { if (p.getLocalName().equals("Processor_A")) processor_A=p; if (p.getLocalName().equals("Processor_B")) processor_B=p; } assertNotNull("Could not find processor A",processor_A); assertNotNull("Could not find processor B",processor_B); assertEquals("processor_A should have no inputs",0,processor_A.getInputPorts().size()); assertEquals("processor_A should have 1 output",1,processor_A.getOutputPorts().size()); assertEquals("processor_B should have 1 input",1,processor_B.getInputPorts().size()); assertEquals("processor_B should have 1 input named input_1","input_1",processor_B.getInputPorts().get(0).getName()); assertEquals("processor_B should have 1 output",1,processor_B.getOutputPorts().size()); assertEquals("processor_B should have 1 activity",1,processor_B.getActivityList().size()); Activity<?>activity = processor_B.getActivityList().get(0); assertEquals("activity should have 3 input ports",3,activity.getInputPorts().size()); }
@SuppressWarnings("null") @Test public void testRemovalOfUnboundPorts() throws Exception { Dataflow dataflow = loadAndTranslateWorkflow("unbound_ports.xml"); Processor processor_A=null; Processor processor_B=null; assertEquals("there should only be 2 processors",2,dataflow.getProcessors().size()); for (Processor p : dataflow.getProcessors()) { if (p.getLocalName().equals("Processor_A")) processor_A=p; if (p.getLocalName().equals("Processor_B")) processor_B=p; } assertNotNull("Could not find processor A",processor_A); assertNotNull("Could not find processor B",processor_B); assertEquals("processor_A should have no inputs",0,processor_A.getInputPorts().size()); assertEquals("processor_A should have 1 output",1,processor_A.getOutputPorts().size()); assertEquals("processor_B should have 1 input",1,processor_B.getInputPorts().size()); assertEquals("processor_B should have 1 input named input_1","input_1",processor_B.getInputPorts().get(0).getName()); assertEquals("processor_B should have 1 output",1,processor_B.getOutputPorts().size()); assertEquals("processor_B should have 1 activity",1,processor_B.getActivityList().size()); Activity<?>activity = processor_B.getActivityList().get(0); assertEquals("activity should have 3 input ports",3,activity.getInputPorts().size()); }