def send_message( self, queue_name, message_body, message_attributes=None, delay_seconds=None, deduplication_id=None, group_id=None, ): queue = self.get_queue(queue_name) if delay_seconds: delay_seconds = int(delay_seconds) else: delay_seconds = queue.delay_seconds message_id = get_random_message_id() message = Message(message_id, message_body) # Attributes, but not *message* attributes if deduplication_id is not None: message.deduplication_id = deduplication_id if group_id is not None: message.group_id = group_id if message_attributes: message.message_attributes = message_attributes message.mark_sent(delay_seconds=delay_seconds) queue.add_message(message) return message
def send_message(self, queue_name, message_body, delay_seconds=None): # TODO impemented delay_seconds queue = self.get_queue(queue_name) message_id = get_random_message_id() message = Message(message_id, message_body) queue.messages.append(message) return message
def send_message(self, queue_name, message_body, message_attributes=None, delay_seconds=None, deduplication_id=None, group_id=None): queue = self.get_queue(queue_name) if delay_seconds: delay_seconds = int(delay_seconds) else: delay_seconds = queue.delay_seconds message_id = get_random_message_id() message = Message(message_id, message_body) # Attributes, but not *message* attributes if deduplication_id is not None: message.deduplication_id = deduplication_id if group_id is not None: message.group_id = group_id if message_attributes: message.message_attributes = message_attributes message.mark_sent( delay_seconds=delay_seconds ) queue.add_message(message) return message
def send_message( self, queue_name, message_body, message_attributes=None, delay_seconds=None, deduplication_id=None, group_id=None, system_attributes=None, ): queue = self.get_queue(queue_name) if len(message_body) > queue.maximum_message_size: msg = "One or more parameters are invalid. Reason: Message must be shorter than {} bytes.".format( queue.maximum_message_size ) raise InvalidParameterValue(msg) if delay_seconds: delay_seconds = int(delay_seconds) else: delay_seconds = queue.delay_seconds message_id = get_random_message_id() message = Message(message_id, message_body, system_attributes) # if content based deduplication is set then set sha256 hash of the message # as the deduplication_id if queue.attributes.get("ContentBasedDeduplication") == "true": sha256 = hashlib.sha256() sha256.update(message_body.encode("utf-8")) message.deduplication_id = sha256.hexdigest() # Attributes, but not *message* attributes if deduplication_id is not None: message.deduplication_id = deduplication_id message.sequence_number = "".join( random.choice(string.digits) for _ in range(20) ) if group_id is None: # MessageGroupId is a mandatory parameter for all # messages in a fifo queue if queue.fifo_queue: raise MissingParameter("MessageGroupId") else: message.group_id = group_id if message_attributes: message.message_attributes = message_attributes message.mark_sent(delay_seconds=delay_seconds) queue.add_message(message) return message
def send_message(self, queue_name, message_body, delay_seconds=None): queue = self.get_queue(queue_name) if delay_seconds: delay_seconds = int(delay_seconds) else: delay_seconds = queue.delay_seconds message_id = get_random_message_id() message = Message(message_id, message_body) message.mark_sent(delay_seconds=delay_seconds) queue.add_message(message) return message
def send_message( self, queue_name, message_body, message_attributes=None, delay_seconds=None, deduplication_id=None, group_id=None, ): queue = self.get_queue(queue_name) if len(message_body) > queue.maximum_message_size: msg = "One or more parameters are invalid. Reason: Message must be shorter than {} bytes.".format( queue.maximum_message_size) raise InvalidParameterValue(msg) if delay_seconds: delay_seconds = int(delay_seconds) else: delay_seconds = queue.delay_seconds message_id = get_random_message_id() message = Message(message_id, message_body) # if content based deduplication is set then set sha256 hash of the message # as the deduplication_id if queue.attributes.get("ContentBasedDeduplication") == "true": sha256 = hashlib.sha256() sha256.update(message_body.encode("utf-8")) message.deduplication_id = sha256.hexdigest() # Attributes, but not *message* attributes if deduplication_id is not None: message.deduplication_id = deduplication_id if group_id is not None: message.group_id = group_id if message_attributes: message.message_attributes = message_attributes message.mark_sent(delay_seconds=delay_seconds) queue.add_message(message) return message
def send_message(self, queue_name, message_body, delay_seconds=None): queue = self.get_queue(queue_name) if delay_seconds: delay_seconds = int(delay_seconds) else: delay_seconds = queue.delay_seconds message_id = get_random_message_id() message = Message(message_id, message_body) message.mark_sent( delay_seconds=delay_seconds ) queue.add_message(message) return message
def send_message( self, queue_name, message_body, message_attributes=None, delay_seconds=None, deduplication_id=None, group_id=None, ): queue = self.get_queue(queue_name) if len(message_body) > queue.maximum_message_size: msg = "One or more parameters are invalid. Reason: Message must be shorter than {} bytes.".format( queue.maximum_message_size) raise InvalidParameterValue(msg) if delay_seconds: delay_seconds = int(delay_seconds) else: delay_seconds = queue.delay_seconds message_id = get_random_message_id() message = Message(message_id, message_body) # Attributes, but not *message* attributes if deduplication_id is not None: message.deduplication_id = deduplication_id if group_id is not None: message.group_id = group_id if message_attributes: message.message_attributes = message_attributes message.mark_sent(delay_seconds=delay_seconds) queue.add_message(message) return message