Package org.hl7.fhir.r4.context
Class SimpleWorkerContext
- java.lang.Object
-
- org.hl7.fhir.utilities.i18n.I18nBase
-
- org.hl7.fhir.r4.context.BaseWorkerContext
-
- org.hl7.fhir.r4.context.SimpleWorkerContext
-
- All Implemented Interfaces:
ProfileUtilities.ProfileKnowledgeProvider,IWorkerContext
public class SimpleWorkerContext extends BaseWorkerContext implements IWorkerContext, ProfileUtilities.ProfileKnowledgeProvider
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interfaceSimpleWorkerContext.IContextResourceLoaderstatic interfaceSimpleWorkerContext.IValidatorFactory-
Nested classes/interfaces inherited from class org.hl7.fhir.r4.context.BaseWorkerContext
BaseWorkerContext.NullTranslator
-
Nested classes/interfaces inherited from interface org.hl7.fhir.r4.context.IWorkerContext
IWorkerContext.ILoggingService, IWorkerContext.ValidationResult
-
Nested classes/interfaces inherited from interface org.hl7.fhir.r4.conformance.ProfileUtilities.ProfileKnowledgeProvider
ProfileUtilities.ProfileKnowledgeProvider.BindingResolution
-
-
Field Summary
-
Fields inherited from class org.hl7.fhir.r4.context.BaseWorkerContext
expParameters, logger, name, noTerminologyServer, transforms, tsServer, txCache, txClient, txLog, validationCache
-
-
Constructor Summary
Constructors Constructor Description SimpleWorkerContext()SimpleWorkerContext(SimpleWorkerContext other)
-
Method Summary
-
Methods inherited from class org.hl7.fhir.r4.context.BaseWorkerContext
allConformanceResources, cacheResource, cacheVS, copy, doValidateCode, dropResource, dropResource, expandVS, expandVS, expandVS, expandVS, fetchCodeSystem, fetchResourceById, fetchResourceWithException, fetchTypeDefinition, findMapsForSource, getExpandCodesLimit, getExpansionParameters, getLinkForUrl, getLogger, getName, getOverrideVersionNs, getResourceNamesAsSet, getSearchParameter, getStructure, getStructures, getTransform, getUcumService, hasResource, initTS, isAllowLoadingDuplicates, isCanRunWithoutTerminology, isNoTerminologyServer, isTlogging, listMaps, listStructures, listSupportedSystems, listTransforms, oid2Uri, reportStatus, seeMetadataResource, setAllowLoadingDuplicates, setCanRunWithoutTerminology, setExpandCodesLimit, setExpansionProfile, setLogger, setName, setOverrideVersionNs, setTlogging, setTranslator, setUcumService, supportsSystem, tlog, totalCount, translator, validateCode, validateCode, validateCode, validateCode, validateCode, validateCode
-
Methods inherited from class org.hl7.fhir.utilities.i18n.I18nBase
formatMessage, getLocale, isWarnAboutMissingMessages, setLocale, 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.r4.context.IWorkerContext
allConformanceResources, cacheResource, expandVS, expandVS, expandVS, fetchCodeSystem, fetchResourceById, fetchResourceWithException, fetchTypeDefinition, findMapsForSource, formatMessage, getExpansionParameters, getLinkForUrl, getLocale, getLogger, getOverrideVersionNs, getResourceNamesAsSet, getStructures, getTransform, getUcumService, hasResource, isNoTerminologyServer, listTransforms, oid2Uri, setExpansionProfile, setLocale, setLogger, setOverrideVersionNs, setUcumService, setValidationMessageLanguage, supportsSystem, translator, validateCode, validateCode, validateCode, validateCode, validateCode, validateCode
-
Methods inherited from interface org.hl7.fhir.r4.conformance.ProfileUtilities.ProfileKnowledgeProvider
getLinkForUrl
-
-
-
-
Constructor Detail
-
SimpleWorkerContext
public SimpleWorkerContext() throws FileNotFoundException, IOException, org.hl7.fhir.exceptions.FHIRException
- Throws:
FileNotFoundExceptionIOExceptionorg.hl7.fhir.exceptions.FHIRException
-
SimpleWorkerContext
public SimpleWorkerContext(SimpleWorkerContext other) throws FileNotFoundException, IOException, org.hl7.fhir.exceptions.FHIRException
- Throws:
FileNotFoundExceptionIOExceptionorg.hl7.fhir.exceptions.FHIRException
-
-
Method Detail
-
copy
protected void copy(SimpleWorkerContext other)
-
fromPack
public static SimpleWorkerContext fromPack(String path) throws FileNotFoundException, IOException, org.hl7.fhir.exceptions.FHIRException
Load the working context from the validation pack- Parameters:
path- filename of the validation pack- Returns:
- Throws:
IOExceptionFileNotFoundExceptionorg.hl7.fhir.exceptions.FHIRExceptionException
-
fromPackage
public static SimpleWorkerContext fromPackage(org.hl7.fhir.utilities.cache.NpmPackage pi, boolean allowDuplicates) throws FileNotFoundException, IOException, org.hl7.fhir.exceptions.FHIRException
- Throws:
FileNotFoundExceptionIOExceptionorg.hl7.fhir.exceptions.FHIRException
-
fromPackage
public static SimpleWorkerContext fromPackage(org.hl7.fhir.utilities.cache.NpmPackage pi) throws FileNotFoundException, IOException, org.hl7.fhir.exceptions.FHIRException
- Throws:
FileNotFoundExceptionIOExceptionorg.hl7.fhir.exceptions.FHIRException
-
fromPackage
public static SimpleWorkerContext fromPackage(org.hl7.fhir.utilities.cache.NpmPackage pi, SimpleWorkerContext.IContextResourceLoader loader) throws FileNotFoundException, IOException, org.hl7.fhir.exceptions.FHIRException
- Throws:
FileNotFoundExceptionIOExceptionorg.hl7.fhir.exceptions.FHIRException
-
fromPack
public static SimpleWorkerContext fromPack(String path, boolean allowDuplicates) throws FileNotFoundException, IOException, org.hl7.fhir.exceptions.FHIRException
- Throws:
FileNotFoundExceptionIOExceptionorg.hl7.fhir.exceptions.FHIRException
-
fromPack
public static SimpleWorkerContext fromPack(String path, SimpleWorkerContext.IContextResourceLoader loader) throws FileNotFoundException, IOException, org.hl7.fhir.exceptions.FHIRException
- Throws:
FileNotFoundExceptionIOExceptionorg.hl7.fhir.exceptions.FHIRException
-
fromClassPath
public static SimpleWorkerContext fromClassPath() throws IOException, org.hl7.fhir.exceptions.FHIRException
- Throws:
IOExceptionorg.hl7.fhir.exceptions.FHIRException
-
fromClassPath
public static SimpleWorkerContext fromClassPath(String name) throws IOException, org.hl7.fhir.exceptions.FHIRException
- Throws:
IOExceptionorg.hl7.fhir.exceptions.FHIRException
-
fromDefinitions
public static SimpleWorkerContext fromDefinitions(Map<String,byte[]> source) throws IOException, org.hl7.fhir.exceptions.FHIRException
- Throws:
IOExceptionorg.hl7.fhir.exceptions.FHIRException
-
fromDefinitions
public static SimpleWorkerContext fromDefinitions(Map<String,byte[]> source, SimpleWorkerContext.IContextResourceLoader loader) throws FileNotFoundException, IOException, org.hl7.fhir.exceptions.FHIRException
- Throws:
FileNotFoundExceptionIOExceptionorg.hl7.fhir.exceptions.FHIRException
-
connectToTSServer
public String connectToTSServer(TerminologyClient client, String log) throws URISyntaxException, org.hl7.fhir.exceptions.FHIRException
- Throws:
URISyntaxExceptionorg.hl7.fhir.exceptions.FHIRException
-
loadFromFile
public void loadFromFile(InputStream stream, String name, SimpleWorkerContext.IContextResourceLoader loader) throws IOException, org.hl7.fhir.exceptions.FHIRException
- Throws:
IOExceptionorg.hl7.fhir.exceptions.FHIRException
-
loadFromPackage
public void loadFromPackage(org.hl7.fhir.utilities.cache.NpmPackage pi, SimpleWorkerContext.IContextResourceLoader loader, String... types) throws FileNotFoundException, IOException, org.hl7.fhir.exceptions.FHIRException
- Throws:
FileNotFoundExceptionIOExceptionorg.hl7.fhir.exceptions.FHIRException
-
loadFromFile
public void loadFromFile(String file, SimpleWorkerContext.IContextResourceLoader loader) throws IOException, org.hl7.fhir.exceptions.FHIRException
- Throws:
IOExceptionorg.hl7.fhir.exceptions.FHIRException
-
getParser
public IParser getParser(ParserType type)
Description copied from interface:IWorkerContextGet a parser to read/write instances. Use the defined type (will be extended as further types are added, though the only currently anticipate type is RDF) XML/JSON - the standard renderers XHTML - render the narrative only (generate it if necessary)- Specified by:
getParserin interfaceIWorkerContext- Returns:
-
getParser
public IParser getParser(String type)
Description copied from interface:IWorkerContextGet a parser to read/write instances. Determine the type from the stated type. Supported value for type: - the recommended MIME types - variants of application/xml and application/json - _format values xml, json- Specified by:
getParserin interfaceIWorkerContext- Returns:
-
newJsonParser
public IParser newJsonParser()
Description copied from interface:IWorkerContextGet a JSON parser- Specified by:
newJsonParserin interfaceIWorkerContext- Returns:
-
newXmlParser
public IParser newXmlParser()
Description copied from interface:IWorkerContextGet an XML parser- Specified by:
newXmlParserin interfaceIWorkerContext- Returns:
-
getNarrativeGenerator
public INarrativeGenerator getNarrativeGenerator(String prefix, String basePath)
Description copied from interface:IWorkerContextGet a generator that can generate narrative for the instance- Specified by:
getNarrativeGeneratorin interfaceIWorkerContext- Returns:
- a prepared generator
-
newValidator
public IResourceValidator newValidator() throws org.hl7.fhir.exceptions.FHIRException
Description copied from interface:IWorkerContextGet a validator that can check whether a resource is valid- Specified by:
newValidatorin interfaceIWorkerContext- Returns:
- a prepared generator
- Throws:
org.hl7.fhir.exceptions.FHIRException
-
getResourceNames
public List<String> getResourceNames()
- Specified by:
getResourceNamesin interfaceIWorkerContext
-
getTypeNames
public List<String> getTypeNames()
- Specified by:
getTypeNamesin interfaceIWorkerContext
-
getAbbreviation
public String getAbbreviation(String name)
Description copied from interface:IWorkerContextreturns the recommended tla for the type- Specified by:
getAbbreviationin interfaceIWorkerContext- Returns:
-
isDatatype
public boolean isDatatype(String typeSimple)
- Specified by:
isDatatypein interfaceProfileUtilities.ProfileKnowledgeProvider
-
isResource
public boolean isResource(String t)
- Specified by:
isResourcein interfaceProfileUtilities.ProfileKnowledgeProvider
-
hasLinkFor
public boolean hasLinkFor(String typeSimple)
- Specified by:
hasLinkForin interfaceProfileUtilities.ProfileKnowledgeProvider
-
getLinkFor
public String getLinkFor(String corePath, String typeSimple)
- Specified by:
getLinkForin interfaceProfileUtilities.ProfileKnowledgeProvider
-
resolveBinding
public ProfileUtilities.ProfileKnowledgeProvider.BindingResolution resolveBinding(StructureDefinition profile, ElementDefinition.ElementDefinitionBindingComponent binding, String path)
- Specified by:
resolveBindingin interfaceProfileUtilities.ProfileKnowledgeProvider
-
resolveBinding
public ProfileUtilities.ProfileKnowledgeProvider.BindingResolution resolveBinding(StructureDefinition profile, String url, String path)
- Specified by:
resolveBindingin interfaceProfileUtilities.ProfileKnowledgeProvider
-
getLinkForProfile
public String getLinkForProfile(StructureDefinition profile, String url)
- Specified by:
getLinkForProfilein interfaceProfileUtilities.ProfileKnowledgeProvider
-
getQuestionnaire
public Questionnaire getQuestionnaire()
-
setQuestionnaire
public void setQuestionnaire(Questionnaire questionnaire)
-
typeTails
public Set<String> typeTails()
- Specified by:
typeTailsin interfaceIWorkerContext
-
allStructures
public List<StructureDefinition> allStructures()
- Specified by:
allStructuresin interfaceIWorkerContext
-
loadBinariesFromFolder
public void loadBinariesFromFolder(String folder) throws FileNotFoundException, Exception
- Throws:
FileNotFoundExceptionException
-
loadBinariesFromFolder
public void loadBinariesFromFolder(org.hl7.fhir.utilities.cache.NpmPackage pi) throws FileNotFoundException, Exception
- Throws:
FileNotFoundExceptionException
-
loadFromFolder
public void loadFromFolder(String folder) throws FileNotFoundException, Exception
- Throws:
FileNotFoundExceptionException
-
getBinaries
public Map<String,byte[]> getBinaries()
-
prependLinks
public boolean prependLinks()
- Specified by:
prependLinksin interfaceProfileUtilities.ProfileKnowledgeProvider
-
hasCache
public boolean hasCache()
- Specified by:
hasCachein interfaceIWorkerContext
-
getVersion
public String getVersion()
Description copied from interface:IWorkerContextGet the versions of the definitions loaded in context- Specified by:
getVersionin interfaceIWorkerContext- Returns:
-
findTransformsforSource
public List<StructureMap> findTransformsforSource(String url)
-
getValidatorFactory
public SimpleWorkerContext.IValidatorFactory getValidatorFactory()
-
setValidatorFactory
public void setValidatorFactory(SimpleWorkerContext.IValidatorFactory validatorFactory)
-
fetchResource
public <T extends Resource> T fetchResource(Class<T> class_, String uri)
Description copied from interface:IWorkerContextFind 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 resouce, 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- Specified by:
fetchResourcein interfaceIWorkerContext- Overrides:
fetchResourcein classBaseWorkerContext- Returns:
-
generateSnapshot
public void generateSnapshot(StructureDefinition p) throws org.hl7.fhir.exceptions.DefinitionException, org.hl7.fhir.exceptions.FHIRException
- Specified by:
generateSnapshotin interfaceIWorkerContext- Throws:
org.hl7.fhir.exceptions.DefinitionExceptionorg.hl7.fhir.exceptions.FHIRException
-
isIgnoreProfileErrors
public boolean isIgnoreProfileErrors()
-
setIgnoreProfileErrors
public void setIgnoreProfileErrors(boolean ignoreProfileErrors)
-
listMapUrls
public String listMapUrls()
-
-