CR fix
This commit is contained in:
parent
05dc97b468
commit
ed1c799bdc
@ -19,9 +19,12 @@ class MessageAttributesInvalid(Exception):
|
|||||||
self.description = description
|
self.description = description
|
||||||
|
|
||||||
|
|
||||||
class QueueDoesNotExist(Exception):
|
class QueueDoesNotExist(RESTError):
|
||||||
status_code = 404
|
code = 404
|
||||||
description = "The specified queue does not exist for this wsdl version."
|
|
||||||
|
def __init__(self):
|
||||||
|
super(QueueDoesNotExist, self).__init__(
|
||||||
|
"QueueDoesNotExist", "The specified queue does not exist for this wsdl version.")
|
||||||
|
|
||||||
|
|
||||||
class QueueAlreadyExists(RESTError):
|
class QueueAlreadyExists(RESTError):
|
||||||
|
@ -654,12 +654,21 @@ class SQSBackend(BaseBackend):
|
|||||||
|
|
||||||
def tag_queue(self, queue_name, tags):
|
def tag_queue(self, queue_name, tags):
|
||||||
queue = self.get_queue(queue_name)
|
queue = self.get_queue(queue_name)
|
||||||
|
|
||||||
|
if not len(tags):
|
||||||
|
raise RESTError('MissingParameter',
|
||||||
|
'The request must contain the parameter Tags.')
|
||||||
|
|
||||||
|
if len(tags) > 50:
|
||||||
|
raise RESTError('InvalidParameterValue',
|
||||||
|
'Too many tags added for queue {}.'.format(queue_name))
|
||||||
|
|
||||||
queue.tags.update(tags)
|
queue.tags.update(tags)
|
||||||
|
|
||||||
def untag_queue(self, queue_name, tag_keys):
|
def untag_queue(self, queue_name, tag_keys):
|
||||||
queue = self.get_queue(queue_name)
|
queue = self.get_queue(queue_name)
|
||||||
|
|
||||||
if len(tag_keys) == 0:
|
if not len(tag_keys):
|
||||||
raise RESTError('InvalidParameterValue', 'Tag keys must be between 1 and 128 characters in length.')
|
raise RESTError('InvalidParameterValue', 'Tag keys must be between 1 and 128 characters in length.')
|
||||||
|
|
||||||
for key in tag_keys:
|
for key in tag_keys:
|
||||||
|
@ -10,7 +10,6 @@ from .models import sqs_backends
|
|||||||
from .exceptions import (
|
from .exceptions import (
|
||||||
MessageAttributesInvalid,
|
MessageAttributesInvalid,
|
||||||
MessageNotInflight,
|
MessageNotInflight,
|
||||||
QueueDoesNotExist,
|
|
||||||
ReceiptHandleIsInvalid,
|
ReceiptHandleIsInvalid,
|
||||||
)
|
)
|
||||||
|
|
||||||
@ -90,11 +89,7 @@ class SQSResponse(BaseResponse):
|
|||||||
request_url = urlparse(self.uri)
|
request_url = urlparse(self.uri)
|
||||||
queue_name = self._get_param("QueueName")
|
queue_name = self._get_param("QueueName")
|
||||||
|
|
||||||
try:
|
queue = self.sqs_backend.get_queue(queue_name)
|
||||||
queue = self.sqs_backend.get_queue(queue_name)
|
|
||||||
except QueueDoesNotExist as e:
|
|
||||||
return self._error('AWS.SimpleQueueService.NonExistentQueue',
|
|
||||||
e.description)
|
|
||||||
|
|
||||||
if queue:
|
if queue:
|
||||||
template = self.response_template(GET_QUEUE_URL_RESPONSE)
|
template = self.response_template(GET_QUEUE_URL_RESPONSE)
|
||||||
@ -175,11 +170,8 @@ class SQSResponse(BaseResponse):
|
|||||||
|
|
||||||
def get_queue_attributes(self):
|
def get_queue_attributes(self):
|
||||||
queue_name = self._get_queue_name()
|
queue_name = self._get_queue_name()
|
||||||
try:
|
|
||||||
queue = self.sqs_backend.get_queue(queue_name)
|
queue = self.sqs_backend.get_queue(queue_name)
|
||||||
except QueueDoesNotExist as e:
|
|
||||||
return self._error('AWS.SimpleQueueService.NonExistentQueue',
|
|
||||||
e.description)
|
|
||||||
|
|
||||||
template = self.response_template(GET_QUEUE_ATTRIBUTES_RESPONSE)
|
template = self.response_template(GET_QUEUE_ATTRIBUTES_RESPONSE)
|
||||||
return template.render(queue=queue)
|
return template.render(queue=queue)
|
||||||
@ -242,11 +234,7 @@ class SQSResponse(BaseResponse):
|
|||||||
|
|
||||||
queue_name = self._get_queue_name()
|
queue_name = self._get_queue_name()
|
||||||
|
|
||||||
try:
|
self.sqs_backend.get_queue(queue_name)
|
||||||
self.sqs_backend.get_queue(queue_name)
|
|
||||||
except QueueDoesNotExist as e:
|
|
||||||
return self._error('AWS.SimpleQueueService.NonExistentQueue',
|
|
||||||
e.description)
|
|
||||||
|
|
||||||
if self.querystring.get('Entries'):
|
if self.querystring.get('Entries'):
|
||||||
return self._error('AWS.SimpleQueueService.EmptyBatchRequest',
|
return self._error('AWS.SimpleQueueService.EmptyBatchRequest',
|
||||||
@ -268,7 +256,7 @@ class SQSResponse(BaseResponse):
|
|||||||
'hyphens and underscores. It can be at most 80 letters long.')
|
'hyphens and underscores. It can be at most 80 letters long.')
|
||||||
|
|
||||||
body_length = next(
|
body_length = next(
|
||||||
(len(entry['MessageBody']) for entry in entries.values() if len(entry['MessageBody']) > 262144),
|
(len(entry['MessageBody']) for entry in entries.values() if len(entry['MessageBody']) > MAXIMUM_MESSAGE_LENGTH),
|
||||||
False
|
False
|
||||||
)
|
)
|
||||||
if body_length:
|
if body_length:
|
||||||
@ -363,10 +351,7 @@ class SQSResponse(BaseResponse):
|
|||||||
def receive_message(self):
|
def receive_message(self):
|
||||||
queue_name = self._get_queue_name()
|
queue_name = self._get_queue_name()
|
||||||
|
|
||||||
try:
|
queue = self.sqs_backend.get_queue(queue_name)
|
||||||
queue = self.sqs_backend.get_queue(queue_name)
|
|
||||||
except QueueDoesNotExist as e:
|
|
||||||
return self._error('QueueDoesNotExist', e.description)
|
|
||||||
|
|
||||||
try:
|
try:
|
||||||
message_count = int(self.querystring.get("MaxNumberOfMessages")[0])
|
message_count = int(self.querystring.get("MaxNumberOfMessages")[0])
|
||||||
@ -439,20 +424,6 @@ class SQSResponse(BaseResponse):
|
|||||||
queue_name = self._get_queue_name()
|
queue_name = self._get_queue_name()
|
||||||
tags = self._get_map_prefix('Tag', key_end='.Key', value_end='.Value')
|
tags = self._get_map_prefix('Tag', key_end='.Key', value_end='.Value')
|
||||||
|
|
||||||
try:
|
|
||||||
self.sqs_backend.get_queue(queue_name)
|
|
||||||
except QueueDoesNotExist as e:
|
|
||||||
return self._error('AWS.SimpleQueueService.NonExistentQueue',
|
|
||||||
e.description)
|
|
||||||
|
|
||||||
if len(tags) == 0:
|
|
||||||
return self._error('MissingParameter',
|
|
||||||
'The request must contain the parameter Tags.')
|
|
||||||
|
|
||||||
if len(tags) > 50:
|
|
||||||
return self._error('InvalidParameterValue',
|
|
||||||
'Too many tags added for queue {}.'.format(queue_name))
|
|
||||||
|
|
||||||
self.sqs_backend.tag_queue(queue_name, tags)
|
self.sqs_backend.tag_queue(queue_name, tags)
|
||||||
|
|
||||||
template = self.response_template(TAG_QUEUE_RESPONSE)
|
template = self.response_template(TAG_QUEUE_RESPONSE)
|
||||||
@ -462,11 +433,7 @@ class SQSResponse(BaseResponse):
|
|||||||
queue_name = self._get_queue_name()
|
queue_name = self._get_queue_name()
|
||||||
tag_keys = self._get_multi_param('TagKey')
|
tag_keys = self._get_multi_param('TagKey')
|
||||||
|
|
||||||
try:
|
self.sqs_backend.untag_queue(queue_name, tag_keys)
|
||||||
self.sqs_backend.untag_queue(queue_name, tag_keys)
|
|
||||||
except QueueDoesNotExist as e:
|
|
||||||
return self._error('AWS.SimpleQueueService.NonExistentQueue',
|
|
||||||
e.description)
|
|
||||||
|
|
||||||
template = self.response_template(UNTAG_QUEUE_RESPONSE)
|
template = self.response_template(UNTAG_QUEUE_RESPONSE)
|
||||||
return template.render()
|
return template.render()
|
||||||
@ -474,11 +441,7 @@ class SQSResponse(BaseResponse):
|
|||||||
def list_queue_tags(self):
|
def list_queue_tags(self):
|
||||||
queue_name = self._get_queue_name()
|
queue_name = self._get_queue_name()
|
||||||
|
|
||||||
try:
|
queue = self.sqs_backend.get_queue(queue_name)
|
||||||
queue = self.sqs_backend.get_queue(queue_name)
|
|
||||||
except QueueDoesNotExist as e:
|
|
||||||
return self._error('AWS.SimpleQueueService.NonExistentQueue',
|
|
||||||
e.description)
|
|
||||||
|
|
||||||
template = self.response_template(LIST_QUEUE_TAGS_RESPONSE)
|
template = self.response_template(LIST_QUEUE_TAGS_RESPONSE)
|
||||||
return template.render(tags=queue.tags)
|
return template.render(tags=queue.tags)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user