Package org.ehrbase.repository
Class EhrFolderRepository
java.lang.Object
org.ehrbase.repository.AbstractVersionedObjectRepository<EhrFolderVersionRecord,EhrFolderDataRecord,EhrFolderVersionHistoryRecord,EhrFolderDataHistoryRecord,com.nedap.archie.rm.directory.Folder>
org.ehrbase.repository.EhrFolderRepository
@Repository
public class EhrFolderRepository
extends AbstractVersionedObjectRepository<EhrFolderVersionRecord,EhrFolderDataRecord,EhrFolderVersionHistoryRecord,EhrFolderDataHistoryRecord,com.nedap.archie.rm.directory.Folder>
Handles DB-Access to
EhrFolderVersion etc.-
Nested Class Summary
Nested classes/interfaces inherited from class org.ehrbase.repository.AbstractVersionedObjectRepository
AbstractVersionedObjectRepository.Tables -
Field Summary
FieldsFields inherited from class org.ehrbase.repository.AbstractVersionedObjectRepository
context, contributionRepository, DATA_HISTORY_PROTOTYPE, DATA_PROTOTYPE, systemService, tables, timeProvider, VERSION_HISTORY_PROTOTYPE, VERSION_PROTOTYPE -
Constructor Summary
ConstructorsConstructorDescriptionEhrFolderRepository(org.jooq.DSLContext context, ContributionRepository contributionRepository, SystemService systemService, TimeProvider timeProvider) -
Method Summary
Modifier and TypeMethodDescriptionvoidadminDelete(UUID ehrId, Integer ehrFoldersIdx) voidcommit(UUID ehrId, com.nedap.archie.rm.directory.Folder folder, UUID contributionId, UUID auditId, int ehrFoldersIdx) Create a new Folder in the DBvoiddelete(UUID ehrId, UUID rootFolderId, int version, int ehrFoldersIdx, UUID contributionId, UUID auditId) Delete a Folder in the DBOptional<com.nedap.archie.rm.directory.Folder> findByVersion(UUID ehrId, int folderIdx, int version) List<com.nedap.archie.rm.support.identification.ObjectVersionId> findForContribution(UUID ehrId, UUID contributionId) Optional<com.nedap.archie.rm.directory.Folder> Optional<com.nedap.archie.rm.support.identification.ObjectVersionId> findVersionByTime(UUID ehrId, int folderIdx, OffsetDateTime time) protected Class<com.nedap.archie.rm.directory.Folder> protected List<org.jooq.TableField<EhrFolderVersionRecord, ?>> booleanvoidupdate(UUID ehrId, com.nedap.archie.rm.directory.Folder folder, UUID contributionId, UUID auditId, int ehrFoldersIdx) Update a Folder in the DBMethods inherited from class org.ehrbase.repository.AbstractVersionedObjectRepository
buildLocatableDataQuery, buildObjectVersionId, commitHead, contributionCondition, copyHeadToHistory, createCurrentTime, dataRootCondition, delete, deleteHead, extractUid, extractVersion, field, findByVersion, findHead, findLatestHistoryRoot, findRootRecordByVersion, findVersionByTime, findVersionHeadRecords, findVersionIdsByContribution, fromJoinedVersionData, getOriginalVersion, isDeleted, jsonDataField, toLocatable, toRecords, update, versionHeadQueryExtended
-
Field Details
-
NOT_MATCH_LATEST_VERSION
- See Also:
-
-
Constructor Details
-
EhrFolderRepository
public EhrFolderRepository(org.jooq.DSLContext context, ContributionRepository contributionRepository, SystemService systemService, TimeProvider timeProvider)
-
-
Method Details
-
getVersionDataJoinFields
- Specified by:
getVersionDataJoinFieldsin classAbstractVersionedObjectRepository<EhrFolderVersionRecord,EhrFolderDataRecord, EhrFolderVersionHistoryRecord, EhrFolderDataHistoryRecord, com.nedap.archie.rm.directory.Folder>
-
commit
@Transactional public void commit(UUID ehrId, com.nedap.archie.rm.directory.Folder folder, @Nullable UUID contributionId, @Nullable UUID auditId, int ehrFoldersIdx) Create a new Folder in the DB- Parameters:
ehrId-folder-contributionId- Ifnulldefault contribution will be createdContributionRepository.createDefault(UUID, ContributionDataType, ContributionChangeType)auditId- Ifnulldefault audit will be createdinvalid reference
ContributionRepository#createDefaultAudit(ContributionChangeType)
-
update
@Transactional public void update(UUID ehrId, com.nedap.archie.rm.directory.Folder folder, @Nullable UUID contributionId, @Nullable UUID auditId, int ehrFoldersIdx) Update a Folder in the DB- Parameters:
ehrId-folder-contributionId- Ifnulldefault contribution will be createdContributionRepository.createDefault(UUID, ContributionDataType, ContributionChangeType)auditId- Ifnulldefault audit will be createdinvalid reference
ContributionRepository#createDefaultAudit(ContributionChangeType)
-
findHead
-
delete
@Transactional public void delete(UUID ehrId, UUID rootFolderId, int version, int ehrFoldersIdx, UUID contributionId, UUID auditId) Delete a Folder in the DB- Parameters:
ehrId-rootFolderId-version- Version to be deleted. Must match latest.ehrFoldersIdx-contributionId- Ifnulldefault contribution will be createdContributionRepository.createDefault(UUID, ContributionDataType, ContributionChangeType)auditId- Ifnulldefault audit will be createdinvalid reference
ContributionRepository#createDefaultAudit(ContributionChangeType)
-
findByVersion
-
getLocatableClass
- Specified by:
getLocatableClassin classAbstractVersionedObjectRepository<EhrFolderVersionRecord,EhrFolderDataRecord, EhrFolderVersionHistoryRecord, EhrFolderDataHistoryRecord, com.nedap.archie.rm.directory.Folder>
-
findVersionByTime
public Optional<com.nedap.archie.rm.support.identification.ObjectVersionId> findVersionByTime(UUID ehrId, int folderIdx, OffsetDateTime time) -
hasFolder
-
adminDelete
-
findForContribution
-