HS.BulkFHIR.API.Data.FetchAdapterConfig
class HS.BulkFHIR.API.Data.FetchAdapterConfig extends HS.BulkFHIR.API.Data.AdapterConfig
base class for all fetch adapter configs they all need to have the client_auth properties, endpoint_url etc.Property Inventory
Method Inventory
Properties
property client_auth_adapter as %String (MAXLEN = 220) [ Required ];
Name of the authorizing adapter that will enable the fetch adapter to communicate with the FHIR server
Property methods: client_auth_adapterDisplayToLogical(), client_auth_adapterGet(), client_auth_adapterIsValid(), client_auth_adapterLogicalToDisplay(), client_auth_adapterLogicalToOdbc(), client_auth_adapterNormalize(), client_auth_adapterSet()
property client_auth_config as HS.BulkFHIR.ClientAuth.ConfigBase (%JSONINCLUDE = "OUTPUTONLY") [ Required ];
Accompanying configuration object for the client auth adapter.
Property methods: client_auth_configGet(), client_auth_configGetSwizzled(), client_auth_configIsValid(), client_auth_configNewObject(), client_auth_configSet()
property endpoint_url as %String (MAXLEN = 250) [ Required ];
url of the fhir server serving the $export operations.
Eg. "https://domain/app/FHIR/r4"
Property methods: endpoint_urlDisplayToLogical(), endpoint_urlGet(), endpoint_urlIsValid(), endpoint_urlLogicalToDisplay(), endpoint_urlLogicalToOdbc(), endpoint_urlNormalize(), endpoint_urlSet()
property group_export as %Boolean [ InitialExpression = 1 , Required ];
Whether the Group export operation (/Group//$export)
is supported
Property methods: group_exportDisplayToLogical(), group_exportGet(), group_exportIsValid(), group_exportLogicalToDisplay(), group_exportNormalize(), group_exportSet()
property patient_export as %Boolean [ InitialExpression = 1 , Required ];
Whether the Patient export operation (/Patient/$export)
is supported
Property methods: patient_exportDisplayToLogical(), patient_exportGet(), patient_exportIsValid(), patient_exportLogicalToDisplay(), patient_exportNormalize(), patient_exportSet()
property system_export as %Boolean [ InitialExpression = 1 , Required ];
Whether the system level export operation (/$export)
is supported
Property methods: system_exportDisplayToLogical(), system_exportGet(), system_exportIsValid(), system_exportLogicalToDisplay(), system_exportNormalize(), system_exportSet()
Methods
method %OnValidateObject() as %Status
Inherited description: This callback method is invoked by the %ValidateObject() method to
provide notification that the current object is being validated.
If this method returns an error then %ValidateObject() will fail.
classmethod FromJson(json) as HS.BulkFHIR.API.Data.AdapterConfig
@API
Converts a json string or %DynamicObject into an instance of
the config object
classmethod GUISettings() as %DynamicArray
Inherited description: Optional custom settings for the GUI, i.e. how the end user will interact with the config class and its properties
Each property setting may be customized according to the following schema:
{
name: string (must match precisely name of property in the class)
ignore: boolean (if true, no other property need be set - this property will be ignored by GUI and inaccessible to user)
display_name: string (name of the field shown to user)
Defaults to prettified version of snake case property name
description: string (description of the field shown to the user in a hint)
Defaults to the property's in-line comment in code
is_advanced: boolean (whether the field should be nested in a collapsible "advanced setting" group)
If true and the property is required, the property SHOULD have a default, or else results in a poor UX
input_type: string (the type of field shown to user) with following value list:
"input", "select", "radio", "binary-checkbox", "number".
If "select" or "radio", then options must be provided either via literal property VALUELIST or the "presetOptions" GUI setting (see below).
If binary-checkbox, the property must be typed %Boolean.
Defaults according to the property type as follow:
If %Integer or %Double, then "number"
If %Boolean, then "binary-checkbox"
If VALUELIST is provided, then "select"
If the type is a different config class, then special "nested-setting", and the GUI setting for this property will be defined in the "nested_setting" property (see below).
Else, "input"
preset_options: string (preset list of options available) with following value list (enforced by parameter ValidPresetOptions)
"credentials", list of credentials configured in the BFC namespace
"client_auth_oauth_clients", list of non-resource OAuth clients as available in the instance. If this preset option is chosen, the UI will show a selectable table of OAuth clients.
"oauth_clients", list of all OAuth clients as available in the instance. If this preset option is chosen, the UI will show a selectable table of OAuth clients.
"auth_adapters", list of auth adapters available in the BFC namespace
"fetch_adapters", list of fetch adapters available in the BFC namespace
"client_auth_adapters", list of client auth adapters available in the BFC namespace
"storage_adapters", list of storage adapters available in the BFC namespace
"tls_configurations", list of TLS configurations
"local_fhir_endpoints", list of FHIR Server endpoints local to the instance
"fhir_resources", list of applicable FHIR resource types - only applicable if sister property "endpoint_url" exists (as is in HS.BulkFHIR.API.Data.FetchAdapterConfig or subclass, since it relies on discovering what resources the FHIR server supports)
default: any (defaults to InitialExpression or %onNew override)
required: boolean (whether the property is required, defaults to whether the property is marked as required or not in the class definition)
/// The following properties are calculated based on the property and not customizable
collection: boolean (calculated from whether the element is a list)
nested_setting: array of nested instances of this schema (applies when the property type is a nested config class and thus inputType is "nested-setting")
type: string (property data type)
options: { name: string, value: string } (derived from VALUELIST/DISPLAYLIST literal properties, not evaluated if preset_options is defined)
max_length: number (derived from MAXLEN literal property)
}
Inherited Members
Inherited Methods
- %AddToSaveSet()
- %ClassIsLatestVersion()
- %ClassName()
- %ConstructClone()
- %DispatchClassMethod()
- %DispatchGetModified()
- %DispatchGetProperty()
- %DispatchMethod()
- %DispatchSetModified()
- %DispatchSetMultidimProperty()
- %DispatchSetProperty()
- %Extends()
- %GetParameter()
- %IsA()
- %IsModified()
- %JSONExport()
- %JSONExportToStream()
- %JSONExportToString()
- %JSONImport()
- %JSONNew()
- %New()
- %NormalizeObject()
- %ObjectModified()
- %OriginalNamespace()
- %PackageName()
- %RemoveFromSaveSet()
- %SerializeObject()
- %SetModified()
- %ValidateObject()
- ExtractRelevantLiteralPropertiesForGUISetting()
- GenerateGUISettings()