return get_response
@app.route('/roles', methods=['GET', 'POST'])
-def GetRoles():
+def roles():
if request.method == 'POST':
args = [request.json.get('auth')]
result = api.call(request.remote_addr, 'GetRoles', *args)
return prepare_response(result)
return get_response
+
+
+@app.route('/role', methods=['GET', 'POST', 'PUT', 'DELETE'])
+@app.route('/role/<role_id>', methods=['GET', 'POST', 'PUT', 'DELETE'])
+def role(role_id=None):
+ method='GetRoles'
+ if request.method == 'POST':
+ args = [request.json.get('auth')]
+ role = request.json.get('role')
+ if not role_id:
+ method = 'AddRole'
+ args.append(role)
+ else:
+ if not role:
+ method = 'GetRoles'
+ # GetRoles doesnt support filtering
+ #args.append(role_id)
+ else:
+ method = 'GetRoles'
+ elif request.method == 'PUT':
+ # There is no UpdateRole method
+ pass
+ elif request.method == 'Delete':
+ method = 'DeleteRole'
+ args = [request.json.get('auth'), role_id]
+ result = api.call(request.remote_addr, method, *args)
+ return prepare_response(result)
+