You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@nifi.apache.org by bb...@apache.org on 2019/04/09 14:19:56 UTC
[nifi] branch master updated: NIFI-5464: Consider ports invalid
unless they have both incoming and outgoing connections
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 <ma...@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 <bb...@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;
}