HS.FHIRServer.Storage.BuiltIn.ListCommon
class HS.FHIRServer.Storage.BuiltIn.ListCommon
Common methods for HS.FHIRServer.Storage.BuiltIn.Find and HS.FHIRServer.Storage.BuiltIn.UpdateFunctional.Method Inventory
- FindListResource()
- GetListConfig()
- GetListConfigs()
- GetParameterCount()
- GetParameterValue()
- ValidateListConfig()
- ValidateRequestInput()
Methods
classmethod FindListResource(pService As HS.FHIRServer.API.Service, pPatient As %String, pListName As %String, pListConfig As %DynamicObject) as %DynamicObject
@API
Return one FHIR List resource object, or empty string, based on the $find inputs.
@Argument pService Instance of FHIRServer Service class.
@Argument pPatient Represents the $find "patient" input parameter, which a resource id (e.g., "123").
@Argument pListName Represents the $find "name" input parameter (e.g., "$current-problems").
@Argument pListConfig %DynamicObject representation of Functional List Configuration for pListName.
@Return FHIR resource as %DynamicObject.
Return one FHIR List resource object, or empty string, based on the $find inputs.
@Argument pService Instance of FHIRServer Service class.
@Argument pPatient Represents the $find "patient" input parameter, which a resource id (e.g., "123").
@Argument pListName Represents the $find "name" input parameter (e.g., "$current-problems").
@Argument pListConfig %DynamicObject representation of Functional List Configuration for pListName.
@Return FHIR resource as %DynamicObject.
classmethod GetListConfig(pListName As %String, pOperationName As %String, pStrategy As HS.FHIRServer.API.InteractionsStrategy) as %DynamicObject
@API
Get the Functional List configuration for the specified list name. This method Throws upon validation error.
@Argument pListName Functional list name (e.g., "$current-problems").
@Argument pOperationName Name of operation currently being processed (e.g., "$find").
@Argument pStrategy Instance of FHIRServer Interactions Strategy class.
@Return %DynamicObject of the configuration. Example:
Get the Functional List configuration for the specified list name. This method Throws upon validation error.
@Argument pListName Functional list name (e.g., "$current-problems").
@Argument pOperationName Name of operation currently being processed (e.g., "$find").
@Argument pStrategy Instance of FHIRServer Interactions Strategy class.
@Return %DynamicObject of the configuration. Example:
{ "$current-problems":{ "list_name":"$current-problems", "subject_search_param":"patient", "subject_resource_Type":"Patient" } }
classmethod GetListConfigs(pStrategy As HS.FHIRServer.API.InteractionsStrategy) as %DynamicObject
@API
Get the Functional List configurations from their present storage, validate them, and return them as %DynamicObject. This method Throws upon validation error.
@Argument pStrategy Instance of FHIRServer Interactions Strategy class.
@Return %DynamicObject of the configurations. Example:
Get the Functional List configurations from their present storage, validate them, and return them as %DynamicObject. This method Throws upon validation error.
@Argument pStrategy Instance of FHIRServer Interactions Strategy class.
@Return %DynamicObject of the configurations. Example:
{ "$current-problems":{ "list_name":"$current-problems", "subject_search_param":"patient", "subject_resource_Type":"Patient" } "$current-medications":{ "list_name":"$current-medications", "subject_search_param":"patient", "subject_resource_Type":"Patient" } }
classmethod GetParameterCount(pInputParams As %DynamicObject, pParamName As %String) as %Integer
@API
Return the number of instances of the specified parameter in the input parameters object.
@Argument pInputParams %DynamicObject of the input parameters and values, organized by parameter name.
@Argument pParamName Parameter name.
Return the number of instances of the specified parameter in the input parameters object.
@Argument pInputParams %DynamicObject of the input parameters and values, organized by parameter name.
@Argument pParamName Parameter name.
classmethod GetParameterValue(pInputParams As %DynamicObject, pParamName As %String, pPosition As %Integer = 1, ByRef pModifier As %String) as %DynamicObject
@API
Return the parameter value at the specified position from the input parameters object.
@Argument pInputParams %DynamicObject of the input parameters and values, organized by parameter name.
@Argument pParamName Parameter name.
@Argument pPosition 1-based (not 0-based) position of parameter instance for the specified name.
@Output pModifier Parameter modifier.
Return the parameter value at the specified position from the input parameters object.
@Argument pInputParams %DynamicObject of the input parameters and values, organized by parameter name.
@Argument pParamName Parameter name.
@Argument pPosition 1-based (not 0-based) position of parameter instance for the specified name.
@Output pModifier Parameter modifier.
classmethod ValidateListConfig(pSchema As HS.FHIRMeta.API, pName As %String, pSubjectParam As %String, pSubjectRsrcType As %String, pSC As %Status = $$$OK)
@API
Validate the values from a single Functional List Configuration. This method gathers validation errors into the ByRef pSC status parameter.
@Argument pSchema FHIRMeta API object for an FHIR server's FHIR schema.
@Argument pName Configuration name.
@Argument pSubjectParam FHIR List search parameter to use for determining Functional List subject.
@Argument pSubjectRsrcType FHIR resource type of the subject for this Functional List.
@ByRef pSC %Status object for gathering validation failures.
Validate the values from a single Functional List Configuration. This method gathers validation errors into the ByRef pSC status parameter.
@Argument pSchema FHIRMeta API object for an FHIR server's FHIR schema.
@Argument pName Configuration name.
@Argument pSubjectParam FHIR List search parameter to use for determining Functional List subject.
@Argument pSubjectRsrcType FHIR resource type of the subject for this Functional List.
@ByRef pSC %Status object for gathering validation failures.
classmethod ValidateRequestInput(pService As HS.FHIRServer.API.Service, pRequest As HS.FHIRServer.API.Data.Request, pOperationDefinition As %DynamicObject, Output pInputParamsByName As %DynamicObject)
This method validates FHIR operation request input per the metadata in
pOperationDefinition. A %DynamicObject of the input parameter values
is returned upon success. This method Throws upon validation error.
@Argument pService Instance of FHIRServer Service class.
@Argument pRequest Current FHIR request object.
@Argument pOperationDefiniton %DynamicObject of OperationDefinition metadata that defines the request input. @Output pInputParamsByName %DynamicObject of the operation request input parameter values, organized by parameter name. Example:
@Argument pService Instance of FHIRServer Service class.
@Argument pRequest Current FHIR request object.
@Argument pOperationDefiniton %DynamicObject of OperationDefinition metadata that defines the request input. @Output pInputParamsByName %DynamicObject of the operation request input parameter values, organized by parameter name. Example:
{ "patient":{ "name":"patient", "value":"123", "type":"id" }, "name":{ "name":"name", "value":"$current-problems", "type":"code" } }