refactor(xds-sender): route CCD retrieval through IPS, drop duplicate path#113
Open
mherman22 wants to merge 1 commit into
Open
refactor(xds-sender): route CCD retrieval through IPS, drop duplicate path#113mherman22 wants to merge 1 commit into
mherman22 wants to merge 1 commit into
Conversation
… path Follow-up to IsantePlus#112. Instead of a parallel downloadAndSaveIps/retrieveIps/ IpsRetrievalController surface, the existing downloadAndSaveCcd now retrieves the consolidated IPS when xdssender.ipsEndpoint is configured, falling back to the legacy client-side CCD aggregation otherwise. Backwards compatible: - ShrImportServiceImpl.retrieveCCD: IPS-first (via ShrRetriever.fetchIps) when ipsEndpoint is set; else / on empty result, legacy sendRetrieveCCD. - Removes CcdService.downloadAndSaveIps + impl and ShrImportServiceImpl.retrieveIps. - Removes IpsRetrievalController (the UI trigger lives in registrationcore). - getIpsEndpoint()/config.xml: opt-in, empty default so existing installs are unchanged. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
mherman22
added a commit
to mherman22/openmrs-module-registrationcore
that referenced
this pull request
Jul 3, 2026
Adds a UI-facing REST endpoint to pull a patient's cross-facility summary once their identity is known: GET /ws/rest/v1/registrationcore/ips?patientUuid=<uuid> It reuses the existing RegistrationCoreService.importCcd (no duplicate service path). When xdssender.ipsEndpoint is configured, importCcd pulls the consolidated IPS; otherwise it falls back to the legacy CCD aggregation. Follows the existing BiometricsStatusController REST pattern. Depends on xds-sender routing CCD retrieval through the IPS mediator (IsantePlus/openmrs-module-xds-sender#113). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Follow-up to #112 addressing review feedback: avoid the duplicate
importIps/downloadAndSaveIpssurface — reusedownloadAndSaveCcd, keep backwards compatibility.Change
ShrImportServiceImpl.retrieveCCDnow prefers the consolidated IPS (server-side aggregation via the SHR IPS mediator,ShrRetriever.fetchIps) whenxdssender.ipsEndpointis set, and falls back to the legacy client-side CCD aggregation otherwise (or when the IPS yields nothing).CcdService.downloadAndSaveIps(+ impl) andShrImportServiceImpl.retrieveIps.IpsRetrievalController— the UI trigger belongs in registrationcore (feat(registrationcore): IPS continuity-of-care retrieval trigger openmrs-module-registrationcore#52), which callsimportCcd.getIpsEndpoint()/config.xml: opt-in, empty default → existing deployments keep their exact current behavior.Net: 20 insertions, 107 deletions. Same method names, no new public API.
🤖 Generated with Claude Code