Post-Upgrade Steps for Pre-2020.4 FHIR Endpoints
If you are upgrading from a version prior to 2020.4, the following steps that may be required depending upon on how you have customized your FHIR server. Perform these tasks in the following order:
-
If your FHIR server uses custom subclasses, you must modify your architecture subclasses.
-
If your FHIR endpoint uses custom search parameters, migrate them to a FHIR package and apply them to the endpoint.
Once you have completed these steps you can run re-index the search tables.
Step 1: Modifying Architecture Subclasses
As part of the FHIR architecture that was introduced in InterSystems IRIS for Health 2020.1, you can use a custom InteractionsStrategy to implement a custom FHIR server. If your FHIR server’s endpoint uses a custom InteractionsStrategy, including if it uses a subclass of the Resource Repository, complete the following steps:
-
Complete the upgrade of your InterSystems IRIS for Health instance.
-
Using your IDE, do one of the following in your endpoint’s namespace:
-
If the InteractionsStrategy of your endpoint extended the Resource Repository (HS.FHIRServer.Storage.Json.InteractionsStrategy), create a subclass of HS.FHIRServer.Storage.Json.RepoManager.
-
If the InteractionsStrategy of your endpoint subclassed HS.FHIRServer.API.InteractionsStrategy directly, create a subclass of the HS.FHIRServer.API.RepoManager superclass.
-
Add the following parameters to your subclass of the Repo Manager:
-
StrategyClass — Specifies the subclass of your InteractionsStrategy.
-
StrategyKey — Specifies the unique identifier of the InteractionsStrategy. This must match the value of the StrategyKey parameter in the InteractionsStrategy subclass.
-
If your InteractionsStrategy subclass included custom code for the methods that manage the Service, you must move that logic to the new methods in the Repo Manager subclass that you created. Specifically, you must move custom code from the Create, Delete, Decommission, and Update methods to the corresponding methods in your Repo Manager subclass (CreateService, DeleteService, DecommissionService, and UpdateService ).
Step 2: Migrating Custom Search Parameters to a FHIR Package
In versions of IRIS for Health before 2020.4, using custom FHIR search parameters required you to define a custom metadata set. In this version, defining FHIR metadata, including custom search parameters, has been migrated to FHIR packages. When you upgrade from an earlier version, the upgrade will remove any custom metadata sets, and configure the FHIR endpoint with the base FHIR package, either STU3 or R4, depending on what was in use before the upgrade.
If you use custom FHIR search parameters, you must manually migrate them to a FHIR package and apply them to the endpoint before they can be used. The instructions for creating and applying FHIR packages are in the “FHIR Profiles and Adaptations” chapter of FHIR Support in InterSystems Products. Using the files that you originally used to used to create the custom metadata set, perform the steps below in the recommended order:
-
Create a custom FHIR package.
-
Import your package or confirm that your package has been imported.
-
Apply the custom package to your endpoint.
-
To complete this procedure, you must re-index the endpoint. You will do this in a later post-upgrade step.
Alternatively, you can perform these steps using the FHIR Package API.