HS.FHIRServer.Util.ReferenceVisitor
class HS.FHIRServer.Util.ReferenceVisitor extends %Library.RegisteredObject
Method Inventory
Parameters
parameter ApprovedAttachmentContentTypes;
List of Attachment.contentType values to be checked when permitting
an Attachment.url value to be added to the references collection.
Methods
classmethod AddBackReference(ByRef context, toId As %String, fromId As %String, fromIsShared As %Boolean)
Returns a %List of all resources referenced by the specified resource Id as determined by
the processing of "VisitAll"
classmethod VisitAll(pRsrcObj As %DynamicObject, ByRef context)
@API
VisitAll traverses all properties of type Reference, and optionally of type Attachment, within an individual specified FHIR resource. The resource input is not intended to be a Bundle of resources.
This method builds a set of all reference values in the resource. Optionally, the caller may specify a method to be called when each reference is visited, allowing the caller to perform custom processing on that reference.
This method does not report or error upon resource validation issues. The caller of this API is expected to do its own validation before or after it calls VisitAll(). Because of that, this API ignores malformed FHIR.
@Argument pRsrcObj %DynamicObject representation of an individual FHIR resource.
@Argument context Input context array:
context("schema"): Schema object for the input object.
context("attachmentUrls"): 0 or undefined = Do not include Attachment urls, 1 = Include Attachment urls.
context("callbackInstance"): [optional] Instance object implementing the callbackMethod
for Reference objects (used when callbackMethod is a Method).
context("callbackClass"): [optional] Classname used when callbackMethod is a ClassMethod.
context("callbackMethod"): Method name to call with each Reference object (must be accompanied
with either "callbackClass" or "callbackInstance").
Required context callback signature for Reference objects is:
methodname(context, referenceObject As %DynamicObject) context("callbackInstanceAttachment"): [optional] Instance object implementing the callbackMethod
for Attachment objects (used when callbackMethodAttachment is a Method).
context("callbackClassAttachment"): [optional] Classname used when callbackMethodAttachment is a ClassMethod.
context("callbackMethodAttachment"): Method name to call with each Attachment object (must be accompanied
with either "callbackClassAttachment" or "callbackInstanceAttachment").
Required context callback signature for Attachment objects is:
methodname(context, attachmentObject As %DynamicObject) context("_va"): Internal Bookkeeping for the VisitAll method.
All other context keys are available to the caller (and callback) to maintain.
VisitAll traverses all properties of type Reference, and optionally of type Attachment, within an individual specified FHIR resource. The resource input is not intended to be a Bundle of resources.
This method builds a set of all reference values in the resource. Optionally, the caller may specify a method to be called when each reference is visited, allowing the caller to perform custom processing on that reference.
This method does not report or error upon resource validation issues. The caller of this API is expected to do its own validation before or after it calls VisitAll(). Because of that, this API ignores malformed FHIR.
@Argument pRsrcObj %DynamicObject representation of an individual FHIR resource.
@Argument context Input context array:
methodname(context, referenceObject As %DynamicObject)
methodname(context, attachmentObject As %DynamicObject)
classmethod adjustCrossReference(schema As HS.FHIRServer.Schema, ByRef visitContext)
Inherited Members
Inherited Methods
- %AddToSaveSet()
- %ClassIsLatestVersion()
- %ClassName()
- %ConstructClone()
- %DispatchClassMethod()
- %DispatchGetModified()
- %DispatchGetProperty()
- %DispatchMethod()
- %DispatchSetModified()
- %DispatchSetMultidimProperty()
- %DispatchSetProperty()
- %Extends()
- %GetParameter()
- %IsA()
- %IsModified()
- %New()
- %NormalizeObject()
- %ObjectModified()
- %OriginalNamespace()
- %PackageName()
- %RemoveFromSaveSet()
- %SerializeObject()
- %SetModified()
- %ValidateObject()