-
Notifications
You must be signed in to change notification settings - Fork 198
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Implement AWS JSON protocol 1.0 #815
Conversation
7a25ce4
to
87cf644
Compare
rest/rest-sqs/src/main/scala/org/elasticmq/rest/sqs/CreateQueueDirectives.scala
Outdated
Show resolved
Hide resolved
96c5619
to
2f872a4
Compare
Co-authored-by: Adam Fish Rybicki <[email protected]>
Refactoring with AkkaSupport trait
|
rest/rest-sqs/src/main/scala/org/elasticmq/rest/sqs/AkkaSupport.scala
Outdated
Show resolved
Hide resolved
rest/rest-sqs/src/main/scala/org/elasticmq/rest/sqs/AkkaSupport.scala
Outdated
Show resolved
Hide resolved
rest/rest-sqs/src/main/scala/org/elasticmq/rest/sqs/AkkaSupport.scala
Outdated
Show resolved
Hide resolved
rest/rest-sqs/src/main/scala/org/elasticmq/rest/sqs/QueueAttributesDirectives.scala
Show resolved
Hide resolved
rest/rest-sqs/src/main/scala/org/elasticmq/rest/sqs/QueueAttributesDirectives.scala
Outdated
Show resolved
Hide resolved
rest/rest-sqs/src/main/scala/org/elasticmq/rest/sqs/XmlSerializer.scala
Outdated
Show resolved
Hide resolved
extractRequest { request => | ||
entityOrEmpty { fd => | ||
body((fd.fields.toMap ++ queryParameters ++ extractAwsXRayTracingHeader(request)).filter(_._1 != "")) | ||
private def extractQueueNameAndUrlFromRequest(body: Map[String, String] => Route): Route = { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
[minor] this looks like a Directive
;)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do you mean I should move it somewhere?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
no, the method should be a directive. Sth like extractQueueNameAndUrlFromRequest(Map): Directive0
, no?
I left some comments, looks good overall :) What about testing? Will it be possible to test both the XML and JSON interfaces? And also ... @micossow maybe you could take a look as well? You're probably most up-to-date with EMQ :) |
rest/rest-sqs/src/main/scala/org/elasticmq/rest/sqs/directives/AWSProtocolDirectives.scala
Show resolved
Hide resolved
closes #812 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Great job 👏
* Added integration tests for CLI * Added integration tests for CLI * send single message tests * interpolation in strings * Add test for tagging, adding permissions and for invalid input * Added test for purge queue * delete queue wip * receive messages test * send message batch tests * delete message test * Add tests for visibility timeout * delete message batch wip * Tests for set and get attribute names * Add case keyword for inside blocks * Skip some tests for 2.12 --------- Co-authored-by: Adam Fish Rybicki <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Great work :)
Implement AMZ Json Protocol 1.0.
- [ ] (optional) Customize serialization (use camelCase in case classes and respond with PascalCase)- [ ] Add ListDeadLetterSourceQueues Actionhttps://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_ListDeadLetterSourceQueues.html
- [ ] Add RemovePermission Actionhttps://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_RemovePermission.html