Package org.hl7.fhir.dstu3.context
Class SimpleWorkerContext
- java.lang.Object
-
- org.hl7.fhir.utilities.i18n.I18nBase
-
- org.hl7.fhir.dstu3.context.BaseWorkerContext
-
- org.hl7.fhir.dstu3.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 interface org.hl7.fhir.dstu3.context.IWorkerContext
IWorkerContext.ILoggingService, IWorkerContext.ValidationResult
-
Nested classes/interfaces inherited from interface org.hl7.fhir.dstu3.conformance.ProfileUtilities.ProfileKnowledgeProvider
ProfileUtilities.ProfileKnowledgeProvider.BindingResolution
-
-
Field Summary
-
Fields inherited from class org.hl7.fhir.dstu3.context.BaseWorkerContext
allowLoadingDuplicates, cache, cacheValidation, codeSystems, dataElements, expansionCache, expProfile, extensionDefinitions, logger, maps, name, nonSupportedCodeSystems, noTerminologyServer, operations, profiles, questionnaires, searchParameters, transforms, tsServer, txServer, validationCache, validationCachePath, valueSets
-
-
Constructor Summary
Constructors Constructor Description SimpleWorkerContext()
-
Method Summary
-
Methods inherited from class org.hl7.fhir.dstu3.context.BaseWorkerContext
cacheResource, dropCodeSystem, dropExtensionDefinition, dropProfile, dropResource, dropValueSet, expandOnServer, expandVS, expandVS, fetchCodeSystem, fetchTypeDefinition, findMapsForSource, getCodeSystems, getDataElements, getExpandCodesLimit, getExpansionProfile, getExtensionDefinitions, getMaps, getName, getNonSupportedCodeSystems, getOperations, getProfiles, getQuestionnaires, getResourceNamesAsSet, getValueSets, initTS, isAllowLoadingDuplicates, isCanRunWithoutTerminology, isNoTerminologyServer, loadValidationCache, reportStatus, seeCodeSystem, seeExtensionDefinition, seeOperation, seeQuestionnaire, setAllowLoadingDuplicates, setCanRunWithoutTerminology, setExpandCodesLimit, setExpansionProfile, setLogger, setName, supportsSystem, validateCode, validateCode, validateCode, validateCode, validateCode
-
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.dstu3.context.IWorkerContext
expandVS, expandVS, fetchCodeSystem, fetchTypeDefinition, findMapsForSource, formatMessage, getExpansionProfile, getLocale, getResourceNamesAsSet, isNoTerminologyServer, setExpansionProfile, setLocale, setLogger, setValidationMessageLanguage, supportsSystem, validateCode, validateCode, validateCode, validateCode, validateCode
-
-
-
-
Constructor Detail
-
SimpleWorkerContext
public SimpleWorkerContext()
-
-
Method Detail
-
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.npm.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.npm.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.npm.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(String url, String userAgent) throws URISyntaxException
- Throws:
URISyntaxException
-
loadFromFile
public void loadFromFile(InputStream stream, String name, SimpleWorkerContext.IContextResourceLoader loader) throws IOException, org.hl7.fhir.exceptions.FHIRException
- Throws:
IOExceptionorg.hl7.fhir.exceptions.FHIRException
-
seeResource
public void seeResource(String url, Resource r) throws org.hl7.fhir.exceptions.FHIRException
- Throws:
org.hl7.fhir.exceptions.FHIRException
-
seeValueSet
public void seeValueSet(String url, ValueSet vs) throws org.hl7.fhir.exceptions.DefinitionException
- Overrides:
seeValueSetin classBaseWorkerContext- Throws:
org.hl7.fhir.exceptions.DefinitionException
-
seeProfile
public void seeProfile(String url, StructureDefinition p) throws org.hl7.fhir.exceptions.FHIRException
- Overrides:
seeProfilein classBaseWorkerContext- Throws:
org.hl7.fhir.exceptions.FHIRException
-
loadFromPackage
public void loadFromPackage(org.hl7.fhir.utilities.npm.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:
-
hasResource
public <T extends Resource> boolean hasResource(Class<T> class_, String uri)
Description copied from interface:IWorkerContextfind 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:
hasResourcein 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
-
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- Returns:
-
fetchResourceWithException
public <T extends Resource> T fetchResourceWithException(Class<T> class_, String uri) throws org.hl7.fhir.exceptions.FHIRException
- Specified by:
fetchResourceWithExceptionin interfaceIWorkerContext- Throws:
org.hl7.fhir.exceptions.FHIRException
-
totalCount
public int totalCount()
-
setCache
public void setCache(ValueSetExpansionCache cache)
-
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
-
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
-
allConformanceResources
public List<MetadataResource> allConformanceResources()
- Specified by:
allConformanceResourcesin interfaceIWorkerContext
-
oid2Uri
public String oid2Uri(String oid)
- Specified by:
oid2Uriin interfaceIWorkerContext
-
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:
-
getTransforms
public Map<String,StructureMap> getTransforms()
-
findTransformsforSource
public List<StructureMap> findTransformsforSource(String url)
-
getValidatorFactory
public SimpleWorkerContext.IValidatorFactory getValidatorFactory()
-
setValidatorFactory
public void setValidatorFactory(SimpleWorkerContext.IValidatorFactory validatorFactory)
-
-