Class PixV3Query
java.lang.Object
org.projecthusky.communication.CamelService
org.projecthusky.communication.mpi.impl.PixPdqV3QueryBase
org.projecthusky.communication.mpi.impl.PixV3Query
- All Implemented Interfaces:
org.apache.camel.CamelContextAware
PixV3Query
PixV3Query implements the Actor Patient Identity Source from ITI-44 Patient Identity Feed HL7 V3 and the Actor Patient Identifier Cross-reference Consumer from ITI-45 PIXV3 Query
-
Field Summary
Fields inherited from class org.projecthusky.communication.mpi.impl.PixPdqV3QueryBase
domainToReturnNamespace, domainToReturnOid, homeCommunityNamespace, homeCommunityOid, otherOidIds, pdqConsumerUri, pixQueryUri, pixSourceUri, receiverApplicationOid, receiverFacilityOid, senderApplicationOid, senderFacilityOid
-
Constructor Summary
ConstructorsConstructorDescriptionPixV3Query
(AffinityDomain affinityDomain, String homeCommunityOid, String homeCommunityNamespace, String domainToReturnOid, String domainToReturnNamespace, org.apache.camel.CamelContext context, org.openehealth.ipf.commons.audit.AuditContext auditContext) PixV3Query
(AffinityDomain affinityDomain, String homeCommunityOid, org.apache.camel.CamelContext context, org.openehealth.ipf.commons.audit.AuditContext auditContext) -
Method Summary
Modifier and TypeMethodDescriptionboolean
addPatient
(FhirPatient patient, SecurityHeaderElement assertion, String messageId) adds a patient to the mpi.protected boolean
checkResponse
(V3Acknowledgement response) Checks the response, error are logged.protected String
getHomeCommunityPatientId
(FhirPatient patient) Gets the home community patient id.getPatientDomainId
(org.openehealth.ipf.commons.ihe.hl7v3.core.responses.PixV3QueryResponse v3PixConsumerResponse, String rootOid) Gets the patient domain id.boolean
mergePatient
(FhirPatient patient, String obsoleteId, SecurityHeaderElement assertion, String messageId) Merge patient.queryPatientId
(FhirPatient patient, List<String> queryDomainOids, List<String> queryDomainNamespaces, SecurityHeaderElement assertion, String messageId) query the mpi with patient id and return the ids in the queried domains from the mpi.queryPatientId
(FhirPatient patient, SecurityHeaderElement assertion, String messageId) Query patient id.boolean
updatePatient
(FhirPatient patient, SecurityHeaderElement assertion, String messageId) updates the demographic information of the patient in the mpi.Methods inherited from class org.projecthusky.communication.mpi.impl.PixPdqV3QueryBase
addDemographicData, addDemographicData, addLanguageCommunications, addLanguageCommunications, addPatientAddresses, addPatientAddresses, addPatientIds, addPatientIds, addPatientName, addPatientName, addPatientTelecoms, addPatientTelecoms, getAddressFromAD, getMixedValue, getPatientAddress, setAffinityDomain, setBirthPlace, setBirthPlace, setDeceased, setDeceased, setEmployee, setEmployee, setMultipeBirth, setMultipeBirth, setNation, setNation, setPatientBirthTime, setPatientBirthTime, setPatientGender, setPatientGender, setPatientMaritalStatus, setPatientMaritalStatus, setPatientMothersMaidenName, setPatientMothersMaidenName, setPatientReligiousAffiliation, setPatientReligiousAffiliation, setScopingOrganization, setScopingOrganization
Methods inherited from class org.projecthusky.communication.CamelService
addHttpHeader, addWssHeader, getAuditContext, getCamelContext, send, setAuditContext, setCamelContext
-
Constructor Details
-
PixV3Query
public PixV3Query() -
PixV3Query
public PixV3Query(AffinityDomain affinityDomain, String homeCommunityOid, org.apache.camel.CamelContext context, org.openehealth.ipf.commons.audit.AuditContext auditContext) -
PixV3Query
public PixV3Query(AffinityDomain affinityDomain, String homeCommunityOid, String homeCommunityNamespace, String domainToReturnOid, String domainToReturnNamespace, org.apache.camel.CamelContext context, org.openehealth.ipf.commons.audit.AuditContext auditContext)
-
-
Method Details
-
queryPatientId
public List<String> queryPatientId(FhirPatient patient, List<String> queryDomainOids, List<String> queryDomainNamespaces, SecurityHeaderElement assertion, String messageId) query the mpi with patient id and return the ids in the queried domains from the mpi.Implements ITI-45 Patient Identifier Cross-reference Consumer Queries the Patient Identifier Cross-reference Manager for a list of corresponding patientidentifiers, if any
- Parameters:
patient
- the patientqueryDomainOids
- the query domain oidsqueryDomainNamespaces
- the query domain namespacesassertion
- a security header element for example an assertionmessageId
- a id preset or null, if the id shall be generated- Returns:
- the list of string
-
addPatient
adds a patient to the mpi. implements ITI-44 Patient Identity Source – Add Patient Record- Parameters:
patient
- the patientassertion
- a security header element for example an assertion- Returns:
- true, if successful
-
mergePatient
public boolean mergePatient(FhirPatient patient, String obsoleteId, SecurityHeaderElement assertion, String messageId) Merge patient. implements ITI-44 Patient Identity Source – Patient Identity MergePatient Registry Duplicates Resolved message indicates that the Patient Identity Source has done a merge within a specific Patient Identification Domain. That is, the surviving identifier (patient ID) has subsumed a duplicate patient identifier.
- Parameters:
patient
- the patient (with the surviving identifier)obsoleteId
- the obsolete id (duplicate patient identifier)assertion
- a security header element for example an assertion- Returns:
- true, if successful
-
updatePatient
public boolean updatePatient(FhirPatient patient, SecurityHeaderElement assertion, String messageId) updates the demographic information of the patient in the mpi.implements ITI-44 Patient Identity Source – Revise Patient Record updates the demographic information of the patient in the mpi.
- Parameters:
patient
- the patientassertion
- a security header element for example an assertion- Returns:
- true, if successful
-
checkResponse
Checks the response, error are logged.- Parameters:
response
- the response- Returns:
- true, if response has no error, false if there are errors
-
queryPatientId
public String queryPatientId(FhirPatient patient, SecurityHeaderElement assertion, String messageId) Query patient id.- Parameters:
patient
- the patientassertion
- a security header element for example an assertion- Returns:
- the string
-
getHomeCommunityPatientId
Gets the home community patient id.- Parameters:
patient
- the patient- Returns:
- the home community patient id
-
getPatientDomainId
public String getPatientDomainId(org.openehealth.ipf.commons.ihe.hl7v3.core.responses.PixV3QueryResponse v3PixConsumerResponse, String rootOid) Gets the patient domain id.- Parameters:
v3PixConsumerResponse
- the v3 pix consumer responserootOid
- the root oid- Returns:
- the patient domain id
-