public class HubServiceImpl extends Object implements HubService
As part of the Business Connector for General Practitioners, a Hub Consultation component is foreseen that provides connectivity to a local hub. As part of this component a set of 23 operations are available. They can be grouped as follows:
The Hub Consultation component, part of the Business Connector for General Practitioners, provides a simple API to access the wide range of hub operations. It hides the complexity on both functional and technical level (web service communication, simplified data interface, handles encryption/decryption, etc).
The following principles have been applied while defining the interface for the set of operations:
HubService| Constructor and Description |
|---|
HubServiceImpl(SessionValidator sessionValidator)
Instantiates a new Hub Service.
|
| Modifier and Type | Method and Description |
|---|---|
List<IDKMEHR> |
declareTransaction(KmehrHeaderDeclareTransaction kmehrHeader)
This operation should be used to declare a transaction within a hub.
|
AccessRightListType |
getAccessRight(TransactionIdType transaction)
This operation should be used to get access rights on a transaction within a hub.
|
HCPartyAdaptedType |
getHCParty(HCPartyIdType hcParty)
This operation should be used to retrieve the data associated with a healthcare party within a hub.
|
ConsentHCPartyType |
getHCPartyConsent(HCPartyIdType hcPartyId)
This operation should be used to retrieve the consent of a healthcare party within a hub.
|
PersonType |
getPatient(PatientIdType patientId)
This operation should be used to declare the consent of an healthcare party within a hub.
|
TransactionAccessListType |
getPatientAuditTrail(SelectGetPatientAuditTrailType patientAuditTrail)
This operation should be used to get the list of transaction accesses for a given patient.
|
ConsentType |
getPatientConsent(SelectGetPatientConsentType patientConsent)
This operation should be used to retrieve the consent of a patient within a hub.
|
Collection<TherapeuticLinkType> |
getTherapeuticLink(SelectGetHCPartyPatientConsentType patientConsent)
This operation should be used to get therapeutic link between a patient and a healthcare party within a hub.
|
Kmehrmessage |
getTransaction(PatientIdType patient,
TransactionBaseType transaction)
This operation should be used to retrieve a transaction (given a transaction identifier) within a hub.
|
KmehrHeaderGetTransactionList |
getTransactionList(PatientIdType patient,
LocalSearchType searchType,
TransactionWithPeriodType transaction)
This operation should be used to get the list of available transactions that fulfill some given criteria.
|
void |
putAccessRight(AccessRightType accessRight)
This operation should be used to put an access right on a transaction within a hub.
|
HCPartyAdaptedType |
putHCParty(HCPartyAdaptedType hcParty)
This operation should be used to create a healthcare party within a hub.
|
void |
putHCPartyConsent(ConsentHCPartyType consent)
This operation should be used to declare the consent of an healthcare party within a hub.
|
PersonType |
putPatient(PersonType patient)
This operation should be used to create a patient within a hub.
|
void |
putPatientConsent(ConsentType patientConsent)
This operation should be used to declare the consent of a patient within a hub.
|
void |
putTherapeuticLink(TherapeuticLinkType therapeuticLink)
This operation should be used to declare therapeutic link between a patient and a healthcare party within a hub.
|
void |
putTransaction(Kmehrmessage kmehrHeader)
This operation should be used to declare and to store a given transaction within a hub.
|
void |
requestPublication(PatientIdType patient,
TransactionWithPeriodType transaction,
String comment)
This operation allows a healthcare party to ask to another healthcare party to publish documents related to a patient.
|
void |
revokeAccessRight(SelectRevokeAccessRightType accessRight)
This operation should be used to revoke access right on a transaction within a hub.
|
void |
revokeHCPartyConsent(ConsentHCPartyType consent)
This operation should be used to revoke the consent of a healthcare party within a hub.
|
void |
revokePatientConsent(ConsentType patientConsent)
This operation should be used to revoke the consent of a patient within a hub.
|
void |
revokeTherapeuticLink(TherapeuticLinkType therapeuticLink)
This operation should be used to revoke a therapeutic link between a patient and a healthcare party within a hub.
|
void |
revokeTransaction(PatientIdType patient,
TransactionIdType transaction)
This operation should be used to 'unpublish' a given transaction.
|
public HubServiceImpl(SessionValidator sessionValidator) throws TechnicalConnectorException, IntraHubBusinessConnectorException
sessionValidator - the session validatorTechnicalConnectorException - the technical connector exceptionIntraHubBusinessConnectorException - the business connector exceptionpublic List<IDKMEHR> declareTransaction(KmehrHeaderDeclareTransaction kmehrHeader) throws TechnicalConnectorException, IntraHubBusinessConnectorException
declareTransaction in interface HubServicekmehrHeader - A Kmehr message formatted as XML String containing a Patient and a Transaction.SessionManagementExceptionTechnicalConnectorException - the technical connector exceptionIntraHubBusinessConnectorExceptionpublic void putTransaction(Kmehrmessage kmehrHeader) throws TechnicalConnectorException, IntraHubBusinessConnectorException
putTransaction in interface HubServicekmehrHeader - A Kmehr message formatted as XML String containing a Patient and a Transaction.TechnicalConnectorException - the technical connector exceptionIntraHubBusinessConnectorExceptionpublic void revokeTransaction(PatientIdType patient, TransactionIdType transaction) throws TechnicalConnectorException, IntraHubBusinessConnectorException
revokeTransaction in interface HubServicepatient - Patient for which to revoke the transaction.transaction - Transaction to revoke.TechnicalConnectorException - the technical connector exceptionIntraHubBusinessConnectorExceptionpublic KmehrHeaderGetTransactionList getTransactionList(PatientIdType patient, LocalSearchType searchType, TransactionWithPeriodType transaction) throws TechnicalConnectorException, IntraHubBusinessConnectorException
getTransactionList in interface HubServicepatient - Patient for which to retrieve the transaction list.searchType - The search type (local or national)transaction - Transaction types to search.TechnicalConnectorException - the technical connector exceptionIntraHubBusinessConnectorException - the business connector exceptionpublic Kmehrmessage getTransaction(PatientIdType patient, TransactionBaseType transaction) throws TechnicalConnectorException, IntraHubBusinessConnectorException
getTransaction in interface HubServicepatient - Patient for which to retrieve the transaction.transaction - Transaction identificationTechnicalConnectorException - the technical connector exceptionIntraHubBusinessConnectorException - the business connector exceptionpublic void requestPublication(PatientIdType patient, TransactionWithPeriodType transaction, String comment) throws TechnicalConnectorException, IntraHubBusinessConnectorException
requestPublication in interface HubServicepatient - The Patient for who the ation is.transaction - Transaction types and Health Care Partiescomment - CommentIntraHubBusinessConnectorExceptionSessionManagementExceptionTechnicalConnectorException - the technical connector exceptionpublic HCPartyAdaptedType getHCParty(HCPartyIdType hcParty) throws TechnicalConnectorException, IntraHubBusinessConnectorException
getHCParty in interface HubServicehcParty - This is the NIHII or SSIN number according to the type of healthcare party. Other local identifiers are allowed.IntraHubBusinessConnectorExceptionSessionManagementExceptionTechnicalConnectorException - the technical connector exceptionpublic HCPartyAdaptedType putHCParty(HCPartyAdaptedType hcParty) throws TechnicalConnectorException, IntraHubBusinessConnectorException
putHCParty in interface HubServicehcParty - Information about the healthcare partyIntraHubBusinessConnectorExceptionSessionManagementExceptionTechnicalConnectorException - the technical connector exceptionpublic void putHCPartyConsent(ConsentHCPartyType consent) throws TechnicalConnectorException, IntraHubBusinessConnectorException
putHCPartyConsent in interface HubServiceconsent - A Consent containing a HCParty and the signature date.IntraHubBusinessConnectorExceptionSessionManagementExceptionTechnicalConnectorException - the technical connector exceptionpublic ConsentHCPartyType getHCPartyConsent(HCPartyIdType hcPartyId) throws TechnicalConnectorException, IntraHubBusinessConnectorException
getHCPartyConsent in interface HubServicehcPartyId - This is the NIHII or INSS number according to the type of healthcare party. Other local identifiers are allowed.SessionManagementExceptionTechnicalConnectorException - the technical connector exceptionIntraHubBusinessConnectorException - the business connector exceptionpublic void revokeHCPartyConsent(ConsentHCPartyType consent) throws TechnicalConnectorException, IntraHubBusinessConnectorException
revokeHCPartyConsent in interface HubServiceconsent - A Consent containing a HCParty and the signature date.SessionManagementExceptionTechnicalConnectorException - the technical connector exceptionIntraHubBusinessConnectorExceptionpublic PersonType putPatient(PersonType patient) throws TechnicalConnectorException, IntraHubBusinessConnectorException
putPatient in interface HubServicepatient - Information about a patientSessionManagementExceptionTechnicalConnectorException - the technical connector exceptionIntraHubBusinessConnectorException - the business connector exceptionpublic PersonType getPatient(PatientIdType patientId) throws TechnicalConnectorException, IntraHubBusinessConnectorException
getPatient in interface HubServicepatientId - Patient contains only the identifiers of the patient. Several identifiers of the same patient are allowed.SessionManagementExceptionTechnicalConnectorException - the technical connector exceptionIntraHubBusinessConnectorException - the business connector exceptionpublic void putPatientConsent(ConsentType patientConsent) throws TechnicalConnectorException, IntraHubBusinessConnectorException
putPatientConsent in interface HubServicepatientConsent - Patient Consent data structure that contains signing date of the consent, scope of the consent,
'retrospective'/ 'prospective' attribute.SessionManagementExceptionTechnicalConnectorException - the technical connector exceptionIntraHubBusinessConnectorException - the business connector exceptionpublic ConsentType getPatientConsent(SelectGetPatientConsentType patientConsent) throws TechnicalConnectorException, IntraHubBusinessConnectorException
getPatientConsent in interface HubServicepatientConsent - Contains the Patient Identifiers and the scope of the consentSessionManagementExceptionTechnicalConnectorException - the technical connector exceptionIntraHubBusinessConnectorException - the business connector exceptionpublic void revokePatientConsent(ConsentType patientConsent) throws TechnicalConnectorException, IntraHubBusinessConnectorException
revokePatientConsent in interface HubServicepatientConsent - Patient Consent data structure that contains signing date of the consent, scope of the consent, 'retrospective'
'prospective' attribute.SessionManagementExceptionTechnicalConnectorException - the technical connector exceptionIntraHubBusinessConnectorException - the business connector exceptionpublic void putTherapeuticLink(TherapeuticLinkType therapeuticLink) throws ConnectorException, SessionManagementException
putTherapeuticLink in interface HubServicetherapeuticLink - A Therapeutic link containing Patient Identifier, HCP identifier, Link type, link start date , link end date
(optional), comment (optional)).SessionManagementExceptionConnectorExceptionpublic Collection<TherapeuticLinkType> getTherapeuticLink(SelectGetHCPartyPatientConsentType patientConsent) throws ConnectorException
getTherapeuticLink in interface HubServicepatientConsent - Contains the Patient Identifiers and the scope of the consentConnectorExceptionSessionManagementException - the session management exceptionpublic void revokeTherapeuticLink(TherapeuticLinkType therapeuticLink) throws TechnicalConnectorException, IntraHubBusinessConnectorException
revokeTherapeuticLink in interface HubServicetherapeuticLink - the therapeutic linkSessionManagementExceptionTechnicalConnectorException - the technical connector exceptionIntraHubBusinessConnectorException - the business connector exceptionpublic void putAccessRight(AccessRightType accessRight) throws TechnicalConnectorException, IntraHubBusinessConnectorException
putAccessRight in interface HubServiceaccessRight - the access rightSessionManagementExceptionTechnicalConnectorException - the technical connector exceptionIntraHubBusinessConnectorException - the business connector exceptionpublic AccessRightListType getAccessRight(TransactionIdType transaction) throws TechnicalConnectorException, IntraHubBusinessConnectorException
getAccessRight in interface HubServicetransaction - A transaction ID Type containing the Transaction Identifier.SessionManagementExceptionTechnicalConnectorException - the technical connector exceptionIntraHubBusinessConnectorException - the business connector exceptionpublic void revokeAccessRight(SelectRevokeAccessRightType accessRight) throws TechnicalConnectorException, IntraHubBusinessConnectorException
revokeAccessRight in interface HubServiceaccessRight - Contains a transaction and a HC PartySessionManagementExceptionTechnicalConnectorException - the technical connector exceptionIntraHubBusinessConnectorException - the business connector exceptionpublic TransactionAccessListType getPatientAuditTrail(SelectGetPatientAuditTrailType patientAuditTrail) throws TechnicalConnectorException, IntraHubBusinessConnectorException
getPatientAuditTrail in interface HubServicepatientAuditTrail - Contains the search parameters for the audit trail.SessionManagementExceptionTechnicalConnectorException - the technical connector exceptionIntraHubBusinessConnectorException - the business connector exception
Connector Packaging generic 4.5.4 API
Copyright © {inceptionYear}-2024 eHealth. All Rights Reserved.