X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=RO-SDN-juniper_contrail%2Fosm_rosdn_juniper_contrail%2Frest_lib.py;h=699655a336188f41f4432e6ddc4e04b0aa4b7650;hb=1ec592d80c7f07874b08a14984deb21fddb31441;hp=7ec2401abfbb11dc27c2e1ab96b701a2f8482a18;hpb=a5c26d8be1a5896675f7eb07c6afeb1aa26c7172;p=osm%2FRO.git diff --git a/RO-SDN-juniper_contrail/osm_rosdn_juniper_contrail/rest_lib.py b/RO-SDN-juniper_contrail/osm_rosdn_juniper_contrail/rest_lib.py index 7ec2401a..699655a3 100644 --- a/RO-SDN-juniper_contrail/osm_rosdn_juniper_contrail/rest_lib.py +++ b/RO-SDN-juniper_contrail/osm_rosdn_juniper_contrail/rest_lib.py @@ -17,11 +17,11 @@ import requests import json import copy -import logging from time import time from requests.exceptions import ConnectionError + class HttpException(Exception): pass @@ -96,18 +96,19 @@ class ContrailHttp(object): return resp.text def _get_token(self, headers): - self._logger.debug('Current Token:'.format(self.token)) - auth_url = self.auth_url + 'auth/tokens' - if self.token is None or self._token_expired(): - if not self.auth_url: - self.token = "" - resp = self._request_noauth(url=auth_url, op="POST", headers=headers, - data=self.auth_dict) - self.token = resp.headers.get('x-subject-token') - self.last_token_time = time.time() - self._logger.debug('Obtained token: '.format(self.token)) - - return self.token + if self.auth_url: + self._logger.debug('Current Token: {}'.format(self.token)) + auth_url = self.auth_url + 'auth/tokens' + if self.token is None or self._token_expired(): + if not self.auth_url: + self.token = "" + resp = self._request_noauth(url=auth_url, op="POST", headers=headers, + data=self.auth_dict) + self.token = resp.headers.get('x-subject-token') + self.last_token_time = time.time() + self._logger.debug('Obtained token: {}'.format(self.token)) + + return self.token def _token_expired(self): current_time = time.time() @@ -120,8 +121,8 @@ class ContrailHttp(object): headers = http_headers.copy() # Get authorization (include authentication headers) - # todo - añadir token de nuevo - #token = self._get_token(headers) + # TODO add again token + # token = self._get_token(headers) token = None if token: headers['X-Auth-Token'] = token @@ -147,13 +148,13 @@ class ContrailHttp(object): # Execute operation try: self._logger.info("Request METHOD: {} URL: {}".format(op, url)) - if (op == "GET"): + if op == "GET": resp = self._http_get(url, headers, query_params=data) - elif (op == "POST"): + elif op == "POST": resp = self._http_post(url, headers, json_data=data) - elif (op == "POST_HEADERS"): + elif op == "POST_HEADERS": resp = self._http_post_headers(url, headers, json_data=data) - elif (op == "DELETE"): + elif op == "DELETE": resp = self._http_delete(url, headers, json_data=data) else: raise HttpException("Unsupported operation: {}".format(op)) @@ -200,4 +201,3 @@ class ContrailHttp(object): def _http_delete(self, url, headers, json_data=None): return requests.delete(url, json=json_data, headers=headers) -