be.ehealth.businessconnector.hub.session
Interface HubService

All Known Implementing Classes:
HubServiceImpl

public interface 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:

Pre-requisites

Default impl : HubServiceImpl Factory : HubSessionServiceFactory


Method Summary
 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 hcParty)
          This operation should be used to retrieve the consent of a healthcare party within a hub.
 PersonType getPatient(PatientIdType patient)
          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 consent)
          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 msg)
          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.
 

Method Detail

declareTransaction

List<IDKMEHR> declareTransaction(KmehrHeaderDeclareTransaction kmehrHeader)
                                 throws TechnicalConnectorException,
                                        SessionManagementException,
                                        IntraHubBusinessConnectorException
This operation should be used to declare a transaction within a hub.

Parameters:
kmehrHeader - A Kmehr message formatted as XML String containing a Patient and a Transaction.
Returns:
A list of Transaction ID's.
Throws:
TechnicalConnectorException - the technical connector exception
SessionManagementException
IntraHubBusinessConnectorException

putTransaction

void putTransaction(Kmehrmessage msg)
                    throws TechnicalConnectorException,
                           IntraHubBusinessConnectorException
This operation should be used to declare and to store a given transaction within a hub.

Parameters:
msg - A Kmehr message formatted as XML String containing a Patient and a Transaction.
Throws:
TechnicalConnectorException - the technical connector exception
IntraHubBusinessConnectorException

revokeTransaction

void revokeTransaction(PatientIdType patient,
                       TransactionIdType transaction)
                       throws TechnicalConnectorException,
                              IntraHubBusinessConnectorException
This operation should be used to 'unpublish' a given transaction.

Parameters:
patient - Patient for which to revoke the transaction.
transaction - Transaction to revoke.
Throws:
TechnicalConnectorException - the technical connector exception
IntraHubBusinessConnectorException

getTransactionList

KmehrHeaderGetTransactionList getTransactionList(PatientIdType patient,
                                                 LocalSearchType searchType,
                                                 TransactionWithPeriodType transaction)
                                                 throws TechnicalConnectorException,
                                                        IntraHubBusinessConnectorException
This operation should be used to get the list of available transactions that fulfill some given criteria.

Parameters:
patient - Patient for which to retrieve the transaction list.
searchType - The search type (local or national)
transaction - Transaction types to search.
Returns:
A Kmehr message formatted as XML String containing a Patient and 1 or more Transactions.
Throws:
TechnicalConnectorException - the technical connector exception
IntraHubBusinessConnectorException - the business connector exception

getTransaction

Kmehrmessage getTransaction(PatientIdType patient,
                            TransactionBaseType transaction)
                            throws TechnicalConnectorException,
                                   IntraHubBusinessConnectorException
This operation should be used to retrieve a transaction (given a transaction identifier) within a hub.

Parameters:
patient - Patient for which to retrieve the transaction.
transaction - Transaction identification
Returns:
the transaction
Throws:
TechnicalConnectorException - the technical connector exception
IntraHubBusinessConnectorException - the business connector exception

requestPublication

void requestPublication(PatientIdType patient,
                        TransactionWithPeriodType transaction,
                        String comment)
                        throws TechnicalConnectorException,
                               IntraHubBusinessConnectorException
This operation allows a healthcare party to ask to another healthcare party to publish documents related to a patient.

Parameters:
patient - The Patient for who the ation is.
transaction - Transaction types and Health Care Parties
comment - Comment
Throws:
TechnicalConnectorException - the technical connector exception
IntraHubBusinessConnectorException - the business connector exception

putHCParty

HCPartyAdaptedType putHCParty(HCPartyAdaptedType hcParty)
                              throws TechnicalConnectorException,
                                     IntraHubBusinessConnectorException
This operation should be used to create a healthcare party within a hub. It can also be used to update the information about this healthcare party.

Parameters:
hcParty - Information about the healthcare party
Returns:
Information about the healthcare party
Throws:
TechnicalConnectorException - the technical connector exception
IntraHubBusinessConnectorException - the business connector exception

getHCParty

HCPartyAdaptedType getHCParty(HCPartyIdType hcParty)
                              throws TechnicalConnectorException,
                                     IntraHubBusinessConnectorException
This operation should be used to retrieve the data associated with a healthcare party within a hub.

Parameters:
hcParty - This is the NIHII or SSIN number according to the type of healthcare party. Other local identifiers are allowed.
Returns:
Information about the healthcare party
Throws:
TechnicalConnectorException - the technical connector exception
IntraHubBusinessConnectorException - the business connector exception

putPatient

PersonType putPatient(PersonType patient)
                      throws TechnicalConnectorException,
                             IntraHubBusinessConnectorException
This operation should be used to create a patient within a hub. It can also be used to update the information about a patient.

Parameters:
patient - Information about a patient
Returns:
Information about a patient.
Throws:
TechnicalConnectorException - the technical connector exception
IntraHubBusinessConnectorException - the business connector exception

getPatient

PersonType getPatient(PatientIdType patient)
                      throws TechnicalConnectorException,
                             IntraHubBusinessConnectorException
This operation should be used to declare the consent of an healthcare party within a hub.

Parameters:
patient - Patient contains only the identifiers of the patient. Several identifiers of the same patient are allowed.
Returns:
Information about a patient.
Throws:
TechnicalConnectorException - the technical connector exception
IntraHubBusinessConnectorException - the business connector exception

putHCPartyConsent

void putHCPartyConsent(ConsentHCPartyType consent)
                       throws TechnicalConnectorException,
                              IntraHubBusinessConnectorException
This operation should be used to declare the consent of an healthcare party within a hub.

Parameters:
consent - A Consent containing a HCParty and the signature date.
Throws:
TechnicalConnectorException - the technical connector exception
IntraHubBusinessConnectorException - the business connector exception

getHCPartyConsent

ConsentHCPartyType getHCPartyConsent(HCPartyIdType hcParty)
                                     throws TechnicalConnectorException,
                                            IntraHubBusinessConnectorException
This operation should be used to retrieve the consent of a healthcare party within a hub.

Parameters:
hcParty - This is the NIHII or INSS number according to the type of healthcare party. Other local identifiers are allowed.
Returns:
A Consent containing a HCParty and the signature date.
Throws:
TechnicalConnectorException - the technical connector exception
IntraHubBusinessConnectorException - the business connector exception

revokeHCPartyConsent

void revokeHCPartyConsent(ConsentHCPartyType consent)
                          throws TechnicalConnectorException,
                                 IntraHubBusinessConnectorException
This operation should be used to revoke the consent of a healthcare party within a hub.

Parameters:
consent - A Consent containing a HCParty and the signature date.
Throws:
TechnicalConnectorException - the technical connector exception
IntraHubBusinessConnectorException

putPatientConsent

void putPatientConsent(ConsentType patientConsent)
                       throws TechnicalConnectorException,
                              IntraHubBusinessConnectorException
This operation should be used to declare the consent of a patient within a hub.

Parameters:
patientConsent - Patient Consent data structure that contains signing date of the consent, scope of the consent, 'retrospective'/ 'prospective' attribute.
Throws:
TechnicalConnectorException - the technical connector exception
IntraHubBusinessConnectorException - the business connector exception

getPatientConsent

ConsentType getPatientConsent(SelectGetPatientConsentType patientConsent)
                              throws TechnicalConnectorException,
                                     IntraHubBusinessConnectorException
This operation should be used to retrieve the consent of a patient within a hub.

Parameters:
patientConsent - Contains the Patient Identifiers and the scope of the consent
Returns:
Patient Consent data structure that contains signing date of the consent, scope of the consent, 'retrospective' 'prospective' attribute.
Throws:
TechnicalConnectorException - the technical connector exception
IntraHubBusinessConnectorException - the business connector exception

revokePatientConsent

void revokePatientConsent(ConsentType patientConsent)
                          throws TechnicalConnectorException,
                                 IntraHubBusinessConnectorException
This operation should be used to revoke the consent of a patient within a hub.

Parameters:
patientConsent - Patient Consent data structure that contains signing date of the consent, scope of the consent, 'retrospective' 'prospective' attribute.
Throws:
TechnicalConnectorException - the technical connector exception
IntraHubBusinessConnectorException - the business connector exception

putTherapeuticLink

void putTherapeuticLink(TherapeuticLinkType therapeuticLink)
                        throws ConnectorException,
                               SessionManagementException
This operation should be used to declare therapeutic link between a patient and a healthcare party within a hub.

Parameters:
therapeuticLink - A Therapeutic link containing Patient Identifier, HCP identifier, Link type, link start date , link end date (optional), comment (optional)).
Throws:
SessionManagementException - the session management exception
ConnectorException

getTherapeuticLink

Collection<TherapeuticLinkType> getTherapeuticLink(SelectGetHCPartyPatientConsentType consent)
                                                   throws SessionManagementException,
                                                          ConnectorException
This operation should be used to get therapeutic link between a patient and a healthcare party within a hub.

Parameters:
consent - Contains the Patient Identifiers and the scope of the consent
Returns:
the therapeutic link
Throws:
SessionManagementException - the session management exception
ConnectorException

revokeTherapeuticLink

void revokeTherapeuticLink(TherapeuticLinkType therapeuticLink)
                           throws TechnicalConnectorException,
                                  IntraHubBusinessConnectorException
This operation should be used to revoke a therapeutic link between a patient and a healthcare party within a hub.

Parameters:
therapeuticLink - the therapeutic link
Throws:
TechnicalConnectorException - the technical connector exception
IntraHubBusinessConnectorException - the business connector exception

putAccessRight

void putAccessRight(AccessRightType accessRight)
                    throws TechnicalConnectorException,
                           IntraHubBusinessConnectorException
This operation should be used to put an access right on a transaction within a hub.

Parameters:
accessRight - the access right
Throws:
TechnicalConnectorException - the technical connector exception
IntraHubBusinessConnectorException - the business connector exception

getAccessRight

AccessRightListType getAccessRight(TransactionIdType transaction)
                                   throws TechnicalConnectorException,
                                          IntraHubBusinessConnectorException
This operation should be used to get access rights on a transaction within a hub.

Parameters:
transaction - A transaction ID Type containing the Transaction Identifier.
Returns:
The List of access rights on a transaction. Can be empty.
Throws:
TechnicalConnectorException - the technical connector exception
IntraHubBusinessConnectorException - the business connector exception

revokeAccessRight

void revokeAccessRight(SelectRevokeAccessRightType accessRight)
                       throws TechnicalConnectorException,
                              IntraHubBusinessConnectorException
This operation should be used to revoke access right on a transaction within a hub.

Parameters:
accessRight - Contains a transaction and a HC Party
Throws:
TechnicalConnectorException - the technical connector exception
IntraHubBusinessConnectorException - the business connector exception

getPatientAuditTrail

TransactionAccessListType getPatientAuditTrail(SelectGetPatientAuditTrailType patientAuditTrail)
                                               throws TechnicalConnectorException,
                                                      IntraHubBusinessConnectorException
This operation should be used to get the list of transaction accesses for a given patient.

Parameters:
patientAuditTrail - Contains the search parameters for the audit trail.
Returns:
A list of Transaction Access elements.
Throws:
TechnicalConnectorException - the technical connector exception
IntraHubBusinessConnectorException - the business connector exception



Connector Business ORGPHARMACY 3.13.1 API
Copyright © {inceptionYear}-2017 eHealth. All Rights Reserved.