Skip to content

Commit 6670b55

Browse files
committed
get cpm filter directly
1 parent 01809ac commit 6670b55

File tree

3 files changed

+8
-12
lines changed

3 files changed

+8
-12
lines changed

docker/sds-api/spine-directory-service/sds/request/accredited_system_handler.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -32,14 +32,14 @@ async def get(self):
3232

3333
manufacturing_organization = self.get_optional_query_param(MANUFACTURING_ORGANIZATION_QUERY_PARAMETER_NAME, MANUFACTURING_ORGANIZATION_FHIR_IDENTIFIER)
3434
party_key = self.get_optional_query_param(IDENTIFIER_QUERY_PARAMETER_NAME, PARTY_KEY_FHIR_IDENTIFIER)
35-
cpm_filter = self.get_optional_query_param(CPM_FILTER, CPM_FILTER_IDENTIFIER)
35+
cpm_filter = self.get_query_argument(name=CPM_FILTER, default=None)
3636

3737
accept_type = get_valid_accept_type(self.request.headers)
3838

3939
logger.info("Looking up accredited system information for {org_code}, {service_id}, {manufacturing_organization}, {party_key}",
4040
fparams={"org_code": org_code, "service_id": service_id, 'manufacturing_organization': manufacturing_organization, 'party_key': party_key})
4141

42-
if cpm_filter and cpm_filter[0] == CPM_FILTER_IDENTIFIER:
42+
if cpm_filter == CPM_FILTER_IDENTIFIER:
4343
ldap_result = await get_device_from_cpm(org_code=org_code, interaction_id=service_id, manufacturing_organization=manufacturing_organization, party_key=party_key, tracking_id_headers=tracking_id_headers)
4444
if 'resourceType' in ldap_result and ldap_result['resourceType'] == 'OperationOutcome':
4545
self.write(json.dumps(ldap_result, indent=2, sort_keys=False))

docker/sds-api/spine-directory-service/sds/request/base_handler.py

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -42,15 +42,11 @@ def get_required_query_param(self, query_param_name: str, fhir_identifier: str)
4242
return value
4343

4444
def get_optional_query_param(self, query_param_name: str, fhir_identifier: str) -> Optional[str]:
45-
if query_param_name != CPM_FILTER:
46-
values = list(filter(lambda value: "|" in value and value.split("|")[0] == fhir_identifier and value[value.index("|") + 1:].strip(), self.get_query_arguments(query_param_name)))
45+
values = list(filter(lambda value: "|" in value and value.split("|")[0] == fhir_identifier and value[value.index("|") + 1:].strip(), self.get_query_arguments(query_param_name)))
4746

48-
last_value = values and values[-1]
49-
result_value = (last_value and last_value[last_value.index("|") + 1:]) or None
50-
return result_value
51-
else:
52-
value = self.get_query_arguments(query_param_name)
53-
return value
47+
last_value = values and values[-1]
48+
result_value = (last_value and last_value[last_value.index("|") + 1:]) or None
49+
return result_value
5450

5551
def _raise_invalid_query_param_error(self, query_param_name, fhir_identifier):
5652
raise tornado.web.HTTPError(

docker/sds-api/spine-directory-service/sds/request/routing_reliability_handler.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ async def get(self):
3838
org_code = self.get_optional_query_param(ORG_CODE_QUERY_PARAMETER_NAME, ORG_CODE_FHIR_IDENTIFIER)
3939
service_id = self.get_optional_query_param(IDENTIFIER_QUERY_PARAMETER_NAME, SERVICE_ID_FHIR_IDENTIFIER)
4040
party_key = self.get_optional_query_param(IDENTIFIER_QUERY_PARAMETER_NAME, PARTY_KEY_FHIR_IDENTIFIER)
41-
cpm_filter = self.get_optional_query_param(CPM_FILTER, CPM_FILTER_IDENTIFIER)
41+
cpm_filter = self.get_query_argument(name=CPM_FILTER, default=None)
4242

4343
if (org_code and not service_id and not party_key) or (not org_code and (not service_id or not party_key)):
4444
self._raise_invalid_query_params_error()
@@ -48,7 +48,7 @@ async def get(self):
4848
logger.info("Looking up routing and reliability information. {org_code}, {service_id}, {party_key}",
4949
fparams={"org_code": org_code, "service_id": service_id, "party_key": party_key})
5050

51-
if cpm_filter and cpm_filter[0] == CPM_FILTER_IDENTIFIER:
51+
if cpm_filter == CPM_FILTER_IDENTIFIER:
5252
ldap_results = await get_endpoint_from_cpm(
5353
org_code=org_code,
5454
interaction_id=service_id,

0 commit comments

Comments
 (0)