
Package ca.uhn.fhir.jpa.bulk.export.svc
Class BulkExportMdmEidMatchOnlyResourceExpander
java.lang.Object
ca.uhn.fhir.jpa.bulk.export.svc.BulkExportMdmEidMatchOnlyResourceExpander
- All Implemented Interfaces:
ca.uhn.fhir.mdm.svc.IBulkExportMdmEidMatchOnlyResourceExpander<JpaPid>,ca.uhn.fhir.mdm.svc.IBulkExportMdmResourceExpander<JpaPid>
public class BulkExportMdmEidMatchOnlyResourceExpander
extends Object
implements ca.uhn.fhir.mdm.svc.IBulkExportMdmEidMatchOnlyResourceExpander<JpaPid>
Implementation of
IBulkExportMdmResourceExpander that handles bulk export resource expansion
when MDM mode is Match-Only and Eid Systems defined in mdm rules.
This expander is used during bulk export operations to expand Group resources by resolving MDM matching resources for the members in the group. Resources are matched based on just eids rather than the full MDM golden resource relationships.
-
Constructor Summary
ConstructorsConstructorDescriptionBulkExportMdmEidMatchOnlyResourceExpander(DaoRegistry theDaoRegistry, ca.uhn.fhir.mdm.svc.MdmEidMatchOnlyExpandSvc theMdmEidMatchOnlyLinkExpandSvc, ca.uhn.fhir.context.FhirContext theFhirContext, IIdHelperService<JpaPid> theIdHelperService) Constructor -
Method Summary
Modifier and TypeMethodDescriptionvoidannotateResource(org.hl7.fhir.instance.model.api.IBaseResource resource) expandGroup(String groupResourceId, RequestPartitionId requestPartitionId) Expands a Group resource and returns the Group members' resource persistent ids.expandPatient(String thePatientId, RequestPartitionId theRequestPartitionId) Expands a single patient ID to include all patients linked via EID matching.
-
Constructor Details
-
BulkExportMdmEidMatchOnlyResourceExpander
public BulkExportMdmEidMatchOnlyResourceExpander(DaoRegistry theDaoRegistry, ca.uhn.fhir.mdm.svc.MdmEidMatchOnlyExpandSvc theMdmEidMatchOnlyLinkExpandSvc, ca.uhn.fhir.context.FhirContext theFhirContext, IIdHelperService<JpaPid> theIdHelperService) Constructor
-
-
Method Details
-
expandGroup
Expands a Group resource and returns the Group members' resource persistent ids. The returned ids consists of group members + all MDM matched resources based on EID only.This method:
- Reads the specified Group resource
- Extracts all member entity references from the Group
- For each member, uses EID matching to find all resources that have the same EID as the member, using eid system specified in mdm rules
- Converts the expanded resource IDs to persistent IDs (PIDs)
-
expandPatient
Expands a single patient ID to include all patients linked via EID matching.- Specified by:
expandPatientin interfaceca.uhn.fhir.mdm.svc.IBulkExportMdmResourceExpander<JpaPid>- Parameters:
thePatientId- Patient ID to expand (e.g., "Patient/123")theRequestPartitionId- Partition context for the request- Returns:
- Set of String patient IDs including the original patient and all EID-matched patients
-
annotateResource
- Specified by:
annotateResourcein interfaceca.uhn.fhir.mdm.svc.IBulkExportMdmResourceExpander<JpaPid>
-