Class Iti104UpdateResourceProvider

All Implemented Interfaces:
IResourceProvider, Serializable
Direct Known Subclasses:
Iti104ResourceProvider

public class Iti104UpdateResourceProvider extends AbstractResourceProvider
Resource Provider for the Patient Identity Feed FHIR [ITI-104] transaction of a Patient Identifier Cross-reference Manager that does not support the Remove Patient Option. It only accepts the conditional update (PUT Patient?identifier=system|value) of the Add/Revise Patient and Resolve Duplicate Patient messages, so delete is not advertised in the CapabilityStatement. This suits e.g. a Manager that proxies ITI-104 to a PIX Feed (ITI-8), which has no equivalent of Remove Patient. Use it with the resourceProvider endpoint parameter.

Requests that are not conditional on exactly one patient identifier are rejected. The route receives the Patient as body, and the identifier as Iti104Parameters in the Constants.FHIR_REQUEST_PARAMETERS header. It is expected to return a MethodOutcome; for an update that created the patient, MethodOutcome.setCreated(Boolean) shall be set.

ITI-104 defers to the FHIR conditional update and delete semantics, which the route has to implement, as only it knows the patients: e.g. if the condition matches more than one patient, it shall reject the request with 412 Precondition Failed (PreconditionFailedException). A conditional delete that matches no patient is not an error.

Since:
6.0
Author:
Christian Ohr
See Also:
  • Constructor Details

    • Iti104UpdateResourceProvider

      public Iti104UpdateResourceProvider()
  • Method Details