from osmclient.common.exceptions import ClientException
from osmclient.common.exceptions import NotFound
import json
+import logging
class User(object):
def __init__(self, http=None, client=None):
self._http = http
self._client = client
+ self._logger = logging.getLogger('osmclient')
self._apiName = '/admin'
self._apiVersion = '/v1'
self._apiResource = '/users'
def create(self, name, user):
"""Creates a new OSM user
"""
+ self._logger.debug("")
self._client.get_token()
if not user["projects"] or (len(user["projects"]) == 1 and not user["projects"][0]):
del user["projects"]
def update(self, name, user):
"""Updates an existing OSM user identified by name
"""
+ self._logger.debug("")
self._client.get_token()
# print(user)
myuser = self.get(name)
if not update_user:
raise ClientException("At least something should be changed.")
- http_code, resp = self._http.put_cmd(endpoint='{}/{}'.format(self._apiBase, myuser['_id']),
+ http_code, resp = self._http.patch_cmd(endpoint='{}/{}'.format(self._apiBase, myuser['_id']),
postfields_dict=update_user)
# print('HTTP CODE: {}'.format(http_code))
# print('RESP: {}'.format(resp))
def delete(self, name, force=False):
"""Deletes an existing OSM user identified by name
"""
+ self._logger.debug("")
self._client.get_token()
user = self.get(name)
querystring = ''
def list(self, filter=None):
"""Returns the list of OSM users
"""
+ self._logger.debug("")
self._client.get_token()
filter_string = ''
if filter:
def get(self, name):
"""Returns an OSM user based on name or id
"""
+ self._logger.debug("")
self._client.get_token()
if utils.validate_uuid4(name):
for user in self.list():
return user
raise NotFound("User {} not found".format(name))
-