5555import software .amazon .awssdk .services .sqs .model .SendMessageRequest ;
5656
5757public abstract class AbstractAws2SqsBaseTest {
58-
5958 protected abstract InstrumentationExtension getTesting ();
6059
6160 protected abstract SqsClient configureSqsClient (SqsClient sqsClient );
@@ -64,13 +63,17 @@ public abstract class AbstractAws2SqsBaseTest {
6463
6564 protected abstract ClientOverrideConfiguration .Builder createOverrideConfigurationBuilder ();
6665
66+ protected abstract void assertSqsTraces (Boolean withParent , Boolean captureHeaders );
67+
6768 protected static final StaticCredentialsProvider CREDENTIALS_PROVIDER =
6869 StaticCredentialsProvider .create (
6970 AwsBasicCredentials .create ("my-access-key" , "my-secret-key" ));
7071
7172 protected static int sqsPort ;
7273 protected static SQSRestServer sqs ;
7374
75+ protected final String queueUrl = "http://localhost:" + sqsPort + "/000000000000/testSdkSqs" ;
76+
7477 static Map <String , MessageAttributeValue > dummyMessageAttributes (int count ) {
7578 Map <String , MessageAttributeValue > map = new HashMap <>();
7679 for (int i = 0 ; i < count ; i ++) {
@@ -80,27 +83,25 @@ static Map<String, MessageAttributeValue> dummyMessageAttributes(int count) {
8083 return map ;
8184 }
8285
83- protected final String queueUrl = "http://localhost:" + sqsPort + "/000000000000/testSdkSqs" ;
84-
85- ReceiveMessageRequest receiveMessageRequest =
86+ protected ReceiveMessageRequest receiveMessageRequest =
8687 ReceiveMessageRequest .builder ().queueUrl (queueUrl ).build ();
8788
88- ReceiveMessageRequest receiveMessageBatchRequest =
89+ protected ReceiveMessageRequest receiveMessageBatchRequest =
8990 ReceiveMessageRequest .builder ()
9091 .queueUrl (queueUrl )
9192 .maxNumberOfMessages (3 )
9293 .messageAttributeNames ("All" )
9394 .waitTimeSeconds (5 )
9495 .build ();
9596
96- CreateQueueRequest createQueueRequest =
97+ protected CreateQueueRequest createQueueRequest =
9798 CreateQueueRequest .builder ().queueName ("testSdkSqs" ).build ();
9899
99- SendMessageRequest sendMessageRequest =
100+ protected SendMessageRequest sendMessageRequest =
100101 SendMessageRequest .builder ().queueUrl (queueUrl ).messageBody ("{\" type\" : \" hello\" }" ).build ();
101102
102103 @ SuppressWarnings ("unchecked" )
103- SendMessageBatchRequest sendMessageBatchRequest =
104+ protected SendMessageBatchRequest sendMessageBatchRequest =
104105 SendMessageBatchRequest .builder ()
105106 .queueUrl (queueUrl )
106107 .entries (
@@ -111,7 +112,7 @@ static Map<String, MessageAttributeValue> dummyMessageAttributes(int count) {
111112 e -> e .messageBody ("e3" ).id ("i3" ).messageAttributes (dummyMessageAttributes (10 )))
112113 .build ();
113114
114- boolean isXrayInjectionEnabled () {
115+ protected boolean isXrayInjectionEnabled () {
115116 return true ;
116117 }
117118
@@ -122,21 +123,19 @@ protected void configureSdkClient(SqsClientBuilder builder) throws URISyntaxExce
122123 builder .region (Region .AP_NORTHEAST_1 ).credentialsProvider (CREDENTIALS_PROVIDER );
123124 }
124125
125- void configureSdkClient (SqsAsyncClientBuilder builder ) throws URISyntaxException {
126+ protected void configureSdkClient (SqsAsyncClientBuilder builder ) throws URISyntaxException {
126127 builder
127128 .overrideConfiguration (createOverrideConfigurationBuilder ().build ())
128129 .endpointOverride (new URI ("http://localhost:" + sqsPort ));
129130 builder .region (Region .AP_NORTHEAST_1 ).credentialsProvider (CREDENTIALS_PROVIDER );
130131 }
131132
132- boolean isSqsAttributeInjectionEnabled () {
133+ protected boolean isSqsAttributeInjectionEnabled () {
133134 // See io.opentelemetry.instrumentation.awssdk.v2_2.autoconfigure.TracingExecutionInterceptor
134135 return ConfigPropertiesUtil .getBoolean (
135136 "otel.instrumentation.aws-sdk.experimental-use-propagator-for-messaging" , false );
136137 }
137138
138- protected abstract void assertSqsTraces (Boolean withParent , Boolean captureHeaders );
139-
140139 @ BeforeAll
141140 static void setUp () {
142141 sqs = SQSRestServerBuilder .withPort (0 ).withInterface ("localhost" ).start ();
0 commit comments