Package org.ehrbase.dao.access.jooq
Class CompositionHistoryAccess
- java.lang.Object
-
- org.ehrbase.dao.access.support.DataAccess
-
- org.ehrbase.dao.access.jooq.CompositionHistoryAccess
-
- All Implemented Interfaces:
I_CompositionHistoryAccess,I_DomainAccess,I_SimpleCRUD
public class CompositionHistoryAccess extends DataAccess implements I_CompositionHistoryAccess
Stripped down DAO to perform some `*_history` table related actions. Composition access handling in general is done through theCompositionAccessclass.
-
-
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 CompositionHistoryAccess(I_DomainAccess domainAccess)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description UUIDcommit()storeComposition a new entry in the DB, using a default transaction time
only implemented with "root" tables: ehr, contribution and composition!UUIDcommit(Timestamp transactionTime)storeComposition a new entry in the DBIntegerdelete()delete the Versioned Object associated with the instance implementing this Data Access Interface.DataAccessgetDataAccess()CompositionHistoryRecordgetRecord()static I_CompositionHistoryAccessretrieveLatest(I_DomainAccess domainAccess, UUID compositionId)Creates DAO object with the latest existing history record matching the given composition ID.voidsetHasAudit(UUID audit)voidsetInContribution(UUID contribution)voidsetRecord(CompositionHistoryRecord record)Booleanupdate()updateComposition the current entry using time now as the system transaction time
only implemented at root level object (contribution, composition, ehr).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
-
CompositionHistoryAccess
public CompositionHistoryAccess(I_DomainAccess domainAccess)
-
-
Method Detail
-
getDataAccess
public DataAccess getDataAccess()
- Specified by:
getDataAccessin interfaceI_DomainAccess
-
commit
public UUID commit(Timestamp transactionTime)
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
-
commit
public UUID commit()
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
-
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()
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(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:
-
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:
-
retrieveLatest
public static I_CompositionHistoryAccess retrieveLatest(I_DomainAccess domainAccess, UUID compositionId)
Description copied from interface:I_CompositionHistoryAccessCreates DAO object with the latest existing history record matching the given composition ID.- Parameters:
domainAccess- ConfigcompositionId- Composition ID- Returns:
- DAO instance or null if no history is available
-
setRecord
public void setRecord(CompositionHistoryRecord record)
- Specified by:
setRecordin interfaceI_CompositionHistoryAccess
-
getRecord
public CompositionHistoryRecord getRecord()
- Specified by:
getRecordin interfaceI_CompositionHistoryAccess
-
setInContribution
public void setInContribution(UUID contribution)
- Specified by:
setInContributionin interfaceI_CompositionHistoryAccess
-
setHasAudit
public void setHasAudit(UUID audit)
- Specified by:
setHasAuditin interfaceI_CompositionHistoryAccess
-
-