You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by bi...@apache.org on 2012/11/16 00:09:12 UTC
svn commit: r1410099 - in /camel/trunk:
components/camel-aws/src/main/java/org/apache/camel/component/aws/sqs/
components/camel-aws/src/test/java/org/apache/camel/component/aws/sqs/
components/camel-aws/src/test/resources/org/apache/camel/component/aws...
Author: bibryam
Date: Thu Nov 15 23:09:11 2012
New Revision: 1410099
URL: http://svn.apache.org/viewvc?rev=1410099&view=rev
Log:
Update aws library to 1.3.25
Introduced two new options for SQS consumer to enable long polling: waitTimeSeconds and receiveMessageWaitTimeSeconds
Modified:
camel/trunk/components/camel-aws/src/main/java/org/apache/camel/component/aws/sqs/SqsConfiguration.java
camel/trunk/components/camel-aws/src/main/java/org/apache/camel/component/aws/sqs/SqsConsumer.java
camel/trunk/components/camel-aws/src/main/java/org/apache/camel/component/aws/sqs/SqsEndpoint.java
camel/trunk/components/camel-aws/src/test/java/org/apache/camel/component/aws/sqs/SqsComponentConfigurationTest.java
camel/trunk/components/camel-aws/src/test/resources/org/apache/camel/component/aws/sqs/SqsComponentSpringTest-context.xml
camel/trunk/parent/pom.xml
Modified: camel/trunk/components/camel-aws/src/main/java/org/apache/camel/component/aws/sqs/SqsConfiguration.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-aws/src/main/java/org/apache/camel/component/aws/sqs/SqsConfiguration.java?rev=1410099&r1=1410098&r2=1410099&view=diff
==============================================================================
--- camel/trunk/components/camel-aws/src/main/java/org/apache/camel/component/aws/sqs/SqsConfiguration.java (original)
+++ camel/trunk/components/camel-aws/src/main/java/org/apache/camel/component/aws/sqs/SqsConfiguration.java Thu Nov 15 23:09:11 2012
@@ -37,6 +37,7 @@ public class SqsConfiguration {
private Boolean deleteAfterRead = Boolean.TRUE;
private Integer visibilityTimeout;
private Collection<String> attributeNames;
+ private Integer waitTimeSeconds;
private Integer defaultVisibilityTimeout;
private Boolean extendMessageVisibility = Boolean.FALSE;
@@ -46,6 +47,7 @@ public class SqsConfiguration {
// queue properties
private Integer maximumMessageSize;
private Integer messageRetentionPeriod;
+ private Integer receiveMessageWaitTimeSeconds;
private String policy;
public void setAmazonSQSEndpoint(String amazonSQSEndpoint) {
@@ -160,6 +162,22 @@ public class SqsConfiguration {
this.extendMessageVisibility = extendMessageVisibility;
}
+ public Integer getReceiveMessageWaitTimeSeconds() {
+ return receiveMessageWaitTimeSeconds;
+ }
+
+ public void setReceiveMessageWaitTimeSeconds(Integer receiveMessageWaitTimeSeconds) {
+ this.receiveMessageWaitTimeSeconds = receiveMessageWaitTimeSeconds;
+ }
+
+ public Integer getWaitTimeSeconds() {
+ return waitTimeSeconds;
+ }
+
+ public void setWaitTimeSeconds(Integer waitTimeSeconds) {
+ this.waitTimeSeconds = waitTimeSeconds;
+ }
+
@Override
public String toString() {
return "SqsConfiguration[queueName=" + queueName
@@ -169,9 +187,11 @@ public class SqsConfiguration {
+ ", deleteAfterRead=" + deleteAfterRead
+ ", visibilityTimeout=" + visibilityTimeout
+ ", attributeNames=" + attributeNames
+ + ", waitTimeSeconds=" + waitTimeSeconds
+ ", defaultVisibilityTimeout=" + defaultVisibilityTimeout
+ ", maximumMessageSize=" + maximumMessageSize
+ ", messageRetentionPeriod=" + messageRetentionPeriod
+ + ", receiveMessageWaitTimeSeconds=" + receiveMessageWaitTimeSeconds
+ ", delaySeconds=" + delaySeconds
+ ", policy=" + policy
+ ", extendMessageVisibility=" + extendMessageVisibility
Modified: camel/trunk/components/camel-aws/src/main/java/org/apache/camel/component/aws/sqs/SqsConsumer.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-aws/src/main/java/org/apache/camel/component/aws/sqs/SqsConsumer.java?rev=1410099&r1=1410098&r2=1410099&view=diff
==============================================================================
--- camel/trunk/components/camel-aws/src/main/java/org/apache/camel/component/aws/sqs/SqsConsumer.java (original)
+++ camel/trunk/components/camel-aws/src/main/java/org/apache/camel/component/aws/sqs/SqsConsumer.java Thu Nov 15 23:09:11 2012
@@ -69,7 +69,8 @@ public class SqsConsumer extends Schedul
request.setMaxNumberOfMessages(getMaxMessagesPerPoll() > 0 ? getMaxMessagesPerPoll() : null);
request.setVisibilityTimeout(getConfiguration().getVisibilityTimeout() != null ? getConfiguration().getVisibilityTimeout() : null);
request.setAttributeNames(getConfiguration().getAttributeNames() != null ? getConfiguration().getAttributeNames() : null);
-
+ request.setWaitTimeSeconds(getConfiguration().getWaitTimeSeconds() != null ? getConfiguration().getWaitTimeSeconds() : null);
+
LOG.trace("Receiving messages with request [{}]...", request);
ReceiveMessageResult messageResult = getClient().receiveMessage(request);
Modified: camel/trunk/components/camel-aws/src/main/java/org/apache/camel/component/aws/sqs/SqsEndpoint.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-aws/src/main/java/org/apache/camel/component/aws/sqs/SqsEndpoint.java?rev=1410099&r1=1410098&r2=1410099&view=diff
==============================================================================
--- camel/trunk/components/camel-aws/src/main/java/org/apache/camel/component/aws/sqs/SqsEndpoint.java (original)
+++ camel/trunk/components/camel-aws/src/main/java/org/apache/camel/component/aws/sqs/SqsEndpoint.java Thu Nov 15 23:09:11 2012
@@ -110,7 +110,10 @@ public class SqsEndpoint extends Schedul
}
if (getConfiguration().getPolicy() != null) {
request.getAttributes().put(QueueAttributeName.Policy.name(), String.valueOf(getConfiguration().getPolicy()));
- }
+ }
+ if (getConfiguration().getReceiveMessageWaitTimeSeconds() != null) {
+ request.getAttributes().put(QueueAttributeName.ReceiveMessageWaitTimeSeconds.name(), String.valueOf(getConfiguration().getReceiveMessageWaitTimeSeconds()));
+ }
LOG.trace("Creating queue [{}] with request [{}]...", configuration.getQueueName(), request);
CreateQueueResult queueResult = client.createQueue(request);
@@ -134,7 +137,9 @@ public class SqsEndpoint extends Schedul
if (getConfiguration().getPolicy() != null) {
request.getAttributes().put(QueueAttributeName.Policy.name(), String.valueOf(getConfiguration().getPolicy()));
}
-
+ if (getConfiguration().getReceiveMessageWaitTimeSeconds() != null) {
+ request.getAttributes().put(QueueAttributeName.ReceiveMessageWaitTimeSeconds.name(), String.valueOf(getConfiguration().getReceiveMessageWaitTimeSeconds()));
+ }
if (!request.getAttributes().isEmpty()) {
LOG.trace("Updating queue '{}' with the provided queue attributes...", configuration.getQueueName());
client.setQueueAttributes(request);
Modified: camel/trunk/components/camel-aws/src/test/java/org/apache/camel/component/aws/sqs/SqsComponentConfigurationTest.java
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-aws/src/test/java/org/apache/camel/component/aws/sqs/SqsComponentConfigurationTest.java?rev=1410099&r1=1410098&r2=1410099&view=diff
==============================================================================
--- camel/trunk/components/camel-aws/src/test/java/org/apache/camel/component/aws/sqs/SqsComponentConfigurationTest.java (original)
+++ camel/trunk/components/camel-aws/src/test/java/org/apache/camel/component/aws/sqs/SqsComponentConfigurationTest.java Thu Nov 15 23:09:11 2012
@@ -79,7 +79,7 @@ public class SqsComponentConfigurationTe
+ "&DefaultVisibilityTimeout=1000&visibilityTimeout=2000&maximumMessageSize=65536&messageRetentionPeriod=1209600&policy="
+ "%7B%22Version%22%3A%222008-10-17%22%2C%22Id%22%3A%22%2F195004372649%2FMyQueue%2FSQSDefaultPolicy%22%2C%22Statement%22%3A%5B%7B%22Sid%22%3A%22Queue1ReceiveMessage%22%2C%22"
+ "Effect%22%3A%22Allow%22%2C%22Principal%22%3A%7B%22AWS%22%3A%22*%22%7D%2C%22Action%22%3A%22SQS%3AReceiveMessage%22%2C%22Resource%22%3A%22%2F195004372649%2FMyQueue%22%7D%5D%7D"
- + "&delaySeconds=123");
+ + "&delaySeconds=123&receiveMessageWaitTimeSeconds=10&waitTimeSeconds=20");
assertEquals("MyQueue", endpoint.getConfiguration().getQueueName());
assertEquals("xxx", endpoint.getConfiguration().getAccessKey());
@@ -95,6 +95,8 @@ public class SqsComponentConfigurationTe
+ "{\"AWS\":\"*\"},\"Action\":\"SQS:ReceiveMessage\",\"Resource\":\"/195004372649/MyQueue\"}]}",
endpoint.getConfiguration().getPolicy());
assertEquals(new Integer(123), endpoint.getConfiguration().getDelaySeconds());
+ assertEquals(Integer.valueOf(10), endpoint.getConfiguration().getReceiveMessageWaitTimeSeconds());
+ assertEquals(Integer.valueOf(20), endpoint.getConfiguration().getWaitTimeSeconds());
}
@Test
Modified: camel/trunk/components/camel-aws/src/test/resources/org/apache/camel/component/aws/sqs/SqsComponentSpringTest-context.xml
URL: http://svn.apache.org/viewvc/camel/trunk/components/camel-aws/src/test/resources/org/apache/camel/component/aws/sqs/SqsComponentSpringTest-context.xml?rev=1410099&r1=1410098&r2=1410099&view=diff
==============================================================================
--- camel/trunk/components/camel-aws/src/test/resources/org/apache/camel/component/aws/sqs/SqsComponentSpringTest-context.xml (original)
+++ camel/trunk/components/camel-aws/src/test/resources/org/apache/camel/component/aws/sqs/SqsComponentSpringTest-context.xml Thu Nov 15 23:09:11 2012
@@ -23,11 +23,11 @@
<camelContext id="camel" xmlns="http://camel.apache.org/schema/spring">
<route>
<from uri="direct:start"/>
- <to uri="aws-sqs://MyQueue?amazonSQSClient=#amazonSQSClient&messageRetentionPeriod=1209600&maximumMessageSize=65536&policy="/>
+ <to uri="aws-sqs://MyQueue?amazonSQSClient=#amazonSQSClient&messageRetentionPeriod=1209600&maximumMessageSize=65536&receiveMessageWaitTimeSeconds=20&policy="/>
</route>
<route>
- <from uri="aws-sqs://MyQueue?amazonSQSClient=#amazonSQSClient&messageRetentionPeriod=1209600&maximumMessageSize=65536&policy="/>
+ <from uri="aws-sqs://MyQueue?amazonSQSClient=#amazonSQSClient&messageRetentionPeriod=1209600&maximumMessageSize=65536&receiveMessageWaitTimeSeconds=20&policy="/>
<to uri="mock:result"/>
</route>
</camelContext>
Modified: camel/trunk/parent/pom.xml
URL: http://svn.apache.org/viewvc/camel/trunk/parent/pom.xml?rev=1410099&r1=1410098&r2=1410099&view=diff
==============================================================================
--- camel/trunk/parent/pom.xml (original)
+++ camel/trunk/parent/pom.xml Thu Nov 15 23:09:11 2012
@@ -56,7 +56,7 @@
<avro-version>1.6.2</avro-version>
<avro-bundle-version>1.6.1_1</avro-bundle-version>
<aws-java-sdk-bundle-version>1.3.14_1</aws-java-sdk-bundle-version>
- <aws-java-sdk-version>1.3.14</aws-java-sdk-version>
+ <aws-java-sdk-version>1.3.25</aws-java-sdk-version>
<axiom-version>1.2.12</axiom-version>
<bcel-bundle-version>5.2_4</bcel-bundle-version>
<bcpg-jdk16-bundle-version>1.46_2</bcpg-jdk16-bundle-version>