SQS TagQueue and Tag(s) parameter
- Dominant language
- Java
- Stars
- 2.6k
- Forks
- 1k
- Avg merge
- 2d 9h
- Merged PRs (30d)
- 51
Description
Hello,
I noticed Java SDK behaves differently than the AWS CLI 2 and than the documentation about `Tag` argument names for method [SQS TagQueue](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_TagQueue.html)
* Java SDK version = 2.16.82
* CLI version = aws-cli/2.1.36
Java SDK send tags with an "s" whereas documentation mention no "s" at the end of the word
You can see the difference bellow with a CLI request and an Java SDK request:
```
CLI = Action=TagQueue&Version=2012-11-05&QueueUrl=XXX&Tag.1.Key=Name&Tag.1.Value=my-queue
SDK = Action=TagQueue&Version=2012-11-05&QueueUrl=XXX&Tags.1.Key=Name&Tags.1.Value=my-queue
```
I tried to investigate without success but let me share my results. I took a look in the jar file sqs-2.16.82.jar.
File [**sqs-2.16.82.jar!/codegen-resources/service-2.json**](https://github.com/aws/aws-sdk-java-v2/blob/master/services/sqs/src/main/resources/codegen-resources/service-2.json#L1462)
```json
"TagMap":{
"type":"map",
"key":{
"shape":"TagKey",
"locationName":"Key"
},
"value":{
"shape":"TagValue",
"locationName":"Value"
},
"flattened":true,
"locationName":"Tag"
}
```
File **sqs-2.16.82.jar!/software/amazon/awssdk/services/sqs/model/TagQueueRequest.class**
```java
private static final SdkField> TAGS_FIELD = SdkField
.> builder(MarshallingType.MAP)
.memberName("Tags")
.getter(getter(TagQueueRequest::tags))
.setter(setter(Builder::tags))
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD).locationName("Tags").build(),
MapTrait.builder()
.keyLocationName("Key")
.valueLocationName("Value")
.valueFieldInfo(
SdkField. builder(MarshallingType.STRING)
.traits(LocationTrait.builder().location(MarshallLocation.PAYLOAD)
.locationName("Value").build()).build()).isFlattened(true).build()).build();
```
Why is the value of `locationName` in the Java code equal to `Tags`and not `Tag` as specified in the file `service-2.json`
Contributor guide
Assessment
This issue has not been assessed yet.