Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add search for related resources and make extra resources in patient $everything configurable #3243

Merged
merged 36 commits into from
Feb 7, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
36 commits
Select commit Hold shift + click to select a range
67c84a9
Add a Location that is not a searchParameter to the server example
sfc42 Jan 24, 2022
d1a75f5
Add support to pick up Location/Medication/Organization/Practitioner
sfc42 Jan 24, 2022
3d376f1
Add missing parameter to EoB search
sfc42 Jan 24, 2022
dbb529e
Need to make sure we don't have duplicate entries with _includes
sfc42 Jan 24, 2022
72b550b
Fill in Entry fullUrl
sfc42 Jan 24, 2022
45aa876
Update fhir-server-config used by testcases to have all extra resources
sfc42 Jan 24, 2022
9af4b85
Add search for related resources and make extra resources in patient …
sfc42 Jan 24, 2022
3195c88
Update operation/fhir-operation-everything/src/main/java/com/ibm/fhir…
sfc42 Jan 25, 2022
5d93b66
Update operation/fhir-operation-everything/src/main/java/com/ibm/fhir…
sfc42 Jan 25, 2022
fd86759
Add needed types for patient $everything to derby-bootstrap.sh
sfc42 Jan 25, 2022
1549a24
Need to also look at SearchParameter list to make sure search is
sfc42 Jan 25, 2022
cb93c15
Need to run patient $everything tests against tenant1 which has the
sfc42 Jan 25, 2022
ff1e517
Add check for resource being null
sfc42 Jan 26, 2022
df3cf01
Remove changes to EverythingOperationTest
sfc42 Jan 27, 2022
fa06a9f
Remove changes to Antonia_Acosta
sfc42 Jan 27, 2022
2841b6a
Need to query the patient resource for related resources since it is not
sfc42 Jan 28, 2022
bc2490a
Add consent and provenance to example
sfc42 Jan 31, 2022
76298ea
Address code review comment on wrapping logging
sfc42 Jan 31, 2022
e109a64
Add Provenance and Consent to derby-bootstrap
sfc42 Jan 31, 2022
17ade09
Update profile with new data types
sfc42 Jan 31, 2022
6bedc9d
Check in working patient
sfc42 Jan 31, 2022
d903a7c
Need to check later if the max number of resources was exceeded
sfc42 Jan 31, 2022
79d7034
Make check page-by-page if we've gotten the full number of resources
sfc42 Jan 31, 2022
b53e6fe
Add back earlier check for being over 10000 resources
sfc42 Jan 31, 2022
7398ffc
Support LITERAL_ABSOLUTE references
sfc42 Feb 1, 2022
0f8ba84
Fix issue where only 2000 some of each type were being returned
sfc42 Feb 2, 2022
c944324
Need to look for additional resources during paging
sfc42 Feb 2, 2022
5a32154
Fix counts
sfc42 Feb 2, 2022
97f0032
Remove trailing whitespace
sfc42 Feb 3, 2022
f0f9388
Address code review comments for EverythingOperationTenant1Test
sfc42 Feb 3, 2022
ce89968
Code review comment for fhir-server-config.json
sfc42 Feb 3, 2022
56bbc18
Address code review comments
sfc42 Feb 4, 2022
ab38aec
Change testcase
sfc42 Feb 4, 2022
f85a877
Address code review comments
sfc42 Feb 4, 2022
2b0465c
Need null check for servers that don't have operations->everything
sfc42 Feb 4, 2022
8b8897c
Addressing code review comments
sfc42 Feb 7, 2022
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion build/audit/kafka/docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -68,7 +68,7 @@ services:
command: bash -c "
java -jar /opt/ibm-fhir-server/tools/fhir-persistence-schema-*-cli.jar
--db-type derby --prop db.database=/output/derby/profile --prop db.create=Y
--prop resourceTypes=Patient,Group,Practitioner,PractitionerRole,Person,RelatedPerson,Organization,Location,Observation,MedicationAdministration,StructureDefinition,ElementDefinition,CodeSystem,ValueSet
--prop resourceTypes=Patient,Group,Practitioner,PractitionerRole,Person,RelatedPerson,Organization,Location,Observation,MedicationAdministration,StructureDefinition,ElementDefinition,CodeSystem,ValueSet,Encounter,Condition,MedicationRequest,Coverage,ServiceRequest,CarePlan,CareTeam,Claim,DiagnosticReport,ExplanationOfBenefit,Immunization,Procedure,Medication,Provenance,Consent
--update-schema &&
java -jar /opt/ibm-fhir-server/tools/fhir-persistence-schema-*-cli.jar
--db-type derby --prop db.database=/output/derby/reference --prop db.create=Y
Expand Down
2 changes: 1 addition & 1 deletion build/derby-bootstrap.sh
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ java -jar ${WORKSPACE}/fhir-persistence-schema/target/fhir-persistence-schema-*-
--update-schema
java -jar ${WORKSPACE}/fhir-persistence-schema/target/fhir-persistence-schema-*-cli.jar \
--db-type derby --prop db.database=${DB_LOC}/profile --prop db.create=Y \
--prop resourceTypes=Patient,Group,Practitioner,PractitionerRole,Person,RelatedPerson,Organization,Location,Observation,MedicationAdministration,StructureDefinition,ElementDefinition,CodeSystem,ValueSet \
--prop resourceTypes=Patient,Group,Practitioner,PractitionerRole,Person,RelatedPerson,Organization,Location,Observation,MedicationAdministration,StructureDefinition,ElementDefinition,CodeSystem,ValueSet,Encounter,Condition,MedicationRequest,Coverage,ServiceRequest,CarePlan,CareTeam,Claim,DiagnosticReport,ExplanationOfBenefit,Immunization,Procedure,Medication,Provenance,Consent \
--update-schema
java -jar ${WORKSPACE}/fhir-persistence-schema/target/fhir-persistence-schema-*-cli.jar \
--db-type derby --prop db.database=${DB_LOC}/reference --prop db.create=Y \
Expand Down
2 changes: 1 addition & 1 deletion build/docker/docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ services:
command: bash -c "
java -jar /opt/ibm-fhir-server/tools/fhir-persistence-schema-*-cli.jar
--db-type derby --prop db.database=/output/derby/profile --prop db.create=Y
--prop resourceTypes=Patient,Group,Practitioner,PractitionerRole,Person,RelatedPerson,Organization,Location,Observation,MedicationAdministration,StructureDefinition,ElementDefinition,CodeSystem,ValueSet
--prop resourceTypes=Patient,Group,Practitioner,PractitionerRole,Person,RelatedPerson,Organization,Location,Observation,MedicationAdministration,StructureDefinition,ElementDefinition,CodeSystem,ValueSet,Encounter,Condition,MedicationRequest,Coverage,ServiceRequest,CarePlan,CareTeam,Claim,DiagnosticReport,ExplanationOfBenefit,Immunization,Procedure,Medication,Provenance,Consent
--update-schema &&
java -jar /opt/ibm-fhir-server/tools/fhir-persistence-schema-*-cli.jar
--db-type derby --prop db.database=/output/derby/reference --prop db.create=Y
Expand Down
2 changes: 1 addition & 1 deletion build/migration/db2/4_current-migrate.sh
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,7 @@ java -jar ${WORKSPACE}/fhir/fhir-persistence-schema/target/fhir-persistence-sche
--update-schema
java -jar ${WORKSPACE}/fhir/fhir-persistence-schema/target/fhir-persistence-schema-*-cli.jar \
--db-type derby --prop db.database=${DB_LOC}/profile --prop db.create=Y \
--prop resourceTypes=Patient,Group,Practitioner,PractitionerRole,Person,RelatedPerson,Organization,Location,Observation,MedicationAdministration,StructureDefinition,ElementDefinition,CodeSystem,ValueSet \
--prop resourceTypes=Patient,Group,Practitioner,PractitionerRole,Person,RelatedPerson,Organization,Location,Observation,MedicationAdministration,StructureDefinition,ElementDefinition,CodeSystem,ValueSet,Encounter,Condition,MedicationRequest,Coverage,ServiceRequest,CarePlan,CareTeam,Claim,DiagnosticReport,ExplanationOfBenefit,Immunization,Procedure,Medication,Provenance,Consent \
--update-schema
java -jar ${WORKSPACE}/fhir/fhir-persistence-schema/target/fhir-persistence-schema-*-cli.jar \
--db-type derby --prop db.database=${DB_LOC}/reference --prop db.create=Y \
Expand Down
2 changes: 1 addition & 1 deletion build/migration/postgres/4_current-migrate.sh
Original file line number Diff line number Diff line change
Expand Up @@ -70,7 +70,7 @@ java -jar ${WORKSPACE}/fhir/fhir-persistence-schema/target/fhir-persistence-sche
--update-schema
java -jar ${WORKSPACE}/fhir/fhir-persistence-schema/target/fhir-persistence-schema-*-cli.jar \
--db-type derby --prop db.database=${DB_LOC}/profile --prop db.create=Y \
--prop resourceTypes=Patient,Group,Practitioner,PractitionerRole,Person,RelatedPerson,Organization,Location,Observation,MedicationAdministration,StructureDefinition,ElementDefinition,CodeSystem,ValueSet \
--prop resourceTypes=Patient,Group,Practitioner,PractitionerRole,Person,RelatedPerson,Organization,Location,Observation,MedicationAdministration,StructureDefinition,ElementDefinition,CodeSystem,ValueSet,Encounter,Condition,MedicationRequest,Coverage,ServiceRequest,CarePlan,CareTeam,Claim,DiagnosticReport,ExplanationOfBenefit,Immunization,Procedure,Medication,Provenance,Consent \
--update-schema
java -jar ${WORKSPACE}/fhir/fhir-persistence-schema/target/fhir-persistence-schema-*-cli.jar \
--db-type derby --prop db.database=${DB_LOC}/reference --prop db.create=Y \
Expand Down
2 changes: 1 addition & 1 deletion build/notifications/kafka/docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -68,7 +68,7 @@ services:
command: bash -c "
java -jar /opt/ibm-fhir-server/tools/fhir-persistence-schema-*-cli.jar
--db-type derby --prop db.database=/output/derby/profile --prop db.create=Y
--prop resourceTypes=Patient,Group,Practitioner,PractitionerRole,Person,RelatedPerson,Organization,Location,Observation,MedicationAdministration,StructureDefinition,ElementDefinition,CodeSystem,ValueSet
--prop resourceTypes=Patient,Group,Practitioner,PractitionerRole,Person,RelatedPerson,Organization,Location,Observation,MedicationAdministration,StructureDefinition,ElementDefinition,CodeSystem,ValueSet,Encounter,Condition,MedicationRequest,Coverage,ServiceRequest,CarePlan,CareTeam,Claim,DiagnosticReport,ExplanationOfBenefit,Immunization,Procedure,Medication,Provenance,Consent
--update-schema &&
java -jar /opt/ibm-fhir-server/tools/fhir-persistence-schema-*-cli.jar
--db-type derby --prop db.database=/output/derby/reference --prop db.create=Y
Expand Down
2 changes: 1 addition & 1 deletion build/persistence/postgres/docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ services:
command: bash -c "
java -jar /opt/ibm-fhir-server/tools/fhir-persistence-schema-*-cli.jar
--db-type derby --prop db.database=/output/derby/profile --prop db.create=Y
--prop resourceTypes=Patient,Group,Practitioner,PractitionerRole,Person,RelatedPerson,Organization,Location,Observation,MedicationAdministration,StructureDefinition,ElementDefinition,CodeSystem,ValueSet
--prop resourceTypes=Patient,Group,Practitioner,PractitionerRole,Person,RelatedPerson,Organization,Location,Observation,MedicationAdministration,StructureDefinition,ElementDefinition,CodeSystem,ValueSet,Encounter,Condition,MedicationRequest,Coverage,ServiceRequest,CarePlan,CareTeam,Claim,DiagnosticReport,ExplanationOfBenefit,Immunization,Procedure,Medication,Provenance,Consent
--update-schema &&
java -jar /opt/ibm-fhir-server/tools/fhir-persistence-schema-*-cli.jar
--db-type derby --prop db.database=/output/derby/reference --prop db.create=Y
Expand Down
2 changes: 1 addition & 1 deletion build/pre-integration-test.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,7 @@ java -jar $SCHEMATOOL `
--update-schema
java -jar $SCHEMATOOL `
--db-type derby --prop db.database=${DB_LOC}\profile --prop db.create=Y `
--prop resourceTypes=Patient,Group,Practitioner,PractitionerRole,Person,RelatedPerson,Organization,Location,Observation,MedicationAdministration,StructureDefinition,ElementDefinition,CodeSystem,ValueSet `
--prop resourceTypes=Patient,Group,Practitioner,PractitionerRole,Person,RelatedPerson,Organization,Location,Observation,MedicationAdministration,StructureDefinition,ElementDefinition,CodeSystem,ValueSet,Encounter,Condition,MedicationRequest,Coverage,ServiceRequest,CarePlan,CareTeam,Claim,DiagnosticReport,ExplanationOfBenefit,Immunization,Procedure,Medication,Provenance,Consent `
--update-schema
java -jar $SCHEMATOOL `
--db-type derby --prop db.database=${DB_LOC}\reference --prop db.create=Y `
Expand Down
2 changes: 1 addition & 1 deletion build/pre-integration-test.sh
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ java -jar ${SIT}/fhir-server-dist/tools/fhir-persistence-schema-*-cli.jar \
--update-schema
java -jar ${SIT}/fhir-server-dist/tools/fhir-persistence-schema-*-cli.jar \
--db-type derby --prop db.database=${DB_LOC}/profile --prop db.create=Y \
--prop resourceTypes=Patient,Group,Practitioner,PractitionerRole,Person,RelatedPerson,Organization,Location,Observation,MedicationAdministration,StructureDefinition,ElementDefinition,CodeSystem,ValueSet \
--prop resourceTypes=Patient,Group,Practitioner,PractitionerRole,Person,RelatedPerson,Organization,Location,Observation,MedicationAdministration,StructureDefinition,ElementDefinition,CodeSystem,ValueSet,Encounter,Condition,MedicationRequest,Coverage,ServiceRequest,CarePlan,CareTeam,Claim,DiagnosticReport,ExplanationOfBenefit,Immunization,Procedure,Medication,Provenance,Consent \
--update-schema
java -jar ${SIT}/fhir-server-dist/tools/fhir-persistence-schema-*-cli.jar \
--db-type derby --prop db.database=${DB_LOC}/reference --prop db.create=Y \
Expand Down
3 changes: 3 additions & 0 deletions docs/src/pages/guides/FHIRServerUsersGuide.md
Original file line number Diff line number Diff line change
Expand Up @@ -2241,6 +2241,7 @@ This section contains reference information about each of the configuration prop
|`fhirServer/operations/membermatch/enabled`|boolean|Enables or disables the $member-match|
|`fhirServer/operations/membermatch/strategy`|string|The key identifying the Member Match strategy|
|`fhirServer/operations/membermatch/extendedProps`|object|The extended options for the extended member match implementation|
|`fhirServer/operations/everything/includeTypes`|list|The list of related resources to retrieve, allowed entries are `Location`, `Medication`, `Organization`, and `Practitioner`|


### 5.1.2 Default property values
Expand Down Expand Up @@ -2384,6 +2385,7 @@ This section contains reference information about each of the configuration prop
|`fhirServer/operations/membermatch/enabled`|true|
|`fhirServer/operations/membermatch/strategy`|default|
|`fhirServer/operations/membermatch/extendedProps`|empty|
|`fhirServer/operations/everything/includeTypes`|null|

### 5.1.3 Property attributes
Depending on the context of their use, config properties can be:
Expand Down Expand Up @@ -2560,6 +2562,7 @@ must restart the server for that change to take effect.
|`fhirServer/operations/membermatch/enabled`|Y|Y|
|`fhirServer/operations/membermatch/strategy`|Y|Y|
|`fhirServer/operations/membermatch/extendedProps`|Y|Y|
|`fhirServer/operations/everything/includeTypes`|Y|Y|

## 5.2 Keystores, truststores, and the IBM FHIR server

Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/*
* (C) Copyright IBM Corp. 2016, 2021
* (C) Copyright IBM Corp. 2016, 2022
*
* SPDX-License-Identifier: Apache-2.0
*/
Expand Down Expand Up @@ -109,6 +109,10 @@ public class FHIRConfiguration {
public static final String PROPERTY_NATS_KEYSTORE = "fhirServer/notifications/nats/keystoreLocation";
public static final String PROPERTY_NATS_KEYSTORE_PW = "fhirServer/notifications/nats/keystorePassword";

// Operations config properties
public static final String PROPERTY_OPERATIONS_EVERYTHING = "fhirServer/operations/everything";
sfc42 marked this conversation as resolved.
Show resolved Hide resolved
public static final String PROPERTY_OPERATIONS_EVERYTHING_INCLUDE_TYPES = "includeTypes";

// Persistence layer properties
public static final String PROPERTY_UPDATE_CREATE_ENABLED = "fhirServer/persistence/common/updateCreateEnabled";
public static final String PROPERTY_PERSISTENCE_FACTORY = "fhirServer/persistence/factoryClassname";
Expand Down
Loading