This is an automated email from the ASF dual-hosted git repository. bbende pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/nifi.git
The following commit(s) were added to refs/heads/master by this push: new 38db4e9 NIFI-5464: Consider ports invalid unless they have both incoming and outgoing connections 38db4e9 is described below commit 38db4e97cd619b3a3c46e2e6a2e71e25df98ad0b Author: Mark Payne <marka...@hotmail.com> AuthorDate: Mon Apr 8 16:28:58 2019 -0400 NIFI-5464: Consider ports invalid unless they have both incoming and outgoing connections This closes #3417. Signed-off-by: Bryan Bende <bbe...@apache.org> --- .../org/apache/nifi/connectable/LocalPort.java | 24 ++++++++++++++-------- 1 file changed, 16 insertions(+), 8 deletions(-) diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/connectable/LocalPort.java b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/connectable/LocalPort.java index f4baa16..5db8286 100644 --- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/connectable/LocalPort.java +++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/connectable/LocalPort.java @@ -50,20 +50,28 @@ public class LocalPort extends AbstractPort { @Override public boolean isValid() { - return !getConnections(Relationship.ANONYMOUS).isEmpty(); + return !getConnections(Relationship.ANONYMOUS).isEmpty() && hasIncomingConnection(); } @Override public Collection<ValidationResult> getValidationErrors() { final Collection<ValidationResult> validationErrors = new ArrayList<>(); - if (!isValid()) { - final ValidationResult error = new ValidationResult.Builder() - .explanation(String.format("Output connection for port '%s' is not defined.", getName())) - .subject(String.format("Port '%s'", getName())) - .valid(false) - .build(); - validationErrors.add(error); + if (getConnections(Relationship.ANONYMOUS).isEmpty()) { + validationErrors.add(new ValidationResult.Builder() + .explanation("Port has no outgoing connections") + .subject(String.format("Port '%s'", getName())) + .valid(false) + .build()); } + + if (!hasIncomingConnection()) { + validationErrors.add(new ValidationResult.Builder() + .explanation("Port has no incoming connections") + .subject(String.format("Port '%s'", getName())) + .valid(false) + .build()); + } + return validationErrors; }