def _process_query_dict(self, search_terms, entry_types, blast_program, blast_sequence,
search_web, sort_field, sort_ascending, page_number):
query_dict = {}
query_url = None # TODO: re-instate this parameter if we can get ICE to support the same
# queries in GET as in POST...should simplify client use
if not query_url:
if search_terms:
query_dict['queryString'] = search_terms
if entry_types:
if not set(entry_types).issubset(set(ICE_ENTRY_TYPES)):
raise KeyError('')
query_dict['entryTypes'] = entry_types
self._process_query_blast(query_dict, blast_program, blast_sequence)
query_dict['webSearch'] = search_web # Note: affects results even if false?
self._process_query_parameters(query_dict, sort_field, sort_ascending, page_number)
else:
# un-parse the query URL so we're using consistently following the same code path
query_dict = parse_qs(urlparse(query_url).params)
return query_dict
评论列表
文章目录