diff --git a/src/api/get.py b/src/api/get.py index 2ccc41a..2a5f994 100644 --- a/src/api/get.py +++ b/src/api/get.py @@ -1,6 +1,6 @@ from flask_restx import Namespace, Resource, fields from flask_restx import reqparse -from flask import make_response +from flask import make_response, abort from api.clientGetter import getClientSafely import logging import random @@ -18,15 +18,11 @@ class getExactFile(Resource): def get(self, file_name): client = getClientSafely() if client is None: - return { - "message" : "Error connecting to S3" - }, 500 + abort(500, "S3 failed to start") if file_name in client.getCurrentMemeList(): return make_response(client.getMeme(file_name)) else: - return { - "message": "Requested file '" + file_name + "' not found" - }, 404 + abort(400, "Requested file '" + file_name + "' not found") @api.route('/random') @api.doc(description="Returns a random meme") @@ -37,9 +33,7 @@ class getRandomFile(Resource): def get(self): client = getClientSafely() if client is None: - return { - "message" : "Error connecting to S3" - }, 500 + abort(500, "S3 failed to start") choice = random.choice(tuple(client.getCurrentMemeList())) return make_response(client.getMeme(choice)) @@ -54,9 +48,7 @@ class getRandomFile(Resource): def get(self): client = getClientSafely() if client is None: - return { - "message" : "Error connecting to S3" - }, 500 + abort(500, "S3 failed to start") choice = random.choice(tuple(client.getCurrentMemeList())) while choice in self.cache: diff --git a/src/api/search.py b/src/api/search.py index 931d520..1ffb003 100644 --- a/src/api/search.py +++ b/src/api/search.py @@ -1,6 +1,8 @@ from flask_restx import Namespace, Resource, fields from flask_restx import reqparse from api.clientGetter import getClientSafely +from api.get import getExactFile as getApi +from flask import abort import logging # Exported namespace @@ -18,11 +20,12 @@ class exactSearch(Resource): def get(self, query): client = getClientSafely() if client is None: - return { - "message": "Error connecting to S3" - }, 500 + abort(500, "S3 failed to start") if query in client.getCurrentMemeList(): - return "nice" + return { + "found" : True, + "url" : "/resource/exact/" + query + } else: - return "boo" + return { "found" : False } diff --git a/src/api/util.py b/src/api/util.py index 6293ed5..dd87da9 100644 --- a/src/api/util.py +++ b/src/api/util.py @@ -1,5 +1,6 @@ from flask_restx import Namespace, Resource, fields from flask_restx import reqparse +from flask import abort from api.clientGetter import getClientSafely import logging @@ -12,10 +13,7 @@ class getCount(Resource): def get(self): client = getClientSafely() if client is None: - return { - "message": "Error connecting to S3" - }, 500 - + abort(500, "S3 failed to start") return { "count" : len(client.getCurrentMemeList()) }, 200