class HS.FHIRServer.API.Service extends %ZHSLIB.Context.NamedInstanceBase

Property Inventory

Method Inventory


property ConfigData as HS.FHIRServer.API.ConfigData [ Calculated ];
The Configuration Data controlling this service
property Schema as HS.FHIRServer.Schema [ Calculated ];
The 'schema' node of the SchemaMetadata
property interactions as HS.FHIRServer.API.Interactions [ Calculated ];
The 'interactions' implementation for the service.
property strategy as HS.FHIRServer.API.InteractionsStrategy [ Calculated ];
The 'StorageStrategy' implementation for the service.


classmethod CreateInstance(pKey As %String) as HS.FHIRServer.API.Service [ Language = objectscript ]
@API.Overrideable Factory Method to return an instance of an implementation of this service
abstract method DispatchRequest(pRequest As HS.FHIRServer.API.Data.Request, Output pResponse As HS.FHIRServer.API.Data.Response) [ Language = objectscript ]
@API This is the primary dispatch for FHIR requests. The method does not throw and does not return a status. @Input pRequest The request message being processed. The key fields are Json, Type, Id, Vid, and Compartment which are derived from the REST request. @Output pResponse An object containing the result of the FHIR processing. The key fields are: Json and Status which indicate whether the request was successful, and provides Json for the FHIR resource response. On an error, the Json will most likely be an OperationOutcome resource.
classmethod EnsureInstance(pKey As %String) as %ZHSLIB.Context.NamedInstanceBase [ Language = objectscript ]
Override to accept either a CSP endpoint path or an instance id as input here
abstract method StreamToJSON(pStream As %Stream.Object, pContentCode As %String) as %DynamicObject [ Language = objectscript ]
@API StreamToJSON is a helper method intended for use by callers of the service to convert an input stream to a JSON object. The conversion is performed in accordance with the FHIRVersion supported by the service instance. @Input pStream The data stream to be converted. It may be in XML or JSON format (as specified by pContentCode) from the REST request. @Input pContentCode The content code that describes the format of the input stream. Possible values are the macros:
$$$FHIRContentCodeJSON and $$$FHIRContentCodeXML. @Return A %DynamicObject (JSON) representation of the FHIR resource in the input stream. This method is used by invokers of the FHIRService (such as a RESTHandler or Ensemble Operation) which use this method to create Json field of the request from an input Stream.

Inherited Members

Inherited Properties

Inherited Methods