@Override protected void doEditAction(ProcessorImpl processor) throws EditException { /* * Add a new InputPort object to the processor and also create * an appropriate NamedInputPortNode in any iteration * strategies. By default set the desired drill depth on each * iteration strategy node to the same as the input port, so * this won't automatically trigger iteration staging unless the * depth is altered on the iteration strategy itself.) */ if (processor.getInputPortWithName(port.getName()) != null) throw new EditException( "Attempt to create duplicate input port with name '" + port.getName() + "'"); processor.inputPorts.add((ProcessorInputPortImpl) port); for (IterationStrategyImpl is : processor.iterationStack .getStrategies()) { NamedInputPortNode nipn = new NamedInputPortNode( port.getName(), port.getDepth()); is.addInput(nipn); is.connectDefault(nipn); } } };