From 7b273a8296df58fa6329e5443be04ea49a46759f Mon Sep 17 00:00:00 2001 From: Adam Bchouti Date: Wed, 8 Jul 2020 12:41:52 -0400 Subject: [PATCH 1/2] Version bump to 1.1.0 --- README.md | 2 +- pom.xml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index e8c6756..d935b85 100644 --- a/README.md +++ b/README.md @@ -21,7 +21,7 @@ Temporary queues are also automatically deleted if the clients that created them com.amazonaws amazon-sqs-java-temporary-queues-client - 1.0.2 + 1.1.0 jar ``` diff --git a/pom.xml b/pom.xml index 69070bf..84917c7 100644 --- a/pom.xml +++ b/pom.xml @@ -2,7 +2,7 @@ 4.0.0 com.amazonaws amazon-sqs-java-temporary-queues-client - 1.0.2 + 1.1.0 Amazon SQS Java Temporary Queues Client An Amazon SQS client that supports creating lightweight, automatically-deleted temporary queues, for use in common messaging patterns such as Request/Response. See http://aws.amazon.com/sqs. https://github.com/awslabs/amazon-sqs-java-temporary-queues-client From e7822cc7ae359dc43e895e57b8c038761ce8e935 Mon Sep 17 00:00:00 2001 From: Adam Bchouti Date: Tue, 23 Feb 2021 17:09:49 -0500 Subject: [PATCH 2/2] create virtual queues with custom Tags --- .../sqs/AmazonSQSRequesterClient.java | 11 ++++--- .../sqs/AmazonSQSRequesterClientBuilder.java | 14 ++++++++ .../sqs/AmazonSQSTemporaryQueuesClient.java | 22 ++++++++++--- ...AmazonSQSTemporaryQueuesClientBuilder.java | 14 ++++++++ .../sqs/AmazonSQSVirtualQueuesClient.java | 4 +++ .../sqs/AmazonSQSIdleQueueDeletingIT.java | 2 +- .../sqs/AmazonSQSRequesterClientTest.java | 9 ++--- ...mazonSQSResponsesClientCrossAccountIT.java | 2 +- .../sqs/AmazonSQSResponsesClientIT.java | 2 +- .../sqs/AmazonSQSTemporaryQueuesClientIT.java | 33 ++++++++++++++++--- .../services/sqs/SQSExecutorServiceIT.java | 2 +- .../sqs/SQSScheduledExecutorServiceIT.java | 2 +- 12 files changed, 94 insertions(+), 23 deletions(-) diff --git a/src/main/java/com/amazonaws/services/sqs/AmazonSQSRequesterClient.java b/src/main/java/com/amazonaws/services/sqs/AmazonSQSRequesterClient.java index fb88e32..cbc32dd 100644 --- a/src/main/java/com/amazonaws/services/sqs/AmazonSQSRequesterClient.java +++ b/src/main/java/com/amazonaws/services/sqs/AmazonSQSRequesterClient.java @@ -29,21 +29,23 @@ class AmazonSQSRequesterClient implements AmazonSQSRequester { private final AmazonSQS sqs; private final String queuePrefix; private final Map queueAttributes; + private final Map queueTags; private final Consumer exceptionHandler; private final Set responseConsumers = Collections.newSetFromMap(new ConcurrentHashMap<>()); private Runnable shutdownHook; - AmazonSQSRequesterClient(AmazonSQS sqs, String queuePrefix, Map queueAttributes) { - this(sqs, queuePrefix, queueAttributes, SQSQueueUtils.DEFAULT_EXCEPTION_HANDLER); + AmazonSQSRequesterClient(AmazonSQS sqs, String queuePrefix, Map queueAttributes, Map queueTags) { + this(sqs, queuePrefix, queueAttributes, queueTags, SQSQueueUtils.DEFAULT_EXCEPTION_HANDLER); } AmazonSQSRequesterClient(AmazonSQS sqs, String queuePrefix, Map queueAttributes, - Consumer exceptionHandler) { + Map queueTags, Consumer exceptionHandler) { this.sqs = sqs; this.queuePrefix = queuePrefix; this.queueAttributes = new HashMap<>(queueAttributes); + this.queueTags = new HashMap<>(queueTags); this.exceptionHandler = exceptionHandler; } @@ -66,7 +68,8 @@ public CompletableFuture sendMessageAndGetResponseAsync(SendMessageRequ String queueName = queuePrefix + UUID.randomUUID().toString(); CreateQueueRequest createQueueRequest = new CreateQueueRequest() .withQueueName(queueName) - .withAttributes(queueAttributes); + .withAttributes(queueAttributes) + .withTags(queueTags); String responseQueueUrl = sqs.createQueue(createQueueRequest).getQueueUrl(); SendMessageRequest requestWithResponseUrl = SQSQueueUtils.copyWithExtraAttributes(request, diff --git a/src/main/java/com/amazonaws/services/sqs/AmazonSQSRequesterClientBuilder.java b/src/main/java/com/amazonaws/services/sqs/AmazonSQSRequesterClientBuilder.java index 983ee99..7410ee0 100644 --- a/src/main/java/com/amazonaws/services/sqs/AmazonSQSRequesterClientBuilder.java +++ b/src/main/java/com/amazonaws/services/sqs/AmazonSQSRequesterClientBuilder.java @@ -13,6 +13,7 @@ public class AmazonSQSRequesterClientBuilder { private String internalQueuePrefix = "__RequesterClientQueues__"; private Map queueAttributes = Collections.emptyMap(); + private Map queueTags = Collections.emptyMap(); private int idleQueueSweepingPeriod = 5; private long queueHeartbeatInterval = AmazonSQSIdleQueueDeletingClient.HEARTBEAT_INTERVAL_SECONDS_DEFAULT; @@ -72,6 +73,19 @@ public AmazonSQSRequesterClientBuilder withQueueAttributes(Map q return this; } + public Map getQueueTags() { + return Collections.unmodifiableMap(queueTags); + } + + public void setQueueTags(Map queueTags) { + this.queueTags = new HashMap<>(queueTags); + } + + public AmazonSQSRequesterClientBuilder withQueueTags(Map queueTags) { + setQueueTags(queueTags); + return this; + } + public int getIdleQueueSweepingPeriod() { return idleQueueSweepingPeriod; } diff --git a/src/main/java/com/amazonaws/services/sqs/AmazonSQSTemporaryQueuesClient.java b/src/main/java/com/amazonaws/services/sqs/AmazonSQSTemporaryQueuesClient.java index a2cfe59..d2fadd8 100644 --- a/src/main/java/com/amazonaws/services/sqs/AmazonSQSTemporaryQueuesClient.java +++ b/src/main/java/com/amazonaws/services/sqs/AmazonSQSTemporaryQueuesClient.java @@ -53,14 +53,16 @@ class AmazonSQSTemporaryQueuesClient extends AbstractAmazonSQSClientWrapper { private final String prefix; private final long idleQueueRetentionPeriodSeconds; + private final Map queueTags; private AmazonSQSRequester requester; - private AmazonSQSTemporaryQueuesClient(AmazonSQS virtualizer, AmazonSQSIdleQueueDeletingClient deleter, String queueNamePrefix, Long idleQueueRetentionPeriodSeconds) { + private AmazonSQSTemporaryQueuesClient(AmazonSQS virtualizer, AmazonSQSIdleQueueDeletingClient deleter, String queueNamePrefix, Long idleQueueRetentionPeriodSeconds, Map queueTags) { super(virtualizer); this.virtualizer = virtualizer; this.deleter = deleter; this.prefix = queueNamePrefix + UUID.randomUUID().toString(); + this.queueTags = queueTags; if (idleQueueRetentionPeriodSeconds != null) { AmazonSQSIdleQueueDeletingClient.checkQueueRetentionPeriodBounds(idleQueueRetentionPeriodSeconds); @@ -69,9 +71,13 @@ private AmazonSQSTemporaryQueuesClient(AmazonSQS virtualizer, AmazonSQSIdleQueue this.idleQueueRetentionPeriodSeconds = AmazonSQSTemporaryQueuesClientBuilder.IDLE_QUEUE_RETENTION_PERIOD_SECONDS_DEFAULT; } } + + private AmazonSQSTemporaryQueuesClient(AmazonSQS virtualizer, AmazonSQSIdleQueueDeletingClient deleter, String queueNamePrefix, Long idleQueueRetentionPeriodSeconds) { + this(virtualizer, deleter, queueNamePrefix, idleQueueRetentionPeriodSeconds, null); + } private AmazonSQSTemporaryQueuesClient(AmazonSQS virtualizer, AmazonSQSIdleQueueDeletingClient deleter, String queueNamePrefix) { - this(virtualizer, deleter, queueNamePrefix, null); + this(virtualizer, deleter, queueNamePrefix, null, null); } public static AmazonSQSTemporaryQueuesClient make(AmazonSQSRequesterClientBuilder builder) { @@ -81,8 +87,8 @@ public static AmazonSQSTemporaryQueuesClient make(AmazonSQSRequesterClientBuilde .withAmazonSQS(deleter) .withHeartbeatIntervalSeconds(builder.getQueueHeartbeatInterval()) .build(); - AmazonSQSTemporaryQueuesClient temporaryQueuesClient = new AmazonSQSTemporaryQueuesClient(virtualizer, deleter, builder.getInternalQueuePrefix(), builder.getIdleQueueRetentionPeriodSeconds()); - AmazonSQSRequesterClient requester = new AmazonSQSRequesterClient(temporaryQueuesClient, builder.getInternalQueuePrefix(), builder.getQueueAttributes()); + AmazonSQSTemporaryQueuesClient temporaryQueuesClient = new AmazonSQSTemporaryQueuesClient(virtualizer, deleter, builder.getInternalQueuePrefix(), builder.getIdleQueueRetentionPeriodSeconds(), builder.getQueueTags()); + AmazonSQSRequesterClient requester = new AmazonSQSRequesterClient(temporaryQueuesClient, builder.getInternalQueuePrefix(), builder.getQueueAttributes(), builder.getQueueTags()); AmazonSQSResponderClient responder = new AmazonSQSResponderClient(temporaryQueuesClient); temporaryQueuesClient.startIdleQueueSweeper(requester, responder, builder.getIdleQueueSweepingPeriod(), builder.getIdleQueueSweepingTimeUnit()); @@ -122,6 +128,11 @@ public CreateQueueResult createQueue(CreateQueueRequest request) { + String.join(", ", unsupportedQueueAttributes)); } + // Add the tags specified for each Virtual queue + Map tags = request.getTags(); + queueTags.forEach(tags::putIfAbsent); + request.withTags(tags); + Map extraQueueAttributes = new HashMap<>(); // Add the retention period to both the host queue and each virtual queue extraQueueAttributes.put(AmazonSQSIdleQueueDeletingClient.IDLE_QUEUE_RETENTION_PERIOD, Long.toString(idleQueueRetentionPeriodSeconds)); @@ -136,7 +147,8 @@ public CreateQueueResult createQueue(CreateQueueRequest request) { // queue or else the client may think we're trying to set them independently! CreateQueueRequest createVirtualQueueRequest = new CreateQueueRequest() .withQueueName(request.getQueueName()) - .withAttributes(extraQueueAttributes); + .withAttributes(extraQueueAttributes) + .withTags(tags); return amazonSqsToBeExtended.createQueue(createVirtualQueueRequest); } diff --git a/src/main/java/com/amazonaws/services/sqs/AmazonSQSTemporaryQueuesClientBuilder.java b/src/main/java/com/amazonaws/services/sqs/AmazonSQSTemporaryQueuesClientBuilder.java index 8920eaa..6f71e76 100644 --- a/src/main/java/com/amazonaws/services/sqs/AmazonSQSTemporaryQueuesClientBuilder.java +++ b/src/main/java/com/amazonaws/services/sqs/AmazonSQSTemporaryQueuesClientBuilder.java @@ -1,5 +1,6 @@ package com.amazonaws.services.sqs; +import java.util.Map; import java.util.Optional; import java.util.concurrent.TimeUnit; @@ -67,6 +68,19 @@ public AmazonSQSTemporaryQueuesClientBuilder withIdleQueueSweepingPeriod(int per setIdleQueueSweepingPeriod(period, timeUnit); return this; } + + public Map getQueueTags() { + return requesterBuilder.getQueueTags(); + } + + public void setQueueTags(Map queueTags) { + requesterBuilder.setQueueTags(queueTags); + } + + public AmazonSQSTemporaryQueuesClientBuilder withQueueTags(Map queueTags) { + setQueueTags(queueTags); + return this; + } /** * @return Create new instance of builder with all defaults set. diff --git a/src/main/java/com/amazonaws/services/sqs/AmazonSQSVirtualQueuesClient.java b/src/main/java/com/amazonaws/services/sqs/AmazonSQSVirtualQueuesClient.java index c093c55..04e4a2e 100644 --- a/src/main/java/com/amazonaws/services/sqs/AmazonSQSVirtualQueuesClient.java +++ b/src/main/java/com/amazonaws/services/sqs/AmazonSQSVirtualQueuesClient.java @@ -181,6 +181,10 @@ public CreateQueueResult createQueue(CreateQueueRequest request) { throw new IllegalStateException("Cannot create virtual queue: the number of virtual queues would exceed the maximum of " + MAXIMUM_VIRTUAL_QUEUES_COUNT); } + + TagQueueRequest tagQueueRequest = new TagQueueRequest().withTags(request.getTags()); + virtualQueue.tagQueue(tagQueueRequest); + virtualQueues.put(virtualQueue.getID().getVirtualQueueName(), virtualQueue); if (LOG.isDebugEnabled()) { diff --git a/src/test/java/com/amazonaws/services/sqs/AmazonSQSIdleQueueDeletingIT.java b/src/test/java/com/amazonaws/services/sqs/AmazonSQSIdleQueueDeletingIT.java index 7c1c74b..4da8a86 100644 --- a/src/test/java/com/amazonaws/services/sqs/AmazonSQSIdleQueueDeletingIT.java +++ b/src/test/java/com/amazonaws/services/sqs/AmazonSQSIdleQueueDeletingIT.java @@ -31,7 +31,7 @@ public class AmazonSQSIdleQueueDeletingIT extends IntegrationTest { public void setup() { client = new AmazonSQSIdleQueueDeletingClient(sqs, queueNamePrefix); requester = new AmazonSQSRequesterClient(sqs, queueNamePrefix, - Collections.emptyMap(), exceptionHandler); + Collections.emptyMap(), Collections.emptyMap(), exceptionHandler); responder = new AmazonSQSResponderClient(sqs); } diff --git a/src/test/java/com/amazonaws/services/sqs/AmazonSQSRequesterClientTest.java b/src/test/java/com/amazonaws/services/sqs/AmazonSQSRequesterClientTest.java index 8ffa020..88953b0 100644 --- a/src/test/java/com/amazonaws/services/sqs/AmazonSQSRequesterClientTest.java +++ b/src/test/java/com/amazonaws/services/sqs/AmazonSQSRequesterClientTest.java @@ -12,11 +12,11 @@ import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeoutException; +import com.amazonaws.services.sqs.model.ListQueueTagsResult; import org.junit.After; import org.junit.Test; import com.amazonaws.services.sqs.model.Message; -import com.amazonaws.services.sqs.model.QueueDoesNotExistException; import com.amazonaws.services.sqs.model.SendMessageRequest; import com.amazonaws.services.sqs.util.ExceptionAsserter; import com.amazonaws.services.sqs.util.MockSQS; @@ -35,6 +35,7 @@ public AmazonSQSRequesterClientTest() { this.accountPrefix = "http://queue.amazon.com/123456789012/"; this.sqs = new MockSQS(accountPrefix); this.requesterClient = new AmazonSQSRequesterClient(sqs, "RequesterClientQueues", + Collections.emptyMap(), Collections.emptyMap(), exceptionHandler); this.responderClient = new AmazonSQSResponderClient(sqs); @@ -61,7 +62,8 @@ public void happyPath() throws TimeoutException, InterruptedException, Execution assertEquals(requestMessageBody, requestMessage.getBody()); String responseQueueUrl = requestMessage.getMessageAttributes().get(AmazonSQSRequesterClient.RESPONSE_QUEUE_URL_ATTRIBUTE_NAME).getStringValue(); assertNotNull(responseQueueUrl); - + ListQueueTagsResult listQueueTagsResult = sqs.listQueueTags(responseQueueUrl); + responderClient.sendResponseMessage(MessageContent.fromMessage(requestMessage), new MessageContent(responseMessageBody)); Message response = future.get(5, TimeUnit.SECONDS); @@ -80,13 +82,12 @@ public void timeout() throws TimeoutException, InterruptedException, ExecutionEx SendMessageRequest request = new SendMessageRequest() .withQueueUrl(queueUrl) .withMessageBody(requestMessageBody); - Future future = requesterClient.sendMessageAndGetResponseAsync(request, 1, TimeUnit.SECONDS); + Future future = requesterClient.sendMessageAndGetResponseAsync(request, 1, TimeUnit.SECONDS); Message requestMessage = sqs.receiveMessage(queueUrl).getMessages().get(0); assertEquals(requestMessageBody, requestMessage.getBody()); String responseQueueUrl = requestMessage.getMessageAttributes().get(AmazonSQSRequesterClient.RESPONSE_QUEUE_URL_ATTRIBUTE_NAME).getStringValue(); assertNotNull(responseQueueUrl); - // TODO-RS: Junit 5 try { future.get(); diff --git a/src/test/java/com/amazonaws/services/sqs/AmazonSQSResponsesClientCrossAccountIT.java b/src/test/java/com/amazonaws/services/sqs/AmazonSQSResponsesClientCrossAccountIT.java index 79b814f..3d3acde 100644 --- a/src/test/java/com/amazonaws/services/sqs/AmazonSQSResponsesClientCrossAccountIT.java +++ b/src/test/java/com/amazonaws/services/sqs/AmazonSQSResponsesClientCrossAccountIT.java @@ -34,7 +34,7 @@ public void setup() { String policyString = allowSendMessagePolicy(getBuddyRoleARN()).toJson(); sqsRequester = new AmazonSQSRequesterClient(sqs, queueNamePrefix, Collections.singletonMap(QueueAttributeName.Policy.toString(), policyString), - exceptionHandler); + Collections.emptyMap(), exceptionHandler); requestQueueUrl = sqs.createQueue("RequestQueue-" + UUID.randomUUID().toString()).getQueueUrl(); } diff --git a/src/test/java/com/amazonaws/services/sqs/AmazonSQSResponsesClientIT.java b/src/test/java/com/amazonaws/services/sqs/AmazonSQSResponsesClientIT.java index 6e5c5bc..bcb249d 100644 --- a/src/test/java/com/amazonaws/services/sqs/AmazonSQSResponsesClientIT.java +++ b/src/test/java/com/amazonaws/services/sqs/AmazonSQSResponsesClientIT.java @@ -25,7 +25,7 @@ public class AmazonSQSResponsesClientIT extends IntegrationTest { @Before public void setup() { sqsRequester = new AmazonSQSRequesterClient(sqs, queueNamePrefix, - Collections.emptyMap(), exceptionHandler); + Collections.emptyMap(), Collections.emptyMap(), exceptionHandler); sqsResponder = new AmazonSQSResponderClient(sqs); requestQueueUrl = sqs.createQueue("RequestQueue-" + UUID.randomUUID().toString()).getQueueUrl(); } diff --git a/src/test/java/com/amazonaws/services/sqs/AmazonSQSTemporaryQueuesClientIT.java b/src/test/java/com/amazonaws/services/sqs/AmazonSQSTemporaryQueuesClientIT.java index 032c598..a10c070 100644 --- a/src/test/java/com/amazonaws/services/sqs/AmazonSQSTemporaryQueuesClientIT.java +++ b/src/test/java/com/amazonaws/services/sqs/AmazonSQSTemporaryQueuesClientIT.java @@ -2,9 +2,12 @@ import static com.amazonaws.services.sqs.AmazonSQSIdleQueueDeletingClient.IDLE_QUEUE_RETENTION_PERIOD; import static com.amazonaws.services.sqs.AmazonSQSVirtualQueuesClient.VIRTUAL_QUEUE_HOST_QUEUE_ATTRIBUTE; +import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.assertTrue; import java.util.Collections; +import java.util.HashMap; import java.util.Map; import com.amazonaws.services.sqs.model.CreateQueueRequest; @@ -36,10 +39,18 @@ public void createQueueAddsAttributes() { createQueueShouldSetRetentionPeriod(null); } + @Test + public void createQueueAddsTags() { + Map tags = new HashMap<>(); + tags.put("Tag1", "Value1"); + tags.put("Tag2", "Value2"); + createQueueShouldSetTags(tags); + } + @Test public void createQueueWithUnsupportedAttributes() { Assertions.assertThrows(IllegalArgumentException.class, () -> { - setupClient(null); + setupClient(null, new HashMap<>()); client.createQueue(new CreateQueueRequest() .withQueueName(queueNamePrefix + "InvalidQueue") .withAttributes(Collections.singletonMap(QueueAttributeName.FifoQueue.name(), "true"))); @@ -54,17 +65,18 @@ public void createQueueConfigurableIdleQueueRetentionPeriod() { @Test public void createQueueWithUnsupportedIdleQueueRetentionPeriod() { Assertions.assertThrows(IllegalArgumentException.class, () -> { - setupClient(-10L); + setupClient(-10L, new HashMap<>()); }); } - private void setupClient(Long idleQueueRetentionPeriod) { + private void setupClient(Long idleQueueRetentionPeriod, Map tags) { AmazonSQSRequesterClientBuilder requesterBuilder; requesterBuilder = AmazonSQSRequesterClientBuilder.standard() .withAmazonSQS(sqs) - .withInternalQueuePrefix(queueNamePrefix); + .withInternalQueuePrefix(queueNamePrefix) + .withQueueTags(tags); if (idleQueueRetentionPeriod != null) { requesterBuilder = requesterBuilder.withIdleQueueRetentionPeriodSeconds(idleQueueRetentionPeriod); } @@ -73,7 +85,7 @@ private void setupClient(Long idleQueueRetentionPeriod) { } private void createQueueShouldSetRetentionPeriod(Long idleQueueRetentionPeriod) { - setupClient(idleQueueRetentionPeriod); + setupClient(idleQueueRetentionPeriod, new HashMap<>()); idleQueueRetentionPeriod = (idleQueueRetentionPeriod != null) ? idleQueueRetentionPeriod : 300L; queueUrl = client.createQueue(queueNamePrefix + "TestQueue").getQueueUrl(); Map attributes = client.getQueueAttributes(queueUrl, Collections.singletonList("All")).getAttributes(); @@ -84,4 +96,15 @@ private void createQueueShouldSetRetentionPeriod(Long idleQueueRetentionPeriod) Map hostQueueAttributes = client.getQueueAttributes(queueUrl, Collections.singletonList("All")).getAttributes(); Assert.assertEquals(Long.toString(idleQueueRetentionPeriod), hostQueueAttributes.get(AmazonSQSIdleQueueDeletingClient.IDLE_QUEUE_RETENTION_PERIOD)); } + + private void createQueueShouldSetTags(Map tags) { + setupClient(null, tags); + CreateQueueRequest createQueueRequest = new CreateQueueRequest().withQueueName(queueNamePrefix + "TestQueue"); + queueUrl = client.createQueue(createQueueRequest).getQueueUrl(); + Map actualTags = client.listQueueTags(queueUrl).getTags(); + tags.forEach((k, v) -> { + assertTrue(actualTags.containsKey(k)); + assertEquals(v, actualTags.get(k)); + }); + } } diff --git a/src/test/java/com/amazonaws/services/sqs/SQSExecutorServiceIT.java b/src/test/java/com/amazonaws/services/sqs/SQSExecutorServiceIT.java index cea2555..4453050 100644 --- a/src/test/java/com/amazonaws/services/sqs/SQSExecutorServiceIT.java +++ b/src/test/java/com/amazonaws/services/sqs/SQSExecutorServiceIT.java @@ -74,7 +74,7 @@ protected Object writeReplace() throws ObjectStreamException { @Before public void setup() { requester = new AmazonSQSRequesterClient(sqs, queueNamePrefix, - Collections.emptyMap(), exceptionHandler); + Collections.emptyMap(), Collections.emptyMap(), exceptionHandler); responder = new AmazonSQSResponderClient(sqs); queueUrl = sqs.createQueue(queueNamePrefix + "-RequestQueue").getQueueUrl(); tasksCompletedLatch = new CountDownLatch(1); diff --git a/src/test/java/com/amazonaws/services/sqs/SQSScheduledExecutorServiceIT.java b/src/test/java/com/amazonaws/services/sqs/SQSScheduledExecutorServiceIT.java index 8f8f23f..488857f 100644 --- a/src/test/java/com/amazonaws/services/sqs/SQSScheduledExecutorServiceIT.java +++ b/src/test/java/com/amazonaws/services/sqs/SQSScheduledExecutorServiceIT.java @@ -64,7 +64,7 @@ protected Object writeReplace() throws ObjectStreamException { @Before public void setup() { requester = new AmazonSQSRequesterClient(sqs, queueNamePrefix, - Collections.emptyMap(), exceptionHandler); + Collections.emptyMap(), Collections.emptyMap(), exceptionHandler); responder = new AmazonSQSResponderClient(sqs); queueUrl = sqs.createQueue(queueNamePrefix + "-RequestQueue").getQueueUrl(); tasksRemaining = new AtomicInteger(1);