
Package org.hl7.fhir.r5.context
Class BaseWorkerContext
java.lang.Object
org.hl7.fhir.utilities.i18n.I18nBase
org.hl7.fhir.r5.context.BaseWorkerContext
- All Implemented Interfaces:
IWorkerContext
- Direct Known Subclasses:
SimpleWorkerContext
public abstract class BaseWorkerContext
extends org.hl7.fhir.utilities.i18n.I18nBase
implements IWorkerContext
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionclass
class
class
Nested classes/interfaces inherited from interface org.hl7.fhir.r5.context.IWorkerContext
IWorkerContext.CodingValidationRequest, IWorkerContext.IContextResourceLoader, IWorkerContext.ILoggingService, IWorkerContext.ValidationResult
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected org.hl7.fhir.utilities.TimeTracker
protected Parameters
protected IWorkerContext.ILoggingService
protected String
protected boolean
protected CanonicalResourceManager<StructureMap>
protected String
protected TerminologyCache
protected TerminologyClient
protected org.hl7.fhir.utilities.ToolingClientLogger
protected String
protected Map<String,
Map<String, IWorkerContext.ValidationResult>> protected String
Fields inherited from class org.hl7.fhir.utilities.i18n.I18nBase
KEY_DELIMITER, PLURAL_SUFFIX
-
Constructor Summary
ConstructorsModifierConstructorDescriptionprotected
protected
BaseWorkerContext
(Locale locale) protected
BaseWorkerContext
(CanonicalResourceManager<CodeSystem> codeSystems, CanonicalResourceManager<ValueSet> valueSets, CanonicalResourceManager<ConceptMap> maps, CanonicalResourceManager<StructureDefinition> profiles, CanonicalResourceManager<ImplementationGuide> guides) -
Method Summary
Modifier and TypeMethodDescriptionvoid
cache a resource for later retrieval using fetchResource.void
cacheResourceFromPackage
(Resource r, PackageInformation packageInfo) cache a resource for later retrieval using fetchResource.void
cacheVS
(com.google.gson.JsonObject json, Map<String, IWorkerContext.ValidationResult> t) void
clearTS()
void
clearTSCache
(String url) org.hl7.fhir.utilities.TimeTracker
clock()
protected Parameters
constructParameters
(ValueSet vs, boolean hierarchical) protected Parameters
constructParameters
(org.hl7.fhir.utilities.validation.ValidationOptions options, IWorkerContext.CodingValidationRequest codingValidationRequest, ValueSet valueSet) protected Parameters
constructParameters
(org.hl7.fhir.utilities.validation.ValidationOptions options, CodeableConcept codeableConcept) protected Parameters
constructParameters
(org.hl7.fhir.utilities.validation.ValidationOptions options, Coding coding) protected ValueSetCheckerSimple
constructValueSetCheckerSimple
(org.hl7.fhir.utilities.validation.ValidationOptions options, ValueSet vs) protected ValueSetCheckerSimple
constructValueSetCheckerSimple
(org.hl7.fhir.utilities.validation.ValidationOptions options, ValueSet vs, ValidationContextCarrier ctxt) protected ValueSetExpanderSimple
protected void
copy
(BaseWorkerContext other) int
void
dropResource
(String fhirType, String id) void
expandVS
(Resource src, ElementDefinition.ElementDefinitionBindingComponent binding, boolean cacheOk, boolean heirarchical) ValueSet Expansion - see $expand, but resolves the binding firstexpandVS
(ValueSet.ConceptSetComponent inc, boolean hierarchical, boolean noInactive) Value set expanion inside the internal expansion engine - used for references to supported system (see "supportsSystem") for which there is no value set.ValueSet Expansion - see $expandValueSet Expansion - see $expandexpandVS
(ValueSet vs, boolean cacheOk, boolean hierarchical, boolean incompleteOk, Parameters pIn) fetchCodeSystem
(String system) Find the code system definition for the nominated system uri.fetchCodeSystem
(String system, String version) <T extends Resource>
TfetchResource
(Class<T> class_, String uri) Find an identified resource.<T extends Resource>
TfetchResource
(Class<T> class_, String uri, String version) <T extends Resource>
TfetchResource
(Class<T> class_, String uri, Resource sourceForReference) has the same functionality as fetchResource, but passes in information about the source of the reference (this may affect resolution of version)fetchResourceById
(String type, String uri) Variation of fetchResource when you have a string type, and don't need the right class The URI can have one of 3 formats: - a full URL e.g.fetchResourcesByType
(Class<T> class_) Fetch all the resources of a particular type.<T extends Resource>
TfetchResourceWithException
(Class<T> class_, String uri) <T extends Resource>
TfetchResourceWithException
(Class<T> class_, String uri, Resource sourceForReference) <T extends Resource>
TfetchResourceWithException
(String cls, String uri) <T extends Resource>
TfetchResourceWithExceptionByVersion
(Class<T> class_, String uri, String version, Resource sourceForReference) <T extends Resource>
TfetchResourceWithExceptionByVersion
(String cls, String uri, String version, CanonicalResource source) fetchTypeDefinition
(String typeName) This is a short cut for fetchResource(StructureDefinition.class, ...) but it accepts a typename - that is, it resolves based on StructureDefinition.type or StructureDefinition.urlvoid
void
byte[]
getBinaryForKey
(String binaryKey) Returns the binary for the keyReturns a set of keys that can be used to get binaries from this context.int
int
Set the expansion parameters passed through the terminology server when txServer calls are made Note that the Validation Options override these when they are specified on validateCodegetLinkForUrl
(String corePath, String url) getName()
getPackageForUrl
(String uri) getProfiledElementBuilder
(PEBuilder.PEElementPropertiesPolicy elementProps, boolean fixedProps) getSearchParameter
(String code) getStructure
(String code) org.fhir.ucum.UcumService
Get the UCUM service that provides access to units of measure reasoning services This service might not be availableboolean
hasBinaryKey
(String binaryKey) Returns true if this worker context contains a binary for this key.<T extends Resource>
booleanhasResource
(Class<T> class_, String uri) find whether a resource is available.<T extends Resource>
booleanhasResource
(String cls, String uri) <T extends Resource>
booleanhasResourceVersion
(Class<T> class_, String uri, String version) <T extends Resource>
booleanhasResourceVersion
(String cls, String uri, String version) protected void
boolean
boolean
boolean
boolean
listMaps()
void
registerResourceFromPackage
(CanonicalResourceManager.CanonicalResourceProxy r, PackageInformation packageInfo) void
reportStatus
(com.google.gson.JsonObject json) protected <T extends CanonicalResource>
voidseeMetadataResource
(T r, Map<String, T> map, List<T> list, boolean addId) void
setAllowLoadingDuplicates
(boolean allowLoadingDuplicates) void
setCacheId
(String cacheId) void
setCanRunWithoutTerminology
(boolean canRunWithoutTerminology) setClientRetryCount
(int value) void
setExpandCodesLimit
(int expandCodesLimit) void
setExpansionProfile
(Parameters expParameters) Get the expansion parameters passed through the terminology server when txServer calls are made Note that the Validation Options override these when they are specified on validateCodevoid
void
void
void
setNoTerminologyServer
(boolean noTerminologyServer) setPackageTracker
(IWorkerContextManager.IPackageLoadingTracker packageTracker) void
setTlogging
(boolean tlogging) void
setTranslator
(org.hl7.fhir.utilities.TranslationServices translator) void
setTxCaps
(TerminologyCapabilities txCaps) void
setUcumService
(org.fhir.ucum.UcumService ucumService) protected void
setUserAgent
(String userAgent) boolean
supportsSystem
(String system) True if the underlying terminology service provider will do expansion and code validation for the terminology.protected String
int
org.hl7.fhir.utilities.TranslationServices
protected void
validateCode
(org.hl7.fhir.utilities.validation.ValidationOptions options, String system, String version, String code, String display) Validation of a code - consult the terminology infrstructure and/or service to see whether it is known.validateCode
(org.hl7.fhir.utilities.validation.ValidationOptions options, String system, String version, String code, String display, ValueSet vs) Validation of a code - consult the terminology infrstructure and/or service to see whether it is known.validateCode
(org.hl7.fhir.utilities.validation.ValidationOptions options, String code, ValueSet vs) Validation of a code - consult the terminology infrstructure and/or service to see whether it is known.validateCode
(org.hl7.fhir.utilities.validation.ValidationOptions options, CodeableConcept code, ValueSet vs) Validation of a code - consult the terminology infrstructure and/or service to see whether it is known.validateCode
(org.hl7.fhir.utilities.validation.ValidationOptions options, Coding code, ValueSet vs) Validation of a code - consult the terminology infrstructure and/or service to see whether it is known.validateCode
(org.hl7.fhir.utilities.validation.ValidationOptions optionsArg, Coding code, ValueSet vs, ValidationContextCarrier ctxt) See comments in ValidationContextCarrier.void
validateCodeBatch
(org.hl7.fhir.utilities.validation.ValidationOptions options, List<? extends IWorkerContext.CodingValidationRequest> codes, ValueSet vs) Batch validate code - reduce latency and do a bunch of codes in a single server call.protected IWorkerContext.ValidationResult
validateOnServer
(ValueSet vs, Parameters pin, org.hl7.fhir.utilities.validation.ValidationOptions options) Methods inherited from class org.hl7.fhir.utilities.i18n.I18nBase
formatMessage, formatMessagePlural, getLocale, getPluralKey, isWarnAboutMissingMessages, setLocale, setPluralRules, setValidationMessageLanguage, setWarnAboutMissingMessages
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.hl7.fhir.r5.context.IWorkerContext
cachePackage, formatMessage, formatMessagePlural, getLocale, getPackage, getResourceNames, getSpecUrl, getVersion, hasPackage, hasPackage, loadFromPackage, loadFromPackage, loadFromPackageAndDependencies, newValidator, setLocale, setValidationMessageLanguage
-
Field Details
-
version
-
transforms
-
binaries
-
oidCache
-
validationCache
-
tsServer
-
name
-
txClient
-
txLog
-
noTerminologyServer
-
logger
-
expParameters
-
txCache
-
clock
-
userAgent
-
packageTracker
-
-
Constructor Details
-
BaseWorkerContext
protected BaseWorkerContext() throws FileNotFoundException, IOException, org.hl7.fhir.exceptions.FHIRException- Throws:
FileNotFoundException
IOException
org.hl7.fhir.exceptions.FHIRException
-
BaseWorkerContext
protected BaseWorkerContext(Locale locale) throws FileNotFoundException, IOException, org.hl7.fhir.exceptions.FHIRException - Throws:
FileNotFoundException
IOException
org.hl7.fhir.exceptions.FHIRException
-
BaseWorkerContext
protected BaseWorkerContext(CanonicalResourceManager<CodeSystem> codeSystems, CanonicalResourceManager<ValueSet> valueSets, CanonicalResourceManager<ConceptMap> maps, CanonicalResourceManager<StructureDefinition> profiles, CanonicalResourceManager<ImplementationGuide> guides) throws FileNotFoundException, IOException, org.hl7.fhir.exceptions.FHIRException - Throws:
FileNotFoundException
IOException
org.hl7.fhir.exceptions.FHIRException
-
-
Method Details
-
copy
-
cacheResource
Description copied from interface:IWorkerContext
cache a resource for later retrieval using fetchResource. Note that various context implementations will have their own ways of loading rseources, and not all need implement cacheResource. If the resource is loaded out of a package, call cacheResourceFromPackage instead- Specified by:
cacheResource
in interfaceIWorkerContext
- Throws:
org.hl7.fhir.exceptions.FHIRException
-
registerResourceFromPackage
public void registerResourceFromPackage(CanonicalResourceManager.CanonicalResourceProxy r, PackageInformation packageInfo) throws org.hl7.fhir.exceptions.FHIRException - Throws:
org.hl7.fhir.exceptions.FHIRException
-
cacheResourceFromPackage
public void cacheResourceFromPackage(Resource r, PackageInformation packageInfo) throws org.hl7.fhir.exceptions.FHIRException Description copied from interface:IWorkerContext
cache a resource for later retrieval using fetchResource. The package information is used to help manage the cache internally, and to help with reference resolution. Packages should be define using cachePackage (but don't have to be) Note that various context implementations will have their own ways of loading rseources, and not all need implement cacheResource- Specified by:
cacheResourceFromPackage
in interfaceIWorkerContext
- Throws:
org.hl7.fhir.exceptions.FHIRException
-
getNSUrlMap
- Specified by:
getNSUrlMap
in interfaceIWorkerContext
-
fixOldSD
-
seeMetadataResource
protected <T extends CanonicalResource> void seeMetadataResource(T r, Map<String, T> map, List<T> list, boolean addId) throws org.hl7.fhir.exceptions.FHIRException- Throws:
org.hl7.fhir.exceptions.FHIRException
-
fetchCodeSystem
Description copied from interface:IWorkerContext
Find the code system definition for the nominated system uri. return null if there isn't one (then the tool might try supportsSystem) This is a short cut for fetchResource(CodeSystem.class...)- Specified by:
fetchCodeSystem
in interfaceIWorkerContext
- Returns:
-
fetchCodeSystem
- Specified by:
fetchCodeSystem
in interfaceIWorkerContext
-
supportsSystem
public boolean supportsSystem(String system) throws org.hl7.fhir.exceptions.TerminologyServiceException Description copied from interface:IWorkerContext
True if the underlying terminology service provider will do expansion and code validation for the terminology. Corresponds to the extension http://hl7.org/fhir/StructureDefinition/capabilitystatement-supported-system in the Conformance resource Not that not all supported code systems have an available CodeSystem resource- Specified by:
supportsSystem
in interfaceIWorkerContext
- Returns:
- Throws:
org.hl7.fhir.exceptions.TerminologyServiceException
-
txLog
-
getExpandCodesLimit
-
setExpandCodesLimit
-
expandVS
public ValueSetExpander.ValueSetExpansionOutcome expandVS(Resource src, ElementDefinition.ElementDefinitionBindingComponent binding, boolean cacheOk, boolean heirarchical) throws org.hl7.fhir.exceptions.FHIRException Description copied from interface:IWorkerContext
ValueSet Expansion - see $expand, but resolves the binding first- Specified by:
expandVS
in interfaceIWorkerContext
- Returns:
- Throws:
org.hl7.fhir.exceptions.FHIRException
-
expandVS
public ValueSetExpander.ValueSetExpansionOutcome expandVS(ValueSet.ConceptSetComponent inc, boolean hierarchical, boolean noInactive) throws org.hl7.fhir.exceptions.TerminologyServiceException Description copied from interface:IWorkerContext
Value set expanion inside the internal expansion engine - used for references to supported system (see "supportsSystem") for which there is no value set.- Specified by:
expandVS
in interfaceIWorkerContext
- Returns:
- Throws:
org.hl7.fhir.exceptions.TerminologyServiceException
-
expandVS
public ValueSetExpander.ValueSetExpansionOutcome expandVS(ValueSet vs, boolean cacheOk, boolean heirarchical) Description copied from interface:IWorkerContext
ValueSet Expansion - see $expand- Specified by:
expandVS
in interfaceIWorkerContext
- Returns:
-
expandVS
public ValueSetExpander.ValueSetExpansionOutcome expandVS(ValueSet vs, boolean cacheOk, boolean heirarchical, boolean incompleteOk) Description copied from interface:IWorkerContext
ValueSet Expansion - see $expand- Specified by:
expandVS
in interfaceIWorkerContext
- Returns:
-
expandVS
public ValueSetExpander.ValueSetExpansionOutcome expandVS(ValueSet vs, boolean cacheOk, boolean hierarchical, boolean incompleteOk, Parameters pIn) -
validateCode
public IWorkerContext.ValidationResult validateCode(org.hl7.fhir.utilities.validation.ValidationOptions options, String system, String version, String code, String display) Description copied from interface:IWorkerContext
Validation of a code - consult the terminology infrstructure and/or service to see whether it is known. If known, return a description of it note: always return a result, with either an error or a code description corresponds to 2 terminology service calls: $validate-code and $lookup- Specified by:
validateCode
in interfaceIWorkerContext
- Parameters:
options
- - validation options (required)system
- - equals Coding.system (required)code
- - equals Coding.code (required)display
- - equals Coding.display (optional)- Returns:
-
validateCode
public IWorkerContext.ValidationResult validateCode(org.hl7.fhir.utilities.validation.ValidationOptions options, String system, String version, String code, String display, ValueSet vs) Description copied from interface:IWorkerContext
Validation of a code - consult the terminology infrstructure and/or service to see whether it is known. If known, return a description of it note: always return a result, with either an error or a code description corresponds to 2 terminology service calls: $validate-code and $lookup- Specified by:
validateCode
in interfaceIWorkerContext
- Parameters:
options
- - validation options (required)system
- - equals Coding.system (required)code
- - equals Coding.code (required)display
- - equals Coding.display (optional)vs
- the applicable valueset (optional)- Returns:
-
validateCode
public IWorkerContext.ValidationResult validateCode(org.hl7.fhir.utilities.validation.ValidationOptions options, String code, ValueSet vs) Description copied from interface:IWorkerContext
Validation of a code - consult the terminology infrstructure and/or service to see whether it is known. If known, return a description of it note: always return a result, with either an error or a code description corresponds to 2 terminology service calls: $validate-code and $lookup in this case, the system will be inferred from the value set. It's an error to call this one without the value set- Specified by:
validateCode
in interfaceIWorkerContext
- Parameters:
options
- - validation options (required)code
- he code to validate (required)vs
- the applicable valueset (required)- Returns:
-
validateCodeBatch
public void validateCodeBatch(org.hl7.fhir.utilities.validation.ValidationOptions options, List<? extends IWorkerContext.CodingValidationRequest> codes, ValueSet vs) Description copied from interface:IWorkerContext
Batch validate code - reduce latency and do a bunch of codes in a single server call. Each is the same as a validateCode- Specified by:
validateCodeBatch
in interfaceIWorkerContext
-
validateCode
public IWorkerContext.ValidationResult validateCode(org.hl7.fhir.utilities.validation.ValidationOptions options, Coding code, ValueSet vs) Description copied from interface:IWorkerContext
Validation of a code - consult the terminology infrstructure and/or service to see whether it is known. If known, return a description of it note: always return a result, with either an error or a code description corresponds to 2 terminology service calls: $validate-code and $lookup in this case, the system will be inferred from the value set. It's an error to call this one without the value set- Specified by:
validateCode
in interfaceIWorkerContext
- Parameters:
options
- - validation options (required)code
- - Coding to validatevs
- the applicable valueset (optional)- Returns:
-
validateCode
public IWorkerContext.ValidationResult validateCode(org.hl7.fhir.utilities.validation.ValidationOptions optionsArg, Coding code, ValueSet vs, ValidationContextCarrier ctxt) Description copied from interface:IWorkerContext
See comments in ValidationContextCarrier. This is called when there might be additional value sets etc available in the context, but we don't want to pre-process them.- Specified by:
validateCode
in interfaceIWorkerContext
- Returns:
-
constructValueSetExpanderSimple
-
constructValueSetCheckerSimple
protected ValueSetCheckerSimple constructValueSetCheckerSimple(org.hl7.fhir.utilities.validation.ValidationOptions options, ValueSet vs, ValidationContextCarrier ctxt) -
constructValueSetCheckerSimple
protected ValueSetCheckerSimple constructValueSetCheckerSimple(org.hl7.fhir.utilities.validation.ValidationOptions options, ValueSet vs) -
constructParameters
-
constructParameters
protected Parameters constructParameters(org.hl7.fhir.utilities.validation.ValidationOptions options, Coding coding) -
constructParameters
protected Parameters constructParameters(org.hl7.fhir.utilities.validation.ValidationOptions options, CodeableConcept codeableConcept) -
constructParameters
protected Parameters constructParameters(org.hl7.fhir.utilities.validation.ValidationOptions options, IWorkerContext.CodingValidationRequest codingValidationRequest, ValueSet valueSet) -
validateCode
public IWorkerContext.ValidationResult validateCode(org.hl7.fhir.utilities.validation.ValidationOptions options, CodeableConcept code, ValueSet vs) Description copied from interface:IWorkerContext
Validation of a code - consult the terminology infrstructure and/or service to see whether it is known. If known, return a description of it note: always return a result, with either an error or a code description corresponds to 2 terminology service calls: $validate-code and $lookup Note that this doesn't validate binding strength (e.g. is just text allowed?)- Specified by:
validateCode
in interfaceIWorkerContext
- Parameters:
options
- - validation options (required)code
- - CodeableConcept to validatevs
- the applicable valueset (optional)- Returns:
-
validateOnServer
protected IWorkerContext.ValidationResult validateOnServer(ValueSet vs, Parameters pin, org.hl7.fhir.utilities.validation.ValidationOptions options) throws org.hl7.fhir.exceptions.FHIRException - Throws:
org.hl7.fhir.exceptions.FHIRException
-
processValidationResult
-
initTS
- Throws:
IOException
-
clearTSCache
- Throws:
Exception
-
clearTS
-
isCanRunWithoutTerminology
-
setCanRunWithoutTerminology
-
setLogger
- Specified by:
setLogger
in interfaceIWorkerContext
-
getExpansionParameters
Description copied from interface:IWorkerContext
Set the expansion parameters passed through the terminology server when txServer calls are made Note that the Validation Options override these when they are specified on validateCode- Specified by:
getExpansionParameters
in interfaceIWorkerContext
-
setExpansionProfile
Description copied from interface:IWorkerContext
Get the expansion parameters passed through the terminology server when txServer calls are made Note that the Validation Options override these when they are specified on validateCode- Specified by:
setExpansionProfile
in interfaceIWorkerContext
-
isNoTerminologyServer
- Specified by:
isNoTerminologyServer
in interfaceIWorkerContext
-
setNoTerminologyServer
-
getName
-
setName
-
getResourceNamesAsSet
- Specified by:
getResourceNamesAsSet
in interfaceIWorkerContext
- Returns:
- a set of the resource names defined for this version
-
isAllowLoadingDuplicates
-
setAllowLoadingDuplicates
-
fetchResourceWithException
public <T extends Resource> T fetchResourceWithException(Class<T> class_, String uri) throws org.hl7.fhir.exceptions.FHIRException - Specified by:
fetchResourceWithException
in interfaceIWorkerContext
- Throws:
org.hl7.fhir.exceptions.FHIRException
-
fetchResourceWithException
public <T extends Resource> T fetchResourceWithException(String cls, String uri) throws org.hl7.fhir.exceptions.FHIRException - Throws:
org.hl7.fhir.exceptions.FHIRException
-
fetchResourceWithException
public <T extends Resource> T fetchResourceWithException(Class<T> class_, String uri, Resource sourceForReference) throws org.hl7.fhir.exceptions.FHIRException - Specified by:
fetchResourceWithException
in interfaceIWorkerContext
- Throws:
org.hl7.fhir.exceptions.FHIRException
-
fetchResourceWithExceptionByVersion
public <T extends Resource> T fetchResourceWithExceptionByVersion(Class<T> class_, String uri, String version, Resource sourceForReference) throws org.hl7.fhir.exceptions.FHIRException - Throws:
org.hl7.fhir.exceptions.FHIRException
-
getPackageForUrl
- Specified by:
getPackageForUrl
in interfaceIWorkerContext
-
fetchResourceWithExceptionByVersion
public <T extends Resource> T fetchResourceWithExceptionByVersion(String cls, String uri, String version, CanonicalResource source) throws org.hl7.fhir.exceptions.FHIRException - Throws:
org.hl7.fhir.exceptions.FHIRException
-
fetchResourcesByType
Description copied from interface:IWorkerContext
Fetch all the resources of a particular type. if class == (null | Resource | DomainResource | CanonicalResource) return everything- Specified by:
fetchResourcesByType
in interfaceIWorkerContext
- Returns:
-
fetchResourceById
Description copied from interface:IWorkerContext
Variation of fetchResource when you have a string type, and don't need the right class The URI can have one of 3 formats: - a full URL e.g. http://acme.org/fhir/ValueSet/[id] - a relative URL e.g. ValueSet/[id] - a logical id e.g. [id] if type == null, the URI can't be a simple logical id- Specified by:
fetchResourceById
in interfaceIWorkerContext
- Returns:
-
fetchResource
public <T extends Resource> T fetchResource(Class<T> class_, String uri, Resource sourceForReference) Description copied from interface:IWorkerContext
has the same functionality as fetchResource, but passes in information about the source of the reference (this may affect resolution of version)- Specified by:
fetchResource
in interfaceIWorkerContext
- Returns:
-
fetchResource
Description copied from interface:IWorkerContext
Find an identified resource. The most common use of this is to access the the standard conformance resources that are part of the standard - structure definitions, value sets, concept maps, etc. Also, the narrative generator uses this, and may access any kind of resource The URI is called speculatively for things that might exist, so not finding a matching resource, return null, not an error The URI can have one of 3 formats: - a full URL e.g. http://acme.org/fhir/ValueSet/[id] - a relative URL e.g. ValueSet/[id] - a logical id e.g. [id] It's an error if the second form doesn't agree with class_. It's an error if class_ is null for the last form class can be Resource, DomainResource or CanonicalResource, which means resource of all kinds- Specified by:
fetchResource
in interfaceIWorkerContext
- Returns:
-
fetchResource
- Specified by:
fetchResource
in interfaceIWorkerContext
-
hasResource
Description copied from interface:IWorkerContext
find whether a resource is available. Implementations of the interface can assume that if hasResource ruturns true, the resource will usually be fetched subsequently- Specified by:
hasResource
in interfaceIWorkerContext
- Returns:
-
hasResource
-
hasResourceVersion
-
hasResourceVersion
-
translator
- Specified by:
translator
in interfaceIWorkerContext
-
setTranslator
-
reportStatus
-
dropResource
- Throws:
org.hl7.fhir.exceptions.FHIRException
-
dropResource
-
listSupportedSystems
-
totalCount
-
listMaps
-
listStructures
-
getStructure
-
cacheVS
-
getSearchParameter
-
getLogger
- Specified by:
getLogger
in interfaceIWorkerContext
-
fetchTypeDefinition
Description copied from interface:IWorkerContext
This is a short cut for fetchResource(StructureDefinition.class, ...) but it accepts a typename - that is, it resolves based on StructureDefinition.type or StructureDefinition.url- Specified by:
fetchTypeDefinition
in interfaceIWorkerContext
- Returns:
-
isTlogging
-
setTlogging
-
getUcumService
Description copied from interface:IWorkerContext
Get the UCUM service that provides access to units of measure reasoning services This service might not be available- Specified by:
getUcumService
in interfaceIWorkerContext
- Returns:
-
setUcumService
- Specified by:
setUcumService
in interfaceIWorkerContext
-
getLinkForUrl
-
allImplementationGuides
-
getBinaryKeysAsSet
Description copied from interface:IWorkerContext
Returns a set of keys that can be used to get binaries from this context. The binaries come from the loaded packages (mostly the pubpack)- Specified by:
getBinaryKeysAsSet
in interfaceIWorkerContext
- Returns:
- a set of binaries or null
-
hasBinaryKey
Description copied from interface:IWorkerContext
Returns true if this worker context contains a binary for this key.- Specified by:
hasBinaryKey
in interfaceIWorkerContext
- Returns:
- true if binary is available for this key
-
getBinaryForKey
Description copied from interface:IWorkerContext
Returns the binary for the key- Specified by:
getBinaryForKey
in interfaceIWorkerContext
- Returns:
-
finishLoading
-
tail
-
getClientRetryCount
- Specified by:
getClientRetryCount
in interfaceIWorkerContext
-
setClientRetryCount
- Specified by:
setClientRetryCount
in interfaceIWorkerContext
-
getTxClient
-
getCacheId
-
setCacheId
-
getTxCaps
-
setTxCaps
-
clock
- Specified by:
clock
in interfaceIWorkerContext
-
countAllCaches
-
getCodeSystemsUsed
- Specified by:
getCodeSystemsUsed
in interfaceIWorkerContext
-
getLocator
-
setLocator
-
getUserAgent
-
setUserAgent
-
getPackageTracker
- Specified by:
getPackageTracker
in interfaceIWorkerContext
-
setPackageTracker
public IWorkerContext setPackageTracker(IWorkerContextManager.IPackageLoadingTracker packageTracker) - Specified by:
setPackageTracker
in interfaceIWorkerContext
-
getProfiledElementBuilder
public PEBuilder getProfiledElementBuilder(PEBuilder.PEElementPropertiesPolicy elementProps, boolean fixedProps) - Specified by:
getProfiledElementBuilder
in interfaceIWorkerContext
-