diff options
author | dyh <dengyuanhong@chinamobile.com> | 2020-05-27 15:56:13 +0800 |
---|---|---|
committer | dyh <dengyuanhong@chinamobile.com> | 2020-05-27 16:00:46 +0800 |
commit | 9fe3930a822fe7978ffab9838611dc61b91cc948 (patch) | |
tree | df470daccdefddcf23c1268d9719bf5807f399fc /catalog/pub/Dmaap_lib/dmaap/identity.py | |
parent | fddda96911bdb3ec9841ac71e764cb6eb8fa08d5 (diff) |
update Dmaap lib
Issue-ID: MODELING-366
Change-Id: I69f86ef9a90423e33e3903dcc1be63028e1571b6
Signed-off-by: dyh <dengyuanhong@chinamobile.com>
Diffstat (limited to 'catalog/pub/Dmaap_lib/dmaap/identity.py')
-rw-r--r-- | catalog/pub/Dmaap_lib/dmaap/identity.py | 37 |
1 files changed, 29 insertions, 8 deletions
diff --git a/catalog/pub/Dmaap_lib/dmaap/identity.py b/catalog/pub/Dmaap_lib/dmaap/identity.py index 1dcaad8..9ca68cd 100644 --- a/catalog/pub/Dmaap_lib/dmaap/identity.py +++ b/catalog/pub/Dmaap_lib/dmaap/identity.py @@ -1,27 +1,30 @@ -# Copyright (c) 2019, CMCC Technologies Co., Ltd. -# Licensed under the Apache License, Version 2.0 (the "License") +# Copyright (c) 2019, CMCC Technologies. Co., Ltd. +# +# Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at -# http://www.apache.org/licenses/LICENSE-2.0 +# +# http://www.apache.org/licenses/LICENSE-2.0 +# # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. - import json import logging + import requests -from ..pub.exceptions import DmaapClientException +from catalog.pub.Dmaap_lib.pub.exceptions import DmaapClientException logger = logging.getLogger(__name__) class IdentityClient: - def __init__(self, host): - self.host = host + def __init__(self, base_url): + self.base_url = base_url def create_apikey(self, email, description): try: @@ -31,7 +34,7 @@ class IdentityClient: 'description': description } data = json.JSONEncoder().encode(data) - url = "http://%s/apiKeys/create" % (self.host) + url = self.base_url + "/apiKeys/create" ret = requests.post(url=url, data=data, headers=headers) logger.info('create apiKey, response status_code: %s, body: %s', ret.status_code, ret.json()) if ret.status_code != 200: @@ -44,3 +47,21 @@ class IdentityClient: return resp_data except Exception as e: raise DmaapClientException('create apikey from dmaap failed: ' + e.message) + + def get_apikey(self, apikey): + try: + url = self.base_url + "/apiKeys/%s" % apikey + ret = requests.get(url) + logger.info('get apiKey, response status_code: %s, body: %s', ret.status_code, ret.json()) + if ret.status_code != 200: + raise DmaapClientException(ret.json()) + ret = ret.json() + return ret + except Exception as e: + raise DmaapClientException('get apikey from dmaap failed: ' + e.message) + + def delete_apikey(self): + pass + + def update_apikey(self, apikey, email, description): + pass |