Adding MPI Clients
The Master Patient Index (MPI) client that will be used by the Business Process Engine (BPE) is determined by the property org.highmed.dsf.bpe.mpi.webservice.factory.class
and loaded using a service loader, which searches for a class of type MasterPatientIndexClientFactory
on startup of the BPE.
The framework currently includes an MPI client using the IHE PDQ interface, also supporting client certificate authentication. To use it, add the jar of the dsf-mpi-client-pdq
module to the plugin
configuration folder and set the property value to org.highmed.mpi.client.pdq.MasterPatientIndexClientPdqFactory
.
To implement a new MPI client, the following has to be taken into account:
- The plugin needs to supply an MPI client factory implementing the interface
MasterPatientIndexClientFactory
from thedsf-mpi-client
module. - The resources folder must contain a file with the name
META-INF/services/org.highmed.mpi.client.MasterPatientIndexClientFactory
containing the name of the new MPI client factory including the full package name. - The client needs to implement the interface
MasterPatientIndexClient
. The interface defines a method returning instances of the interfaceIdat
based on patient-ids used within the openEHR repository.
An example of an MPI client implementation can be found in the dsf-mpi-client-pdq
module.