def get_service_by_request(args, kwargs): try: serve_cache = caches['default'] cate_abb = kwargs.pop('cate_abb', None) type_abb = kwargs.pop('type_abb', None) serve_abb = kwargs.pop('serve_abb', None) serve_cache_key = "%s-%s-%s" % (cate_abb, type_abb, serve_abb) if None == serve_cache.get(serve_cache_key): paramsObj = { 'service__serve_type__category__cate_abbreviation': cate_abb, 'service__serve_type__type_abbreviation': type_abb, 'service__serve_abbreviation': serve_abb, 'recursion': 1, 'page_no': 1, 'page_size': 10 } respObj, contentObj = RestUtils.rest_auth_get( "/api_secret/", paramsObj) service = contentObj.results[0] serve_cache.set(serve_cache_key, service) else: service = serve_cache.get(serve_cache_key) regexId = "https?://.*/base/(\d)\.json" matchId = re.search(regexId, service.service.url) if matchId: service.service.id = matchId.group(1) regexStatus = "https?://.*/status/(\d)\.json" matchStatus = re.search(regexStatus, service.service.status) if matchStatus: service.service.status = matchStatus.group(1) return service except Exception, e: logger.info(e) return None
def get_service_by_request(args, kwargs): try: serve_cache = caches["default"] cate_abb = kwargs.pop("cate_abb", None) type_abb = kwargs.pop("type_abb", None) serve_abb = kwargs.pop("serve_abb", None) serve_cache_key = "%s-%s-%s" % (cate_abb, type_abb, serve_abb) if None == serve_cache.get(serve_cache_key): paramsObj = { "service__serve_type__category__cate_abbreviation": cate_abb, "service__serve_type__type_abbreviation": type_abb, "service__serve_abbreviation": serve_abb, "recursion": 1, "page_no": 1, "page_size": 10, } respObj, contentObj = RestUtils.rest_auth_get("/api_secret/", paramsObj) service = contentObj.results[0] serve_cache.set(serve_cache_key, service) else: service = serve_cache.get(serve_cache_key) regexId = "https?://.*/base/(\d)\.json" matchId = re.search(regexId, service.service.url) if matchId: service.service.id = matchId.group(1) regexStatus = "https?://.*/status/(\d)\.json" matchStatus = re.search(regexStatus, service.service.status) if matchStatus: service.service.status = matchStatus.group(1) return service except Exception, e: logger.info(e) return None