You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@nifi.apache.org by ma...@apache.org on 2020/08/31 19:56:53 UTC

[nifi] branch main updated: NIFI-7762 - support copy-paste on Disabled ports

This is an automated email from the ASF dual-hosted git repository.

markap14 pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/nifi.git


The following commit(s) were added to refs/heads/main by this push:
     new bdead4d  NIFI-7762 - support copy-paste on Disabled ports
bdead4d is described below

commit bdead4d040dab7c7b23328dcd3208627183b3506
Author: jmconte <je...@atos.net>
AuthorDate: Tue Aug 25 17:06:43 2020 +0200

    NIFI-7762 - support copy-paste on Disabled ports
---
 .../src/main/java/org/apache/nifi/connectable/Port.java      |  2 ++
 .../main/java/org/apache/nifi/controller/AbstractPort.java   |  1 +
 .../java/org/apache/nifi/controller/StandardFlowSnippet.java |  6 ++++++
 .../src/main/java/org/apache/nifi/web/util/SnippetUtils.java | 12 ++++++++++--
 4 files changed, 19 insertions(+), 2 deletions(-)

diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/connectable/Port.java b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/connectable/Port.java
index 907dd92..f04038e 100644
--- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/connectable/Port.java
+++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/connectable/Port.java
@@ -28,4 +28,6 @@ public interface Port extends Connectable {
      * Port a chance to initialize any resources needed.</p>
      */
     void onSchedulingStart();
+
+    void disable();
 }
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/AbstractPort.java b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/AbstractPort.java
index 9af1bd1..dcbb21e 100644
--- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/AbstractPort.java
+++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/AbstractPort.java
@@ -423,6 +423,7 @@ public abstract class AbstractPort implements Port {
         scheduledState.set(ScheduledState.RUNNING);
     }
 
+    @Override
     public void disable() {
         final boolean updated = scheduledState.compareAndSet(ScheduledState.STOPPED, ScheduledState.DISABLED);
         if (!updated) {
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/StandardFlowSnippet.java b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/StandardFlowSnippet.java
index 85e5984..215ec89 100644
--- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/StandardFlowSnippet.java
+++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/StandardFlowSnippet.java
@@ -308,6 +308,9 @@ public class StandardFlowSnippet implements FlowSnippet {
             inputPort.setProcessGroup(group);
             inputPort.setMaxConcurrentTasks(portDTO.getConcurrentlySchedulableTaskCount());
             inputPort.setComments(portDTO.getComments());
+            if (portDTO.getState().equals(ScheduledState.DISABLED.toString())) {
+                inputPort.disable();
+            }
             group.addInputPort(inputPort);
         }
 
@@ -333,6 +336,9 @@ public class StandardFlowSnippet implements FlowSnippet {
             outputPort.setProcessGroup(group);
             outputPort.setMaxConcurrentTasks(portDTO.getConcurrentlySchedulableTaskCount());
             outputPort.setComments(portDTO.getComments());
+            if (portDTO.getState().equals(ScheduledState.DISABLED.toString())) {
+                outputPort.disable();
+            }
             group.addOutputPort(outputPort);
         }
 
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-api/src/main/java/org/apache/nifi/web/util/SnippetUtils.java b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-api/src/main/java/org/apache/nifi/web/util/SnippetUtils.java
index 7e81c9b..00bbedc 100644
--- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-api/src/main/java/org/apache/nifi/web/util/SnippetUtils.java
+++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-api/src/main/java/org/apache/nifi/web/util/SnippetUtils.java
@@ -551,7 +551,11 @@ public final class SnippetUtils {
                     final PortDTO cp = dtoFactory.copy(portDTO);
                     cp.setId(generateId(portDTO.getId(), idGenerationSeed, isCopy));
                     cp.setParentGroupId(groupId);
-                    cp.setState(ScheduledState.STOPPED.toString());
+                    if (portDTO.getState() != null && portDTO.getState().equals(ScheduledState.DISABLED.toString())) {
+                        cp.setState(ScheduledState.DISABLED.toString());
+                    } else {
+                        cp.setState(ScheduledState.STOPPED.toString());
+                    }
                     inputPorts.add(cp);
 
                     final ConnectableDTO portConnectable = dtoFactory.createConnectableDto(cp, ConnectableType.INPUT_PORT);
@@ -576,7 +580,11 @@ public final class SnippetUtils {
                     final PortDTO cp = dtoFactory.copy(portDTO);
                     cp.setId(generateId(portDTO.getId(), idGenerationSeed, isCopy));
                     cp.setParentGroupId(groupId);
-                    cp.setState(ScheduledState.STOPPED.toString());
+                    if (portDTO.getState() != null && portDTO.getState().equals(ScheduledState.DISABLED.toString())) {
+                        cp.setState(ScheduledState.DISABLED.toString());
+                    } else {
+                        cp.setState(ScheduledState.STOPPED.toString());
+                    }
                     outputPorts.add(cp);
 
                     final ConnectableDTO portConnectable = dtoFactory.createConnectableDto(cp, ConnectableType.OUTPUT_PORT);