Skip to main content

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

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.
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:
{
  "$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:
{
  "$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.
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.
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.
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:
{
   "patient":{
     "name":"patient",
     "value":"123",
     "type":"id"
   },
   "name":{
     "name":"name",
     "value":"$current-problems",
     "type":"code"
   }
}

Subclasses

FeedbackOpens in a new tab