
Package org.hl7.fhir.dstu2.utils
Interface IHostApplicationServices
public interface IHostApplicationServices
-
Nested Class Summary
Nested Classes -
Method Summary
Modifier and TypeMethodDescriptioncheckFunction
(Object appContext, String functionName, List<ExpressionNode.TypeDetails> parameters) Check the function parameters, and throw an error if they are incorrect, or return the type for the functionboolean
resolveConstant
(FHIRPathEngine engine, Object appContext, String name, org.hl7.fhir.utilities.fhirpath.FHIRPathConstantEvaluationMode mode) A constant reference - e.g. a reference to a name that must be resolved in context.resolveConstantType
(FHIRPathEngine engine, Object appContext, String name, org.hl7.fhir.utilities.fhirpath.FHIRPathConstantEvaluationMode mode) Compile time support for a constant reference - e.g. a reference to a name that must be resolved in context.resolveFunction
(String functionName)
-
Method Details
-
resolveConstant
List<Base> resolveConstant(FHIRPathEngine engine, Object appContext, String name, org.hl7.fhir.utilities.fhirpath.FHIRPathConstantEvaluationMode mode) throws org.hl7.fhir.exceptions.PathEngineException A constant reference - e.g. a reference to a name that must be resolved in context. resolveConstant is invoked under 3 different circumstances, which are reflected in the mode parameter: * an explicit constant of the form %{token}, where the token isn't a known internal constant * every evaluation of any expression to allow the Host Application to decide whether to interpret the expression as a constant even if it is not explicitly a constant * at the start of evaluating an expression if the focus provided by the application when invoking the expression is {} The return value is a List- a collection, though most constants are singleton values note that variables created using defineVariable() in the FHIRPath expressions will not be processed by resolveConstant (or resolveConstantType) - Parameters:
appContext
- - application context passed into the FHIRPath engine when first executedname
- - name reference to resolve. if mode = EXPLICIT, the % will NOT be in the namemode
- - what situation the reference comes from - see the documentation for @FHIRPathConstantEvaluationMode- Returns:
- the value of the constant , or an empty list, though the host application can choose to throw an exception
- Throws:
org.hl7.fhir.exceptions.PathEngineException
-
resolveConstantType
ExpressionNode.TypeDetails resolveConstantType(FHIRPathEngine engine, Object appContext, String name, org.hl7.fhir.utilities.fhirpath.FHIRPathConstantEvaluationMode mode) throws org.hl7.fhir.exceptions.PathEngineException Compile time support for a constant reference - e.g. a reference to a name that must be resolved in context. resolveConstant is invoked under 3 different circumstances, which are reflected in the mode parameter: * an explicit constant of the form %{token}, where the token isn't a known internal constant * every evaluation of any expression to allow the Host Application to decide whether to interpret the expression as a constant even if it is not explicitly a constant * at the start of evaluating an expression if the focus provided by the application when invoking the expression is {} The return value is a TypeDetails - a collection, though most constants are singleton values note that variables created using defineVariable() in the FHIRPath expressions will not be processed by resolveConstant (or resolveConstantType)- Parameters:
appContext
- - application context passed into the FHIRPath engine when first executedname
- - name reference to resolve. if mode = EXPLICIT, the % will NOT be in the namemode
- - what situation the reference comes from - see the documentation for @FHIRPathConstantEvaluationMode- Returns:
- the type of the constant, or null, though the host application can choose to throw an exception
- Throws:
org.hl7.fhir.exceptions.PathEngineException
-
Log
-
resolveFunction
- Parameters:
functionName
-- Returns:
- null if the function is not known
-
checkFunction
ExpressionNode.TypeDetails checkFunction(Object appContext, String functionName, List<ExpressionNode.TypeDetails> parameters) throws org.hl7.fhir.exceptions.PathEngineException Check the function parameters, and throw an error if they are incorrect, or return the type for the function- Parameters:
functionName
-parameters
-- Returns:
- Throws:
org.hl7.fhir.exceptions.PathEngineException
-
executeFunction
- Parameters:
appContext
-functionName
-parameters
-- Returns:
-