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 <[email protected]>
Authored: Fri Mar 27 12:42:32 2015 -0400
Committer: Mark Payne <[email protected]>
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")

Reply via email to