
Package ca.uhn.fhir.jpa.term.api
Interface ITermDeferredStorageSvc
- All Known Implementing Classes:
TermDeferredStorageSvcImpl
public interface ITermDeferredStorageSvc
This service handles processing "deferred" concept writes, meaning concepts that have neen
queued for storage because there are too many of them to handle in a single transaction.
-
Method Summary
Modifier and TypeMethodDescriptionvoidaddConceptLinkToStorageQueue(TermConceptParentChildLink theConceptLink) voidaddConceptMapsToStorageQueue(List<org.hl7.fhir.r4.model.ConceptMap> theConceptMaps) voidaddConceptToStorageQueue(TermConcept theConcept) voidaddValueSetsToStorageQueue(List<org.hl7.fhir.r4.model.ValueSet> theValueSets) voiddeleteCodeSystemForResource(ResourceTable theCodeSystemResourceToDelete) voiddeleteCodeSystemVersion(TermCodeSystemVersion theCodeSystemVersion) voidOnly to be used from tests - Disallow test timeouts on deferred tasksbooleandefault booleanDeprecated.booleanisStorageQueueEmpty(boolean theIncludeExecutingJobs) If you are calling this in a loop or something similar, consider the impact of setting theIncludeExecutingJobs to true.voidvoidnotifyJobEnded(String theId) voidThis is mostly here for unit tests - Saves any and all deferred concepts and linksvoidvoidsetProcessDeferred(boolean theProcessDeferred) This is mostly for unit tests - we can disable processing of deferred concepts by changing this flag
-
Method Details
-
saveDeferred
void saveDeferred() -
isStorageQueueEmpty
Deprecated.UseisStorageQueueEmpty(boolean)instead -
isStorageQueueEmpty
If you are calling this in a loop or something similar, consider the impact of setting theIncludeExecutingJobs to true. When that parameter is set to true, each call to this method results in a database lookup! -
setProcessDeferred
This is mostly for unit tests - we can disable processing of deferred concepts by changing this flag -
addConceptToStorageQueue
-
addConceptLinkToStorageQueue
-
addConceptMapsToStorageQueue
-
addValueSetsToStorageQueue
-
deleteCodeSystemForResource
-
deleteCodeSystemVersion
-
notifyJobEnded
-
saveAllDeferred
void saveAllDeferred()This is mostly here for unit tests - Saves any and all deferred concepts and links -
logQueueForUnitTest
void logQueueForUnitTest() -
isJobsExecuting
boolean isJobsExecuting() -
disallowDeferredTaskTimeout
void disallowDeferredTaskTimeout()Only to be used from tests - Disallow test timeouts on deferred tasks
-
isStorageQueueEmpty(boolean)instead