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 2015/03/27 17:44:40 UTC

[1/2] incubator-nifi git commit: NIFI-250: Fixed bug when restoring Reporting Tasks on NCM; added documentation to some services; fixed bugs in Standard Validators

Repository: incubator-nifi
Updated Branches:
  refs/heads/NIFI-250 92df0d7cc -> 1efa053b6


NIFI-250: Fixed bug when restoring Reporting Tasks on NCM; added documentation to some services; fixed bugs in Standard Validators


Project: http://git-wip-us.apache.org/repos/asf/incubator-nifi/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-nifi/commit/eaa8c51f
Tree: http://git-wip-us.apache.org/repos/asf/incubator-nifi/tree/eaa8c51f
Diff: http://git-wip-us.apache.org/repos/asf/incubator-nifi/diff/eaa8c51f

Branch: refs/heads/NIFI-250
Commit: eaa8c51f973b837ee5c41bb9fb7d09e98cd41824
Parents: ffb4e6b
Author: Mark Payne <ma...@hotmail.com>
Authored: Fri Mar 27 12:42:32 2015 -0400
Committer: Mark Payne <ma...@hotmail.com>
Committed: Fri Mar 27 12:42:32 2015 -0400

----------------------------------------------------------------------
 .../nifi/processor/util/StandardValidators.java | 20 ++++++++++----------
 .../client/socket/EndpointConnectionPool.java   |  2 +-
 .../socket/TestEndpointConnectionStatePool.java |  4 ++--
 .../cluster/manager/impl/WebClusterManager.java |  8 ++++----
 .../DistributedMapCacheClientService.java       |  3 +++
 .../DistributedSetCacheClientService.java       |  5 ++++-
 .../nifi/http/StandardHttpContextMap.java       |  9 +++++++++
 7 files changed, 33 insertions(+), 18 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/eaa8c51f/nifi/nifi-commons/nifi-processor-utilities/src/main/java/org/apache/nifi/processor/util/StandardValidators.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-commons/nifi-processor-utilities/src/main/java/org/apache/nifi/processor/util/StandardValidators.java b/nifi/nifi-commons/nifi-processor-utilities/src/main/java/org/apache/nifi/processor/util/StandardValidators.java
index a22e7bb..d1621ed 100644
--- a/nifi/nifi-commons/nifi-processor-utilities/src/main/java/org/apache/nifi/processor/util/StandardValidators.java
+++ b/nifi/nifi-commons/nifi-processor-utilities/src/main/java/org/apache/nifi/processor/util/StandardValidators.java
@@ -236,7 +236,7 @@ public class StandardValidators {
         @Override
         public ValidationResult validate(final String subject, final String input, final ValidationContext context) {
             if ( context.isExpressionLanguageSupported(subject) && context.isExpressionLanguagePresent(input) ) {
-                return new ValidationResult.Builder().subject(subject).input(input).explanation("Expression Language Present").build();
+                return new ValidationResult.Builder().subject(subject).input(input).explanation("Expression Language Present").valid(true).build();
             }
 
             try {
@@ -254,7 +254,7 @@ public class StandardValidators {
         @Override
         public ValidationResult validate(final String subject, final String input, final ValidationContext context) {
             if ( context.isExpressionLanguageSupported(subject) && context.isExpressionLanguagePresent(input) ) {
-                return new ValidationResult.Builder().subject(subject).input(input).explanation("Expression Language Present").build();
+                return new ValidationResult.Builder().subject(subject).input(input).explanation("Expression Language Present").valid(true).build();
             }
 
             try {
@@ -271,7 +271,7 @@ public class StandardValidators {
         @Override
         public ValidationResult validate(final String subject, final String input, final ValidationContext context) {
             if ( context.isExpressionLanguageSupported(subject) && context.isExpressionLanguagePresent(input) ) {
-                return new ValidationResult.Builder().subject(subject).input(input).explanation("Expression Language Present").build();
+                return new ValidationResult.Builder().subject(subject).input(input).explanation("Expression Language Present").valid(true).build();
             }
 
             if (input == null) {
@@ -289,7 +289,7 @@ public class StandardValidators {
         @Override
         public ValidationResult validate(final String subject, final String input, final ValidationContext context) {
             if ( context.isExpressionLanguageSupported(subject) && context.isExpressionLanguagePresent(input) ) {
-                return new ValidationResult.Builder().subject(subject).input(input).explanation("Expression Language Present").build();
+                return new ValidationResult.Builder().subject(subject).input(input).explanation("Expression Language Present").valid(true).build();
             }
 
             if (input == null) {
@@ -319,7 +319,7 @@ public class StandardValidators {
             @Override
             public ValidationResult validate(final String subject, final String input, final ValidationContext context) {
                 if ( context.isExpressionLanguageSupported(subject) && context.isExpressionLanguagePresent(input) ) {
-                    return new ValidationResult.Builder().subject(subject).input(input).explanation("Expression Language Present").build();
+                    return new ValidationResult.Builder().subject(subject).input(input).explanation("Expression Language Present").valid(true).build();
                 }
 
                 try {
@@ -347,7 +347,7 @@ public class StandardValidators {
             @Override
             public ValidationResult validate(final String subject, final String input, final ValidationContext context) {
                 if ( context.isExpressionLanguageSupported(subject) && context.isExpressionLanguagePresent(input) ) {
-                    return new ValidationResult.Builder().subject(subject).input(input).explanation("Expression Language Present").build();
+                    return new ValidationResult.Builder().subject(subject).input(input).explanation("Expression Language Present").valid(true).build();
                 }
 
                 final ValidationResult vr = DATA_SIZE_VALIDATOR.validate(subject, input, context);
@@ -372,7 +372,7 @@ public class StandardValidators {
             @Override
             public ValidationResult validate(final String subject, final String input, final ValidationContext context) {
                 if ( context.isExpressionLanguageSupported(subject) && context.isExpressionLanguagePresent(input) ) {
-                    return new ValidationResult.Builder().subject(subject).input(input).explanation("Expression Language Present").build();
+                    return new ValidationResult.Builder().subject(subject).input(input).explanation("Expression Language Present").valid(true).build();
                 }
 
                 final boolean matches = pattern.matcher(input).matches();
@@ -457,7 +457,7 @@ public class StandardValidators {
             @Override
             public ValidationResult validate(final String subject, final String input, final ValidationContext context) {
                 if ( context.isExpressionLanguageSupported(subject) && context.isExpressionLanguagePresent(input) ) {
-                    return new ValidationResult.Builder().subject(subject).input(input).explanation("Expression Language Present").build();
+                    return new ValidationResult.Builder().subject(subject).input(input).explanation("Expression Language Present").valid(true).build();
                 }
 
                 String reason = null;
@@ -503,7 +503,7 @@ public class StandardValidators {
         @Override
         public ValidationResult validate(final String subject, final String input, final ValidationContext context) {
             if ( context.isExpressionLanguageSupported(subject) && context.isExpressionLanguagePresent(input) ) {
-                return new ValidationResult.Builder().subject(subject).input(input).explanation("Expression Language Present").build();
+                return new ValidationResult.Builder().subject(subject).input(input).explanation("Expression Language Present").valid(true).build();
             }
 
             if (input == null) {
@@ -628,7 +628,7 @@ public class StandardValidators {
             @Override
             public ValidationResult validate(final String subject, final String input, final ValidationContext context) {
                 if ( context.isExpressionLanguageSupported(subject) && context.isExpressionLanguagePresent(input) ) {
-                    return new ValidationResult.Builder().subject(subject).input(input).explanation("Expression Language Present").build();
+                    return new ValidationResult.Builder().subject(subject).input(input).explanation("Expression Language Present").valid(true).build();
                 }
 
                 final ControllerService svc = context.getControllerServiceLookup().getControllerService(input);

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/eaa8c51f/nifi/nifi-commons/nifi-site-to-site-client/src/main/java/org/apache/nifi/remote/client/socket/EndpointConnectionPool.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-commons/nifi-site-to-site-client/src/main/java/org/apache/nifi/remote/client/socket/EndpointConnectionPool.java b/nifi/nifi-commons/nifi-site-to-site-client/src/main/java/org/apache/nifi/remote/client/socket/EndpointConnectionPool.java
index e80f328..daf52b4 100644
--- a/nifi/nifi-commons/nifi-site-to-site-client/src/main/java/org/apache/nifi/remote/client/socket/EndpointConnectionPool.java
+++ b/nifi/nifi-commons/nifi-site-to-site-client/src/main/java/org/apache/nifi/remote/client/socket/EndpointConnectionPool.java
@@ -700,7 +700,7 @@ public class EndpointConnectionPool {
             final int flowFileCount = nodeInfo.getTotalFlowFiles();
             // don't allow any node to get more than 80% of the data
             final double percentageOfFlowFiles = Math.min(0.8D, ((double) flowFileCount / (double) totalFlowFileCount));
-            final double relativeWeighting = (direction == TransferDirection.RECEIVE) ? (1 - percentageOfFlowFiles) : percentageOfFlowFiles;
+            final double relativeWeighting = (direction == TransferDirection.SEND) ? (1 - percentageOfFlowFiles) : percentageOfFlowFiles;
             final int entries = Math.max(1, (int) (numDestinations * relativeWeighting));
             
             entryCountMap.put(nodeInfo, Math.max(1, entries));

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/eaa8c51f/nifi/nifi-commons/nifi-site-to-site-client/src/test/java/org/apache/nifi/remote/client/socket/TestEndpointConnectionStatePool.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-commons/nifi-site-to-site-client/src/test/java/org/apache/nifi/remote/client/socket/TestEndpointConnectionStatePool.java b/nifi/nifi-commons/nifi-site-to-site-client/src/test/java/org/apache/nifi/remote/client/socket/TestEndpointConnectionStatePool.java
index cb7af08..c5cca78 100644
--- a/nifi/nifi-commons/nifi-site-to-site-client/src/test/java/org/apache/nifi/remote/client/socket/TestEndpointConnectionStatePool.java
+++ b/nifi/nifi-commons/nifi-site-to-site-client/src/test/java/org/apache/nifi/remote/client/socket/TestEndpointConnectionStatePool.java
@@ -39,7 +39,7 @@ public class TestEndpointConnectionStatePool {
         collection.add(new NodeInformation("ShouldGetMedium", 5, 5555, true, 4096));
 
         clusterNodeInfo.setNodeInformation(collection);
-        final List<PeerStatus> destinations = EndpointConnectionPool.formulateDestinationList(clusterNodeInfo, TransferDirection.SEND);
+        final List<PeerStatus> destinations = EndpointConnectionPool.formulateDestinationList(clusterNodeInfo, TransferDirection.RECEIVE);
         for ( final PeerStatus peerStatus : destinations ) {
             System.out.println(peerStatus.getPeerDescription());
         }
@@ -53,7 +53,7 @@ public class TestEndpointConnectionStatePool {
         collection.add(new NodeInformation("ShouldGetLots", 2, 2222, true, 50000));
 
         clusterNodeInfo.setNodeInformation(collection);
-        final List<PeerStatus> destinations = EndpointConnectionPool.formulateDestinationList(clusterNodeInfo, TransferDirection.SEND);
+        final List<PeerStatus> destinations = EndpointConnectionPool.formulateDestinationList(clusterNodeInfo, TransferDirection.RECEIVE);
         for ( final PeerStatus peerStatus : destinations ) {
             System.out.println(peerStatus.getPeerDescription());
         }

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/eaa8c51f/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster/src/main/java/org/apache/nifi/cluster/manager/impl/WebClusterManager.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster/src/main/java/org/apache/nifi/cluster/manager/impl/WebClusterManager.java b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster/src/main/java/org/apache/nifi/cluster/manager/impl/WebClusterManager.java
index 0b7afda..9752ed7 100644
--- a/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster/src/main/java/org/apache/nifi/cluster/manager/impl/WebClusterManager.java
+++ b/nifi/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster/src/main/java/org/apache/nifi/cluster/manager/impl/WebClusterManager.java
@@ -947,10 +947,10 @@ public class WebClusterManager implements HttpClusterManager, ProtocolHandler, C
                 final String scheduleStateValue = DomUtils.getChild(taskElement, "scheduledState").getTextContent().trim();
                 final ScheduledState scheduledState = ScheduledState.valueOf(scheduleStateValue);
                 
-                //optional task-specific properties
-                for (final Element optionalProperty : DomUtils.getChildElementsByTagName(taskElement, "property")) {
-                    final String name = optionalProperty.getAttribute("name");
-                    final String value = optionalProperty.getTextContent().trim();
+                // Reporting Task Properties
+                for (final Element property : DomUtils.getChildElementsByTagName(taskElement, "property")) {
+                    final String name = DomUtils.getChildText(property, "name");
+                    final String value = DomUtils.getChildText(property, "value");
                     properties.put(name, value);
                 }
 

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/eaa8c51f/nifi/nifi-nar-bundles/nifi-standard-services/nifi-distributed-cache-services-bundle/nifi-distributed-cache-client-service/src/main/java/org/apache/nifi/distributed/cache/client/DistributedMapCacheClientService.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-standard-services/nifi-distributed-cache-services-bundle/nifi-distributed-cache-client-service/src/main/java/org/apache/nifi/distributed/cache/client/DistributedMapCacheClientService.java b/nifi/nifi-nar-bundles/nifi-standard-services/nifi-distributed-cache-services-bundle/nifi-distributed-cache-client-service/src/main/java/org/apache/nifi/distributed/cache/client/DistributedMapCacheClientService.java
index aeccffa..92bda8f 100644
--- a/nifi/nifi-nar-bundles/nifi-standard-services/nifi-distributed-cache-services-bundle/nifi-distributed-cache-client-service/src/main/java/org/apache/nifi/distributed/cache/client/DistributedMapCacheClientService.java
+++ b/nifi/nifi-nar-bundles/nifi-standard-services/nifi-distributed-cache-services-bundle/nifi-distributed-cache-client-service/src/main/java/org/apache/nifi/distributed/cache/client/DistributedMapCacheClientService.java
@@ -24,6 +24,7 @@ import java.util.concurrent.BlockingQueue;
 import java.util.concurrent.LinkedBlockingQueue;
 import java.util.concurrent.TimeUnit;
 
+import org.apache.nifi.annotation.documentation.CapabilityDescription;
 import org.apache.nifi.annotation.documentation.SeeAlso;
 import org.apache.nifi.annotation.lifecycle.OnEnabled;
 import org.apache.nifi.components.PropertyDescriptor;
@@ -42,6 +43,8 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 @SeeAlso(classNames={"org.apache.nifi.distributed.cache.server.map.DistributedMapCacheServer", "org.apache.nifi.ssl.StandardSSLContextService"})
+@CapabilityDescription("Provides the ability to communicate with a DistributedMapCacheServer. This can be used in order to share a Map "
+        + "between nodes in a NiFi cluster")
 public class DistributedMapCacheClientService extends AbstractControllerService implements DistributedMapCacheClient {
 
     private static final Logger logger = LoggerFactory.getLogger(DistributedMapCacheClientService.class);

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/eaa8c51f/nifi/nifi-nar-bundles/nifi-standard-services/nifi-distributed-cache-services-bundle/nifi-distributed-cache-client-service/src/main/java/org/apache/nifi/distributed/cache/client/DistributedSetCacheClientService.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-standard-services/nifi-distributed-cache-services-bundle/nifi-distributed-cache-client-service/src/main/java/org/apache/nifi/distributed/cache/client/DistributedSetCacheClientService.java b/nifi/nifi-nar-bundles/nifi-standard-services/nifi-distributed-cache-services-bundle/nifi-distributed-cache-client-service/src/main/java/org/apache/nifi/distributed/cache/client/DistributedSetCacheClientService.java
index db3fcee..2de4ccb 100644
--- a/nifi/nifi-nar-bundles/nifi-standard-services/nifi-distributed-cache-services-bundle/nifi-distributed-cache-client-service/src/main/java/org/apache/nifi/distributed/cache/client/DistributedSetCacheClientService.java
+++ b/nifi/nifi-nar-bundles/nifi-standard-services/nifi-distributed-cache-services-bundle/nifi-distributed-cache-client-service/src/main/java/org/apache/nifi/distributed/cache/client/DistributedSetCacheClientService.java
@@ -24,6 +24,7 @@ import java.util.concurrent.BlockingQueue;
 import java.util.concurrent.LinkedBlockingQueue;
 import java.util.concurrent.TimeUnit;
 
+import org.apache.nifi.annotation.documentation.CapabilityDescription;
 import org.apache.nifi.annotation.documentation.SeeAlso;
 import org.apache.nifi.annotation.lifecycle.OnEnabled;
 import org.apache.nifi.components.PropertyDescriptor;
@@ -41,7 +42,9 @@ import org.apache.nifi.stream.io.DataOutputStream;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-@SeeAlso(classNames={"org.apache.nifi.distributed.cache.server.map.DistributedMapCacheServer", "org.apache.nifi.ssl.StandardSSLContextService"})
+@SeeAlso(classNames={"org.apache.nifi.distributed.cache.server.DistributedSetCacheServer", "org.apache.nifi.ssl.StandardSSLContextService"})
+@CapabilityDescription("Provides the ability to communicate with a DistributedSetCacheServer. This can be used in order to share a Set "
+        + "between nodes in a NiFi cluster")
 public class DistributedSetCacheClientService extends AbstractControllerService implements DistributedSetCacheClient {
 
     private static final Logger logger = LoggerFactory.getLogger(DistributedMapCacheClientService.class);

http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/eaa8c51f/nifi/nifi-nar-bundles/nifi-standard-services/nifi-http-context-map-bundle/nifi-http-context-map/src/main/java/org/apache/nifi/http/StandardHttpContextMap.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-standard-services/nifi-http-context-map-bundle/nifi-http-context-map/src/main/java/org/apache/nifi/http/StandardHttpContextMap.java b/nifi/nifi-nar-bundles/nifi-standard-services/nifi-http-context-map-bundle/nifi-http-context-map/src/main/java/org/apache/nifi/http/StandardHttpContextMap.java
index c73b98b..5e31270 100644
--- a/nifi/nifi-nar-bundles/nifi-standard-services/nifi-http-context-map-bundle/nifi-http-context-map/src/main/java/org/apache/nifi/http/StandardHttpContextMap.java
+++ b/nifi/nifi-nar-bundles/nifi-standard-services/nifi-http-context-map-bundle/nifi-http-context-map/src/main/java/org/apache/nifi/http/StandardHttpContextMap.java
@@ -31,6 +31,9 @@ import javax.servlet.AsyncContext;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 
+import org.apache.nifi.annotation.documentation.CapabilityDescription;
+import org.apache.nifi.annotation.documentation.SeeAlso;
+import org.apache.nifi.annotation.documentation.Tags;
 import org.apache.nifi.annotation.lifecycle.OnDisabled;
 import org.apache.nifi.annotation.lifecycle.OnEnabled;
 import org.apache.nifi.components.PropertyDescriptor;
@@ -38,6 +41,12 @@ import org.apache.nifi.controller.AbstractControllerService;
 import org.apache.nifi.controller.ConfigurationContext;
 import org.apache.nifi.processor.util.StandardValidators;
 
+@Tags({"http", "request", "response"})
+@SeeAlso(classNames={
+        "org.apache.nifi.processors.standard.HandleHttpRequest", 
+        "org.apache.nifi.processors.standard.HandleHttpResponse"})
+@CapabilityDescription("Provides the ability to store and retrieve HTTP requests and responses external to a Processor, so that "
+        + "multiple Processors can interact with the same HTTP request.")
 public class StandardHttpContextMap extends AbstractControllerService implements HttpContextMap {
     public static final PropertyDescriptor MAX_OUTSTANDING_REQUESTS = new PropertyDescriptor.Builder()
         .name("Maximum Outstanding Requests")


[2/2] incubator-nifi git commit: Merge branch 'NIFI-250' of http://git-wip-us.apache.org/repos/asf/incubator-nifi into NIFI-250

Posted by ma...@apache.org.
Merge branch 'NIFI-250' of http://git-wip-us.apache.org/repos/asf/incubator-nifi into NIFI-250


Project: http://git-wip-us.apache.org/repos/asf/incubator-nifi/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-nifi/commit/1efa053b
Tree: http://git-wip-us.apache.org/repos/asf/incubator-nifi/tree/1efa053b
Diff: http://git-wip-us.apache.org/repos/asf/incubator-nifi/diff/1efa053b

Branch: refs/heads/NIFI-250
Commit: 1efa053b6af6b4d70bed608247b42bd9b92a9127
Parents: eaa8c51 92df0d7
Author: Mark Payne <ma...@hotmail.com>
Authored: Fri Mar 27 12:42:38 2015 -0400
Committer: Mark Payne <ma...@hotmail.com>
Committed: Fri Mar 27 12:42:38 2015 -0400

----------------------------------------------------------------------
 .../controller/StandardFlowSynchronizer.java    |  6 +++---
 .../apache/nifi/web/StandardNiFiWebContext.java |  5 ++++-
 .../nifi/web/api/ControllerServiceResource.java | 10 ++++++---
 .../apache/nifi/web/api/ProcessorResource.java  |  4 ++++
 .../nifi/web/api/ReportingTaskResource.java     | 10 ++++++---
 .../disable-controller-service-dialog.jsp       |  2 +-
 .../js/nf/canvas/nf-controller-service.js       | 17 +++++++++++++++
 .../webapp/js/nf/canvas/nf-reporting-task.js    |  6 ++++++
 .../src/main/webapp/js/nf/canvas/nf-settings.js | 22 ++++++++++++++++++--
 9 files changed, 69 insertions(+), 13 deletions(-)
----------------------------------------------------------------------