summaryrefslogtreecommitdiffstats
path: root/testapi/opnfv_testapi/handlers/user_handlers.py
diff options
context:
space:
mode:
Diffstat (limited to 'testapi/opnfv_testapi/handlers/user_handlers.py')
-rw-r--r--testapi/opnfv_testapi/handlers/user_handlers.py25
1 files changed, 25 insertions, 0 deletions
diff --git a/testapi/opnfv_testapi/handlers/user_handlers.py b/testapi/opnfv_testapi/handlers/user_handlers.py
new file mode 100644
index 0000000..5067e35
--- /dev/null
+++ b/testapi/opnfv_testapi/handlers/user_handlers.py
@@ -0,0 +1,25 @@
+from opnfv_testapi.common import constants
+from opnfv_testapi.common import raises
+from opnfv_testapi.common.config import CONF
+from opnfv_testapi.handlers import base_handlers
+from opnfv_testapi.models.user_models import User
+
+
+class UserHandler(base_handlers.GenericApiHandler):
+ def __init__(self, application, request, **kwargs):
+ super(UserHandler, self).__init__(application, request, **kwargs)
+ self.table = 'users'
+ self.table_cls = User
+
+ def get(self):
+ if CONF.api_authenticate:
+ username = self.get_secure_cookie(constants.TESTAPI_ID)
+ if username:
+ self._get_one(query={'user': username})
+ else:
+ raises.Unauthorized('Unauthorized')
+ else:
+ self.finish_request(User('anonymous',
+ 'anonymous@linuxfoundation.com',
+ 'anonymous lf',
+ constants.TESTAPI_USERS).format())