Package org.ehrbase.dao.access.jooq
Class StatusAccess
- java.lang.Object
-
- org.ehrbase.dao.access.support.DataAccess
-
- org.ehrbase.dao.access.jooq.StatusAccess
-
- All Implemented Interfaces:
I_DomainAccess,I_SimpleCRUD,I_StatusAccess
public class StatusAccess extends DataAccess implements I_StatusAccess
Created by Christian Chevalley on 4/20/2015.
-
-
Field Summary
-
Fields inherited from interface org.ehrbase.dao.access.interfaces.I_DomainAccess
DBCP2_POOL, KEY_AUTO_RECONNECT, KEY_CONNECTION_MODE, KEY_DATABASE, KEY_DIALECT, KEY_HOST, KEY_INITIAL_CONNECTIONS, KEY_INTROSPECT_CACHE, KEY_KNOWLEDGE, KEY_LOG_ABANDONNED, KEY_LOGIN, KEY_MAX_ACTIVE, KEY_MAX_CONNECTION, KEY_MAX_IDLE, KEY_PASSWORD, KEY_PORT, KEY_REMOVE_ABANDONNED, KEY_REMOVE_ABANDONNED_TIMEOUT, KEY_SCHEMA, KEY_SET_MAX_PREPARED_STATEMENTS, KEY_SET_POOL_PREPARED_STATEMENTS, KEY_TEST_ON_BORROW, KEY_URL, KEY_WAIT_MS, PG_POOL
-
-
Constructor Summary
Constructors Constructor Description StatusAccess(I_DomainAccess domainAccess, UUID ehrId)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description UUIDcommit()Deprecated.UUIDcommit(Timestamp transactionTime)Deprecated.UUIDcommit(Timestamp transactionTime, UUID ehrId, com.nedap.archie.rm.datastructures.ItemStructure otherDetails)Commit this status instance.UUIDcommitWithCustomContribution(Timestamp transactionTime, UUID ehrId, com.nedap.archie.rm.datastructures.ItemStructure otherDetails)commit this instance, which has contribution already set with setContributionId(...) beforehandIntegerdelete()delete the Versioned Object associated with the instance implementing this Data Access Interface.I_AuditDetailsAccessgetAuditDetailsAccess()UUIDgetAuditDetailsId()UUIDgetContributionId()DataAccessgetDataAccess()UUIDgetId()StatusRecordgetStatusRecord()static I_StatusAccessretrieveInstance(I_DomainAccess domainAccess, UUID statusId)retrieve a status by given status IDstatic I_StatusAccessretrieveInstanceByEhrId(I_DomainAccess domainAccess, UUID ehrId)retrieve a status by given EHR IDstatic I_StatusAccessretrieveInstanceByNamedSubject(I_DomainAccess domainAccess, String partyName)retrieve a status for a named subject (patient)
NB.static I_StatusAccessretrieveInstanceByParty(I_DomainAccess domainAccess, UUID partyIdentified)retrieve a status by an identified party idvoidsetAuditAndContributionAuditValues(UUID systemId, UUID committerId, String description)Helper that sets values in Status' direct audit and Status' implicit contribution auditvoidsetAuditDetailsAccess(I_AuditDetailsAccess auditDetailsAccess)voidsetContributionAccess(I_ContributionAccess contributionAccess)voidsetContributionId(UUID contribution)voidsetStatusRecord(StatusRecord record)Booleanupdate()Deprecated.Booleanupdate(com.nedap.archie.rm.datastructures.ItemStructure otherDetails, Timestamp transactionTime, boolean force)Update this status instance.Booleanupdate(Boolean force)updateComposition the current entry using time now as the system transaction time
only implemented at root level object (contribution, composition, ehr).Booleanupdate(Timestamp transactionTime)updateComposition the current entry
depending on the implementation, records are updated only if one or more field(s) have been changedBooleanupdate(Timestamp transactionTime, boolean force)updateComposition the current entry even if the record is not modified
intended to be used with temporal tables to ensure that a set of interdependent tables are updated in sync.-
Methods inherited from class org.ehrbase.dao.access.support.DataAccess
getConnection, getContext, getDialect, getIntrospectService, getKnowledgeManager, getServerConfig, releaseConnection
-
-
-
-
Constructor Detail
-
StatusAccess
public StatusAccess(I_DomainAccess domainAccess, UUID ehrId)
-
-
Method Detail
-
retrieveInstance
public static I_StatusAccess retrieveInstance(I_DomainAccess domainAccess, UUID statusId)
Description copied from interface:I_StatusAccessretrieve a status by given status ID- Parameters:
domainAccess- SQL accessstatusId- Id of an status to retrieve- Returns:
- UUID or null
-
retrieveInstanceByNamedSubject
public static I_StatusAccess retrieveInstanceByNamedSubject(I_DomainAccess domainAccess, String partyName)
Description copied from interface:I_StatusAccessretrieve a status for a named subject (patient)
NB. for security reason, most deployment will not provide an explicit subject name, this method is provided for small deployment or test purpose.- Parameters:
domainAccess- SQL accesspartyName- a subject name- Returns:
- UUID or null
-
retrieveInstanceByParty
public static I_StatusAccess retrieveInstanceByParty(I_DomainAccess domainAccess, UUID partyIdentified)
Description copied from interface:I_StatusAccessretrieve a status by an identified party id- Parameters:
domainAccess- SQL accesspartyIdentified- Id of an identified party- Returns:
- UUID or null
-
retrieveInstanceByEhrId
public static I_StatusAccess retrieveInstanceByEhrId(I_DomainAccess domainAccess, UUID ehrId)
Description copied from interface:I_StatusAccessretrieve a status by given EHR ID- Parameters:
domainAccess- SQL accessehrId- Id of associated EHR- Returns:
- UUID or null
-
getId
public UUID getId()
- Specified by:
getIdin interfaceI_StatusAccess
-
commit
@Deprecated public UUID commit(Timestamp transactionTime)
Deprecated.Description copied from interface:I_SimpleCRUDstoreComposition a new entry in the DB- Specified by:
commitin interfaceI_SimpleCRUD- Returns:
- the UUID of the newly created record
- Throws:
InternalServerException- because inherited interface function isn't implemented in this class
-
commit
@Deprecated public UUID commit()
Deprecated.Description copied from interface:I_SimpleCRUDstoreComposition a new entry in the DB, using a default transaction time
only implemented with "root" tables: ehr, contribution and composition!- Specified by:
commitin interfaceI_SimpleCRUD- Returns:
- the UUID of the newly created record
- Throws:
InternalServerException- because inherited interface function isn't implemented in this class
-
commit
public UUID commit(Timestamp transactionTime, UUID ehrId, com.nedap.archie.rm.datastructures.ItemStructure otherDetails)
Description copied from interface:I_StatusAccessCommit this status instance.- Specified by:
commitin interfaceI_StatusAccess- Parameters:
transactionTime- Time of transactionehrId- Associated EHRotherDetails- Object representation of otherDetails- Returns:
- ID of DB entry if successful
-
commitWithCustomContribution
public UUID commitWithCustomContribution(Timestamp transactionTime, UUID ehrId, com.nedap.archie.rm.datastructures.ItemStructure otherDetails)
Description copied from interface:I_StatusAccesscommit this instance, which has contribution already set with setContributionId(...) beforehand- Specified by:
commitWithCustomContributionin interfaceI_StatusAccess- Parameters:
transactionTime- Time of transactionehrId- Associated EHRotherDetails- Object representation of otherDetails- Returns:
- ID of DB entry if successful
-
update
public Boolean update(Timestamp transactionTime)
Description copied from interface:I_SimpleCRUDupdateComposition the current entry
depending on the implementation, records are updated only if one or more field(s) have been changed- Specified by:
updatein interfaceI_SimpleCRUD- Returns:
-
update
public Boolean update(Timestamp transactionTime, boolean force)
Description copied from interface:I_SimpleCRUDupdateComposition the current entry even if the record is not modified
intended to be used with temporal tables to ensure that a set of interdependent tables are updated in sync. This approach is used to simplify versions retrieval.- Specified by:
updatein interfaceI_SimpleCRUD- Returns:
-
update
public Boolean update(Boolean force)
Description copied from interface:I_SimpleCRUDupdateComposition the current entry using time now as the system transaction time
only implemented at root level object (contribution, composition, ehr). depending on the implementation, records are updated only if one or more field(s) have been changed- Specified by:
updatein interfaceI_SimpleCRUD- Returns:
-
update
public Boolean update(com.nedap.archie.rm.datastructures.ItemStructure otherDetails, Timestamp transactionTime, boolean force)
Description copied from interface:I_StatusAccessUpdate this status instance.- Specified by:
updatein interfaceI_StatusAccess- Parameters:
otherDetails- Object representation of otherDetailstransactionTime- Time of transactionforce- Option to force- Returns:
- True if successful
-
update
@Deprecated public Boolean update()
Deprecated.Description copied from interface:I_SimpleCRUDupdateComposition the current entry using time now as the system transaction time
only implemented at root level object (contribution, composition, ehr). depending on the implementation, records are updated only if one or more field(s) have been changed- Specified by:
updatein interfaceI_SimpleCRUD- Returns:
- Throws:
InternalServerException- because inherited interface function isn't implemented in this class
-
delete
public Integer delete()
Description copied from interface:I_SimpleCRUDdelete the Versioned Object associated with the instance implementing this Data Access Interface. Relies on ON DELETE CASCADE- Specified by:
deletein interfaceI_SimpleCRUD- Returns:
-
getDataAccess
public DataAccess getDataAccess()
- Specified by:
getDataAccessin interfaceI_DomainAccess
-
setStatusRecord
public void setStatusRecord(StatusRecord record)
- Specified by:
setStatusRecordin interfaceI_StatusAccess
-
getStatusRecord
public StatusRecord getStatusRecord()
- Specified by:
getStatusRecordin interfaceI_StatusAccess
-
setAuditDetailsAccess
public void setAuditDetailsAccess(I_AuditDetailsAccess auditDetailsAccess)
- Specified by:
setAuditDetailsAccessin interfaceI_StatusAccess
-
setContributionAccess
public void setContributionAccess(I_ContributionAccess contributionAccess)
- Specified by:
setContributionAccessin interfaceI_StatusAccess
-
getAuditDetailsAccess
public I_AuditDetailsAccess getAuditDetailsAccess()
- Specified by:
getAuditDetailsAccessin interfaceI_StatusAccess
-
getAuditDetailsId
public UUID getAuditDetailsId()
- Specified by:
getAuditDetailsIdin interfaceI_StatusAccess
-
setContributionId
public void setContributionId(UUID contribution)
- Specified by:
setContributionIdin interfaceI_StatusAccess
-
getContributionId
public UUID getContributionId()
- Specified by:
getContributionIdin interfaceI_StatusAccess
-
setAuditAndContributionAuditValues
public void setAuditAndContributionAuditValues(UUID systemId, UUID committerId, String description)
Description copied from interface:I_StatusAccessHelper that sets values in Status' direct audit and Status' implicit contribution audit- Specified by:
setAuditAndContributionAuditValuesin interfaceI_StatusAccess- Parameters:
systemId- ID of committing systemcommitterId- ID of committerdescription- Optional description
-
-