def clean_callback(request): app = request.match_info['app'] queue = request.match_info['queue'] key = yield from generate_key(app, queue) with (yield from request.app['redis_pool']) as redis: redis.delete(key) return web.Response(text=json.dumps({}), content_type='application/json')
def last_callback(request): app = request.match_info['app'] queue = request.match_info['queue'] key = yield from generate_key(app, queue) with (yield from request.app['redis_pool']) as redis: request_ = yield from redis.rpop(key) request_ = decode_json(request_) data = json.dumps({'request': request_}) return web.Response(text=data, content_type='application/json')
def all_callback(request): app = request.match_info['app'] queue = request.match_info['queue'] key = yield from generate_key(app, queue) with (yield from request.app['redis_pool']) as redis: requests = yield from redis.lrange(key, 0, -1) requests = [decode_json(r) for r in requests] redis.delete(key) data = json.dumps({'requests': requests}) return web.Response(text=data, content_type='application/json')
def callback(request): # TODO: Add support for addtional_url app = request.match_info['app'] queue = request.match_info['queue'] key = yield from generate_key(app, queue) request_ = yield from request_to_dict(request) json_ = yield from encode_json(request_) with (yield from request.app['redis_pool']) as redis: redis.rpush(key, json_) return web.Response(text=json.dumps({'request': request_}), content_type='application/json')