def swap_keys(dictionary_): return dict((TRANSACTIONS_LOOKUP.get(old_key, old_key), new_key) for (old_key, new_key) in dictionary_.items())
import re from django.conf import settings from usaspending_api.awards.v2.lookups.elasticsearch_lookups import KEYWORD_DATATYPE_FIELDS from usaspending_api.awards.v2.lookups.elasticsearch_lookups import INDEX_ALIASES_TO_AWARD_TYPES from usaspending_api.awards.v2.lookups.elasticsearch_lookups import TRANSACTIONS_LOOKUP from usaspending_api.common.elasticsearch.client import es_client_query logger = logging.getLogger("console") TRANSACTIONS_INDEX_ROOT = settings.TRANSACTIONS_INDEX_ROOT DOWNLOAD_QUERY_SIZE = settings.MAX_DOWNLOAD_LIMIT KEYWORD_DATATYPE_FIELDS = ["{}.raw".format(i) for i in KEYWORD_DATATYPE_FIELDS] TRANSACTIONS_LOOKUP.update({v: k for k, v in TRANSACTIONS_LOOKUP.items()}) def preprocess(keyword): keyword = concat_if_array(keyword) """Remove Lucene special characters instead of escaping for now""" processed_string = re.sub(r"[/:][^!]", "", keyword) if len(processed_string) != len(keyword): msg = "Stripped characters from ES keyword search string New: '{}' Original: '{}'" logger.info(msg.format(processed_string, keyword)) keyword = processed_string return keyword def swap_keys(dictionary_): return dict((TRANSACTIONS_LOOKUP.get(old_key, old_key), new_key) for (old_key, new_key) in dictionary_.items())