Interface IParamValueCollector
-
- All Known Implementing Classes:
ParameterValueCollector
public interface IParamValueCollectorCollects instances of search parameter values associated with a particular resource (identified by the logicalResourceId). This collector can be used to collect parameters from multiple resources being processed over an entire transaction. Collecting all the values in this way makes it more efficient when resolving reference (FK) ids, and means that we hold onto any locks for a shorter period of time.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description voidcollect(java.lang.String tenantId, java.lang.String requestShard, java.lang.String resourceType, java.lang.String logicalId, long logicalResourceId, DateParameter p)Process the given DateParameter pvoidcollect(java.lang.String tenantId, java.lang.String requestShard, java.lang.String resourceType, java.lang.String logicalId, long logicalResourceId, LocationParameter p)Process the given LocationParameter pvoidcollect(java.lang.String tenantId, java.lang.String requestShard, java.lang.String resourceType, java.lang.String logicalId, long logicalResourceId, NumberParameter p)Process the given NumberParameter pvoidcollect(java.lang.String tenantId, java.lang.String requestShard, java.lang.String resourceType, java.lang.String logicalId, long logicalResourceId, ProfileParameter p)Process the given ProfileParameter pvoidcollect(java.lang.String tenantId, java.lang.String requestShard, java.lang.String resourceType, java.lang.String logicalId, long logicalResourceId, QuantityParameter p)Process the given QuantityParameter pvoidcollect(java.lang.String tenantId, java.lang.String requestShard, java.lang.String resourceType, java.lang.String logicalId, long logicalResourceId, ReferenceParameter p)Process the given ReferenceParameter pvoidcollect(java.lang.String tenantId, java.lang.String requestShard, java.lang.String resourceType, java.lang.String logicalId, long logicalResourceId, SecurityParameter p)Proces the given SecurityParameter pvoidcollect(java.lang.String tenantId, java.lang.String requestShard, java.lang.String resourceType, java.lang.String logicalId, long logicalResourceId, StringParameter p)voidcollect(java.lang.String tenantId, java.lang.String requestShard, java.lang.String resourceType, java.lang.String logicalId, long logicalResourceId, TagParameter p)Process the given TagParameter pvoidcollect(java.lang.String tenantId, java.lang.String requestShard, java.lang.String resourceType, java.lang.String logicalId, long logicalResourceId, TokenParameter p)Process the given TokenParameter pvoidpublish(IParamValueProcessor processor)Publish the values held in this collector using the given processorvoidpublishValuesToCache()To be called after all the values are resolved and the database transaction is committed.voidreset()Reset the state of the collector by clearing any values that have been previously collected
-
-
-
Method Detail
-
publish
void publish(IParamValueProcessor processor) throws FHIRPersistenceException
Publish the values held in this collector using the given processor- Parameters:
processor-- Throws:
FHIRPersistenceException
-
reset
void reset()
Reset the state of the collector by clearing any values that have been previously collected
-
publishValuesToCache
void publishValuesToCache()
To be called after all the values are resolved and the database transaction is committed. This call should promote any newly assigned database ids to the cache (it is then up to the cache implementation to decide what to do with those ids).
-
collect
void collect(java.lang.String tenantId, java.lang.String requestShard, java.lang.String resourceType, java.lang.String logicalId, long logicalResourceId, LocationParameter p) throws FHIRPersistenceExceptionProcess the given LocationParameter p- Parameters:
tenantId-requestShard-resourceType-logicalId-logicalResourceId-p-- Throws:
FHIRPersistenceException
-
collect
void collect(java.lang.String tenantId, java.lang.String requestShard, java.lang.String resourceType, java.lang.String logicalId, long logicalResourceId, TokenParameter p) throws FHIRPersistenceExceptionProcess the given TokenParameter p- Parameters:
tenantId-requestShard-resourceType-logicalId-logicalResourceId-p-- Throws:
FHIRPersistenceException
-
collect
void collect(java.lang.String tenantId, java.lang.String requestShard, java.lang.String resourceType, java.lang.String logicalId, long logicalResourceId, TagParameter p) throws FHIRPersistenceExceptionProcess the given TagParameter p- Parameters:
tenantId-requestShard-resourceType-logicalId-logicalResourceId-p-- Throws:
FHIRPersistenceException
-
collect
void collect(java.lang.String tenantId, java.lang.String requestShard, java.lang.String resourceType, java.lang.String logicalId, long logicalResourceId, ProfileParameter p) throws FHIRPersistenceExceptionProcess the given ProfileParameter p- Parameters:
tenantId-requestShard-resourceType-logicalId-logicalResourceId-p-- Throws:
FHIRPersistenceException
-
collect
void collect(java.lang.String tenantId, java.lang.String requestShard, java.lang.String resourceType, java.lang.String logicalId, long logicalResourceId, SecurityParameter p) throws FHIRPersistenceExceptionProces the given SecurityParameter p- Parameters:
tenantId-requestShard-resourceType-logicalId-logicalResourceId-p-- Throws:
FHIRPersistenceException
-
collect
void collect(java.lang.String tenantId, java.lang.String requestShard, java.lang.String resourceType, java.lang.String logicalId, long logicalResourceId, QuantityParameter p) throws FHIRPersistenceExceptionProcess the given QuantityParameter p- Parameters:
tenantId-requestShard-resourceType-logicalId-logicalResourceId-p-- Throws:
FHIRPersistenceException
-
collect
void collect(java.lang.String tenantId, java.lang.String requestShard, java.lang.String resourceType, java.lang.String logicalId, long logicalResourceId, NumberParameter p) throws FHIRPersistenceExceptionProcess the given NumberParameter p- Parameters:
tenantId-requestShard-resourceType-logicalId-logicalResourceId-p-- Throws:
FHIRPersistenceException
-
collect
void collect(java.lang.String tenantId, java.lang.String requestShard, java.lang.String resourceType, java.lang.String logicalId, long logicalResourceId, DateParameter p) throws FHIRPersistenceExceptionProcess the given DateParameter p- Parameters:
tenantId-requestShard-resourceType-logicalId-logicalResourceId-p-- Throws:
FHIRPersistenceException
-
collect
void collect(java.lang.String tenantId, java.lang.String requestShard, java.lang.String resourceType, java.lang.String logicalId, long logicalResourceId, ReferenceParameter p) throws FHIRPersistenceExceptionProcess the given ReferenceParameter p- Parameters:
tenantId-requestShard-resourceType-logicalId-logicalResourceId-p-- Throws:
FHIRPersistenceException
-
collect
void collect(java.lang.String tenantId, java.lang.String requestShard, java.lang.String resourceType, java.lang.String logicalId, long logicalResourceId, StringParameter p) throws FHIRPersistenceException- Parameters:
tenantId-requestShard-resourceType-logicalId-logicalResourceId-p-- Throws:
FHIRPersistenceException
-
-