You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@nifi.apache.org by jp...@apache.org on 2016/07/15 17:28:58 UTC
nifi git commit: NIFI-2250: Enabling EL on GetSQS Queue URL
Repository: nifi
Updated Branches:
refs/heads/master e89ee1119 -> b67c9b6f7
NIFI-2250: Enabling EL on GetSQS Queue URL
Signed-off-by: jpercivall <jo...@yahoo.com>
Project: http://git-wip-us.apache.org/repos/asf/nifi/repo
Commit: http://git-wip-us.apache.org/repos/asf/nifi/commit/b67c9b6f
Tree: http://git-wip-us.apache.org/repos/asf/nifi/tree/b67c9b6f
Diff: http://git-wip-us.apache.org/repos/asf/nifi/diff/b67c9b6f
Branch: refs/heads/master
Commit: b67c9b6f76b0e23a2a46560ff1b43515bbc06945
Parents: e89ee11
Author: Joe Gresock <jo...@lmco.com>
Authored: Wed Jul 13 16:26:19 2016 +0000
Committer: jpercivall <jo...@yahoo.com>
Committed: Fri Jul 15 12:59:37 2016 -0400
----------------------------------------------------------------------
.../apache/nifi/processors/aws/sqs/GetSQS.java | 11 +++++++----
.../nifi/processors/aws/sqs/TestGetSQS.java | 18 ++++++++++++++++++
2 files changed, 25 insertions(+), 4 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/nifi/blob/b67c9b6f/nifi-nar-bundles/nifi-aws-bundle/nifi-aws-processors/src/main/java/org/apache/nifi/processors/aws/sqs/GetSQS.java
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-aws-bundle/nifi-aws-processors/src/main/java/org/apache/nifi/processors/aws/sqs/GetSQS.java b/nifi-nar-bundles/nifi-aws-bundle/nifi-aws-processors/src/main/java/org/apache/nifi/processors/aws/sqs/GetSQS.java
index cf9e2f7..5dc6f12 100644
--- a/nifi-nar-bundles/nifi-aws-bundle/nifi-aws-processors/src/main/java/org/apache/nifi/processors/aws/sqs/GetSQS.java
+++ b/nifi-nar-bundles/nifi-aws-bundle/nifi-aws-processors/src/main/java/org/apache/nifi/processors/aws/sqs/GetSQS.java
@@ -37,6 +37,7 @@ 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.components.PropertyDescriptor;
+import org.apache.nifi.expression.AttributeExpression.ResultType;
import org.apache.nifi.flowfile.FlowFile;
import org.apache.nifi.processor.ProcessContext;
import org.apache.nifi.processor.ProcessSession;
@@ -98,9 +99,10 @@ public class GetSQS extends AbstractSQSProcessor {
.defaultValue("10")
.build();
- public static final PropertyDescriptor STATIC_QUEUE_URL = new PropertyDescriptor.Builder()
+ public static final PropertyDescriptor DYNAMIC_QUEUE_URL = new PropertyDescriptor.Builder()
.fromPropertyDescriptor(QUEUE_URL)
- .expressionLanguageSupported(false)
+ .expressionLanguageSupported(true)
+ .addValidator(StandardValidators.createAttributeExpressionLanguageValidator(ResultType.STRING, true))
.build();
public static final PropertyDescriptor RECEIVE_MSG_WAIT_TIME = new PropertyDescriptor.Builder()
@@ -114,7 +116,7 @@ public class GetSQS extends AbstractSQSProcessor {
.build();
public static final List<PropertyDescriptor> properties = Collections.unmodifiableList(
- Arrays.asList(STATIC_QUEUE_URL, AUTO_DELETE, ACCESS_KEY, SECRET_KEY, CREDENTIALS_FILE,
+ Arrays.asList(DYNAMIC_QUEUE_URL, AUTO_DELETE, ACCESS_KEY, SECRET_KEY, CREDENTIALS_FILE,
AWS_CREDENTIALS_PROVIDER_SERVICE, REGION, BATCH_SIZE, TIMEOUT, CHARSET, VISIBILITY_TIMEOUT, RECEIVE_MSG_WAIT_TIME, PROXY_HOST, PROXY_HOST_PORT));
@Override
@@ -129,7 +131,8 @@ public class GetSQS extends AbstractSQSProcessor {
@Override
public void onTrigger(final ProcessContext context, final ProcessSession session) {
- final String queueUrl = context.getProperty(STATIC_QUEUE_URL).getValue();
+ final String queueUrl = context.getProperty(DYNAMIC_QUEUE_URL).evaluateAttributeExpressions()
+ .getValue();
final AmazonSQSClient client = getClient();
http://git-wip-us.apache.org/repos/asf/nifi/blob/b67c9b6f/nifi-nar-bundles/nifi-aws-bundle/nifi-aws-processors/src/test/java/org/apache/nifi/processors/aws/sqs/TestGetSQS.java
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-aws-bundle/nifi-aws-processors/src/test/java/org/apache/nifi/processors/aws/sqs/TestGetSQS.java b/nifi-nar-bundles/nifi-aws-bundle/nifi-aws-processors/src/test/java/org/apache/nifi/processors/aws/sqs/TestGetSQS.java
index 6377b06..e34b66a 100644
--- a/nifi-nar-bundles/nifi-aws-bundle/nifi-aws-processors/src/test/java/org/apache/nifi/processors/aws/sqs/TestGetSQS.java
+++ b/nifi-nar-bundles/nifi-aws-bundle/nifi-aws-processors/src/test/java/org/apache/nifi/processors/aws/sqs/TestGetSQS.java
@@ -49,6 +49,24 @@ public class TestGetSQS {
}
@Test
+ public void testSimpleGetWithEL() {
+ System.setProperty("test-account-property", "100515378163");
+ System.setProperty("test-queue-property", "test-queue-000000000");
+ final TestRunner runner = TestRunners.newTestRunner(new GetSQS());
+ runner.setProperty(PutSNS.CREDENTIALS_FILE, CREDENTIALS_FILE);
+ runner.setProperty(GetSQS.TIMEOUT, "30 secs");
+ runner.setProperty(GetSQS.QUEUE_URL, "https://sqs.us-west-2.amazonaws.com/${test-account-property}/${test-queue-property}");
+
+ runner.run(1);
+
+ final List<MockFlowFile> flowFiles = runner.getFlowFilesForRelationship(GetSQS.REL_SUCCESS);
+ for (final MockFlowFile mff : flowFiles) {
+ System.out.println(mff.getAttributes());
+ System.out.println(new String(mff.toByteArray()));
+ }
+ }
+
+ @Test
public void testSimpleGetUsingCredentailsProviderService() throws Throwable {
final TestRunner runner = TestRunners.newTestRunner(new GetSQS());