Skip to content

Commit 1c64438

Browse files
author
Luis Leiva
committed
Created response wrapper
1 parent 15a4d4d commit 1c64438

File tree

1 file changed

+16
-10
lines changed

1 file changed

+16
-10
lines changed

recommender/server.py

Lines changed: 16 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,6 @@ def ranker(objs, sortby=None, desc=True):
7777
return objs
7878
else:
7979
fn = itemgetter(sortby)
80-
8180
candidates = sorted(objs, key=fn, reverse=desc)
8281
return candidates
8382

@@ -101,9 +100,16 @@ def paginator(values, page=1, num=1):
101100
return pages[index] if index >= 0 and index < len(pages) else []
102101

103102

103+
def response(data=None, err_code=None):
104+
if not err_code:
105+
return jsonify({'data': data, 'code': 200})
106+
107+
return jsonify({'error': msg[err_code], 'code': err_code})
108+
109+
104110
@app.route("/", methods=['GET', 'POST'])
105111
def check():
106-
return jsonify({'alive': True, 'code': 200})
112+
return response('Up and running!')
107113

108114

109115
@app.route("/info", methods=['GET'])
@@ -113,25 +119,25 @@ def get_app():
113119
prop = request.args.get('prop', None)
114120

115121
if not screen_id:
116-
return jsonify({'error': msg[100], 'code': 100})
122+
return response(err_code=100)
117123

118124
filepath = './enrico/metadata/{}.json'.format(screen_id)
119125
if not os.path.exists(filepath):
120-
return jsonify({'error': msg[101], 'code': 101})
126+
return response(err_code=101)
121127

122128
with open(filepath) as f:
123129
metadata = json.load(f)
124130

125131
if not metadata:
126-
return jsonify({'error': msg[102], 'code': 102})
132+
return response(err_code=102)
127133

128134
if not prop:
129-
return jsonify({'data': metadata, 'code': 200})
135+
return response(data=metadata)
130136

131137
if prop not in metadata:
132-
return jsonify({'error': msg[103], 'code': 103})
138+
return response(err_code=103)
133139

134-
return jsonify({'data': metadata[prop], 'code': 200})
140+
return response(data=metadata[prop])
135141

136142

137143
@app.route("/results", methods=['GET'])
@@ -162,9 +168,9 @@ def get_results():
162168
num=num_results, page=num_page, sort=sort_by, desc=not sort_asc)
163169

164170
if not results:
165-
return jsonify({'error': msg[400], 'code': 400})
171+
return response(err_code=400)
166172

167-
return jsonify({'data': results, 'code': 200})
173+
return response(data=results)
168174

169175

170176
def find(category=None, design=None, screen_id=None,

0 commit comments

Comments
 (0)