From 3e2947b301152f2a590b1a11f20c7e89fd4fc07c Mon Sep 17 00:00:00 2001 From: William Luke Date: Wed, 15 Dec 2021 16:03:01 +0300 Subject: [PATCH] fix: /default_token --- apps/cic-eth/cic_eth/server/cache.py | 19 +++++++++++-------- apps/cic-eth/cic_eth/server/routes.py | 6 +++--- 2 files changed, 14 insertions(+), 11 deletions(-) diff --git a/apps/cic-eth/cic_eth/server/cache.py b/apps/cic-eth/cic_eth/server/cache.py index d27859ea..97e1c78e 100644 --- a/apps/cic-eth/cic_eth/server/cache.py +++ b/apps/cic-eth/cic_eth/server/cache.py @@ -14,6 +14,7 @@ logg = logging.getLogger(__file__) class Cache: store: Redis = None + def get_token_data(token_symbol: str): """ :param token_symbol: @@ -46,19 +47,23 @@ def set_token_data(token_symbol: str, data: dict): cache_data(key, json.dumps(data)) logg.debug(f'Cached token data for: {token_symbol} at: {key}') + def get_default_token() -> Optional[str]: """This function attempts to retrieve the default token's data from the redis cache. - :param chain_str: chain name and network id. - :type chain_str: str :return: :rtype: """ - logg.debug(f'Retrieving default token from cache for chain:') + logg.debug(f'Retrieving default token from cache') + # TODO: What should the identifier be? key = cache_data_key(identifier="ff".encode('utf-8'), salt=MetadataPointer.TOKEN_DEFAULT) - token_data = json.loads(get_cached_data(key=key)) - logg.debug(f'Retrieved default token data: {token_data}') - return token_data + default_token_str = get_cached_data(key=key) + if default_token_str is None: + logg.debug(f'No cached default token found: {key}') + return None + default_token = json.loads(default_token_str) + logg.debug(f'Retrieved default token data: {default_token}') + return default_token def set_default_token(default_token: dict): @@ -74,8 +79,6 @@ def set_default_token(default_token: dict): cache_data(key, json.dumps(default_token)) - - def cache_data(key: str, data: str): """ :param key: diff --git a/apps/cic-eth/cic_eth/server/routes.py b/apps/cic-eth/cic_eth/server/routes.py index da110294..15137525 100644 --- a/apps/cic-eth/cic_eth/server/routes.py +++ b/apps/cic-eth/cic_eth/server/routes.py @@ -98,10 +98,10 @@ def handle_tokens(start_response, query: dict) -> List[bytes]: def handle_default_token(start_response, _query) -> List[bytes]: data = cache.get_default_token() - if data == None: + if data is None: data = celery.call('default_token') - cache.set_default_token(data) - cache.set_token_data(data.get('token_symbol'), data) + if data is not None: + cache.set_default_token(data) return uwsgi.respond(start_response, data)