Package org.ehrbase.dao.access.jooq
Class TemplateStoreAccess
- java.lang.Object
-
- org.ehrbase.dao.access.support.DataAccess
-
- org.ehrbase.dao.access.jooq.TemplateStoreAccess
-
- All Implemented Interfaces:
I_DomainAccess,I_SimpleCRUD,I_TemplateStoreAccess
public class TemplateStoreAccess extends DataAccess implements I_TemplateStoreAccess
-
-
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 TemplateStoreAccess(I_DomainAccess domainAccess, org.openehr.schemas.v1.OPERATIONALTEMPLATE operationaltemplate)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static intadminDeleteAllTemplates(I_DomainAccess domainAccess)static StringadminUpdateTemplate(I_DomainAccess domainAccess, org.openehr.schemas.v1.OPERATIONALTEMPLATE template)Replaces the old content of a template with the new provided content in the database storage.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.static booleandeleteTemplate(I_DomainAccess domainAccess, String templateId)Removes the template identified by its template_id from database and returns if the operation succeeded.static List<TemplateMetaData>fetchAll(I_DomainAccess domainAccess)static Set<String>fetchAllTemplateIds(I_DomainAccess domainAccess)DataAccessgetDataAccess()org.openehr.schemas.v1.OPERATIONALTEMPLATEgetTemplate()static I_TemplateStoreAccessretrieveInstanceByTemplateId(I_DomainAccess domainAccess, String templateId)voidsetTemplate(org.openehr.schemas.v1.OPERATIONALTEMPLATE template)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
-
TemplateStoreAccess
public TemplateStoreAccess(I_DomainAccess domainAccess, org.openehr.schemas.v1.OPERATIONALTEMPLATE operationaltemplate)
-
-
Method Detail
-
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:
-
getDataAccess
public DataAccess getDataAccess()
- Specified by:
getDataAccessin interfaceI_DomainAccess
-
getTemplate
public org.openehr.schemas.v1.OPERATIONALTEMPLATE getTemplate()
- Specified by:
getTemplatein interfaceI_TemplateStoreAccess
-
setTemplate
public void setTemplate(org.openehr.schemas.v1.OPERATIONALTEMPLATE template)
- Specified by:
setTemplatein interfaceI_TemplateStoreAccess
-
retrieveInstanceByTemplateId
public static I_TemplateStoreAccess retrieveInstanceByTemplateId(I_DomainAccess domainAccess, String templateId)
-
fetchAll
public static List<TemplateMetaData> fetchAll(I_DomainAccess domainAccess)
-
fetchAllTemplateIds
public static Set<String> fetchAllTemplateIds(I_DomainAccess domainAccess)
-
adminUpdateTemplate
public static String adminUpdateTemplate(I_DomainAccess domainAccess, org.openehr.schemas.v1.OPERATIONALTEMPLATE template)
Replaces the old content of a template with the new provided content in the database storage. The target template id must be provided within the new template. This is a destructive operation thus the old template will be checked against Compositions if there are any usages of the template to avoid data inconsistencies.- Parameters:
domainAccess- - Database connection contexttemplate- - New template data to store- Returns:
- - Updated template XML content
-
deleteTemplate
public static boolean deleteTemplate(I_DomainAccess domainAccess, String templateId)
Removes the template identified by its template_id from database and returns if the operation succeeded.- Parameters:
domainAccess- - Database access instancetemplateId- - Target template_id, e.g. "IDCR - Problem List.v1"- Returns:
- - Deletion succeeded or not
-
adminDeleteAllTemplates
public static int adminDeleteAllTemplates(I_DomainAccess domainAccess)
-
-