def route_get_message(message_id): try: message = get_message(message_id) except MessageNotFoundException: return error(404, u'Message not found') return respond({'message': message.full_dict()})
def route_get_receiver_messages(receiver_name): limit = request.args.get('limit') offset = request.args.get('offset') messages = get_unread_messages(receiver_name, limit, offset) return respond({'messages': [m.short_dict() for m in messages]})
def route_delete_message(message_id): try: message = get_message(message_id) delete_message(message) except MessageNotFoundException: return error(404, u'Message not found') return respond({})
def route_get_messages(): receiver = request.args.get('receiver') read = request.args.get('read') limit = request.args.get('limit') offset = request.args.get('offset') messages = get_messages(receiver, read, limit, offset) return respond({'messages': [m.short_dict() for m in messages]})
def route_create_message(): try: data = request.get_json() message = create_message(data) except (BadRequest, TypeError): return error(400, u'Invalid request') except KeyError as e: return error(400, u'Missing parameter: %s' % e) return respond({'message': message.full_dict()}, 201)
def route_update_message(message_id): try: data = request.get_json() message = get_message(message_id) message = update_message(message, data) except (BadRequest, TypeError): return error(400, u'Invalid request') except MessageNotFoundException: return error(404, u'Message not found') return respond({'message': message.full_dict()})
def route_get_receiver(receiver_name): receiver = get_receiver(receiver_name) return respond({'receiver': receiver.full_dict()})