1 package com.atlassian.messagequeue.internal.sqs;
2
3 import com.atlassian.messagequeue.MessageRunnerKey;
4 import com.atlassian.messagequeue.TenantDataIdSupplier;
5 import com.atlassian.messagequeue.internal.core.DefaultMessageInformationService;
6 import com.atlassian.messagequeue.internal.core.NestedMessageSerializer;
7 import com.atlassian.tenant.api.TenantContextProvider;
8
9 import static java.util.Objects.requireNonNull;
10
11
12
13
14
15 public class SQSMessageInformationService extends DefaultMessageInformationService {
16 private final SQSMessageRunnerKeyToProducerMapper messageRunnerKeyToProducerMapper;
17
18
19
20
21
22
23
24 public SQSMessageInformationService(SQSMessageRunnerKeyToProducerMapper messageRunnerKeyToProducerMapper, TenantContextProvider tenantContextProvider, NestedMessageSerializer nestedMessageSerializer, TenantDataIdSupplier tenantDataIdSupplier) {
25 super("", tenantContextProvider, nestedMessageSerializer, tenantDataIdSupplier);
26 this.messageRunnerKeyToProducerMapper = requireNonNull(messageRunnerKeyToProducerMapper);
27 }
28
29 @Override
30 public String getQueueUrl(MessageRunnerKey messageRunnerKey) {
31 return messageRunnerKeyToProducerMapper.getQueueConfigForMessageRunner(messageRunnerKey).getQueueUrl();
32 }
33 }