Home > Class Reference > HSLIB namespace > HS.IHE.DSUB.NotificationBroker.Operations

HS.IHE.DSUB.NotificationBroker.Operations

class HS.IHE.DSUB.NotificationBroker.Operations extends HS.HC.Util.Trace.Helper, Ens.BusinessOperation, HS.Util.XSLTTransformer, HS.Util.SOAPClient.Operations

Property Inventory (Including Private)

Method Inventory (Including Private)

Parameters

parameter DOMAIN = HS;
Domain used for localization.
parameter HSDEPLOY = 1;
parameter SETTINGS = NotificationBrokerServiceName:Basic,DefaultSSLConfig:Basic,MaximumDuration:Basic,ValidatePatientID:Basic,ValidateAffinityDomain:Basic,PDQConsumer:Basic,TransformSubscribe,TransformPublishToMessage,-TransformSubscribeNotification,TransformSubscribeResponse,TransformDocumentToNotification,-NotificationOperation,-TransformToMetadata,TransformToMessage,-XSLTDirectory,-XSLTCallbackHandlerClass,-XSLTErrorHandlerClass,XSLTCacheMode:Basic,-ProducerReference:Basic,DisableSSLCheckServerIdentity:Dev;
Inherited description: List of properties can be set as settings in the configuration file format is a comma separated list of property names

Properties (Including Private)

property DefaultSSLConfig as %String [ InitialExpression = "Client" ];
If inbound url is https automatic SSL configuration assigned to subscription registry entry
Property methods: DefaultSSLConfigDisplayToLogical(), DefaultSSLConfigGet(), DefaultSSLConfigIsValid(), DefaultSSLConfigLogicalToDisplay(), DefaultSSLConfigLogicalToOdbc(), DefaultSSLConfigNormalize(), DefaultSSLConfigSet()
property Errors as HS.Types.IHE.Errors;
Property methods: ErrorsGet(), ErrorsGetObject(), ErrorsGetObjectId(), ErrorsGetSwizzled(), ErrorsIsEmpty(), ErrorsIsValid(), ErrorsNewObject(), ErrorsSet(), ErrorsSetObject(), ErrorsSetObjectId(), ErrorsUnSwizzle()
property FilterItems as %String [ MultiDimensional ];
Property methods: FilterItemsDisplayToLogical(), FilterItemsGet(), FilterItemsIsValid(), FilterItemsLogicalToDisplay(), FilterItemsLogicalToOdbc(), FilterItemsNormalize(), FilterItemsSet()
property HomeCommunityOID as %String;
Property methods: HomeCommunityOIDDisplayToLogical(), HomeCommunityOIDGet(), HomeCommunityOIDIsValid(), HomeCommunityOIDLogicalToDisplay(), HomeCommunityOIDLogicalToOdbc(), HomeCommunityOIDNormalize(), HomeCommunityOIDSet()
property MaximumDuration as %String;
Not required, but if specified this is the maximum duration, subscriptions specifying longer durations will be limited to this value. PnYnMnDTnHnMnS P1Y2M3DT4H5M6S would be 1 year, 2 months, 3 days, 4 hours, 5 minutes, 6 seconds from now
Property methods: MaximumDurationDisplayToLogical(), MaximumDurationGet(), MaximumDurationIsValid(), MaximumDurationLogicalToDisplay(), MaximumDurationLogicalToOdbc(), MaximumDurationNormalize(), MaximumDurationSet()
property NotificationBrokerService as HS.Registry.Service.SOAP;
Temporary entry for the NotificationBroker Service registry entry (look it up once), if using a bus, this would be the service name of the BUS endpoint
Property methods: NotificationBrokerServiceGet(), NotificationBrokerServiceGetObject(), NotificationBrokerServiceGetObjectId(), NotificationBrokerServiceGetSwizzled(), NotificationBrokerServiceIsValid(), NotificationBrokerServiceNameDisplayToLogical(), NotificationBrokerServiceNameGet(), NotificationBrokerServiceNameIsValid(), NotificationBrokerServiceNameLogicalToDisplay(), NotificationBrokerServiceNameLogicalToOdbc(), NotificationBrokerServiceNameNormalize(), NotificationBrokerServiceNameSet(), NotificationBrokerServiceNewObject(), NotificationBrokerServiceSet(), NotificationBrokerServiceSetObject(), NotificationBrokerServiceSetObjectId(), NotificationBrokerServiceUnSwizzle()
property NotificationBrokerServiceName as %String [ InitialExpression = "DSUB.NotificationBroker" ];
Service Registry entry for the HS.IHE.DSUB.NotificationBroker.Service.cls, to be used for producing cancellation address
Property methods: NotificationBrokerServiceNameDisplayToLogical(), NotificationBrokerServiceNameGet(), NotificationBrokerServiceNameIsValid(), NotificationBrokerServiceNameLogicalToDisplay(), NotificationBrokerServiceNameLogicalToOdbc(), NotificationBrokerServiceNameNormalize(), NotificationBrokerServiceNameSet()
property NotificationOperation as Ens.DataType.ConfigName [ InitialExpression = "HS.IHE.DSUB.Notification.Operations" ];
Operations class to send message (common operation providing ServiceName / soap Action)
Property methods: NotificationOperationDisplayToLogical(), NotificationOperationGet(), NotificationOperationIsValid(), NotificationOperationLogicalToDisplay(), NotificationOperationLogicalToOdbc(), NotificationOperationNormalize(), NotificationOperationParseConfigNameSpec(), NotificationOperationSet()
property PDQConsumer as Ens.DataType.ConfigName [ InitialExpression = "HS.IHE.PDQv3.Consumer.Operations" ];
Used to validate the PatientID provided in the Subscription
Property methods: PDQConsumerDisplayToLogical(), PDQConsumerGet(), PDQConsumerIsValid(), PDQConsumerLogicalToDisplay(), PDQConsumerLogicalToOdbc(), PDQConsumerNormalize(), PDQConsumerParseConfigNameSpec(), PDQConsumerSet()
property ProducerReference as %String (MAXLEN = 512) [ InitialExpression = "https://"_$$$HSNetworkHostName_"/csp/connect/HS.IHE.XDSb.Registry.Services.cls" ];
**** Deprecated due to CP-ITI-888-04 - now use SubmissionSet sourceid ****
Property methods: ProducerReferenceDisplayToLogical(), ProducerReferenceGet(), ProducerReferenceIsValid(), ProducerReferenceLogicalToDisplay(), ProducerReferenceLogicalToOdbc(), ProducerReferenceNormalize(), ProducerReferenceSet()
property QueryParameters as %String [ MultiDimensional ];
Property methods: QueryParametersDisplayToLogical(), QueryParametersGet(), QueryParametersIsValid(), QueryParametersLogicalToDisplay(), QueryParametersLogicalToOdbc(), QueryParametersNormalize(), QueryParametersSet()
property TransformDocumentToNotification as %String (MAXLEN = 512) [ InitialExpression = "IHE/DSUB/Version1/BrokerCreateNotification.xsl" ];
Transform into a notification
Property methods: TransformDocumentToNotificationDisplayToLogical(), TransformDocumentToNotificationGet(), TransformDocumentToNotificationIsValid(), TransformDocumentToNotificationLogicalToDisplay(), TransformDocumentToNotificationLogicalToOdbc(), TransformDocumentToNotificationNormalize(), TransformDocumentToNotificationSet()
property TransformPublishToMessage as %String (MAXLEN = 512) [ InitialExpression = "IHE/DSUB/Version1/BrokerNotificationToMetadataObject.xsl" ];
Transform NotificationMessage - stripping notification header information
Property methods: TransformPublishToMessageDisplayToLogical(), TransformPublishToMessageGet(), TransformPublishToMessageIsValid(), TransformPublishToMessageLogicalToDisplay(), TransformPublishToMessageLogicalToOdbc(), TransformPublishToMessageNormalize(), TransformPublishToMessageSet()
property TransformSubscribe as %String (MAXLEN = 512) [ InitialExpression = "IHE/DSUB/Version1/BrokerSubscribeRequest.xsl" ];
Transform Subscription Request into HS.IHE.DSUB.NotificationBroker.Subscription
Property methods: TransformSubscribeDisplayToLogical(), TransformSubscribeGet(), TransformSubscribeIsValid(), TransformSubscribeLogicalToDisplay(), TransformSubscribeLogicalToOdbc(), TransformSubscribeNormalize(), TransformSubscribeResponseDisplayToLogical(), TransformSubscribeResponseGet(), TransformSubscribeResponseIsValid(), TransformSubscribeResponseLogicalToDisplay(), TransformSubscribeResponseLogicalToOdbc(), TransformSubscribeResponseNormalize(), TransformSubscribeResponseSet(), TransformSubscribeSet()
property TransformSubscribeResponse as %String (MAXLEN = 512) [ InitialExpression = "IHE/DSUB/Version1/BrokerSubscribeResponse.xsl" ];
XSL to create a subscription response
Property methods: TransformSubscribeResponseDisplayToLogical(), TransformSubscribeResponseGet(), TransformSubscribeResponseIsValid(), TransformSubscribeResponseLogicalToDisplay(), TransformSubscribeResponseLogicalToOdbc(), TransformSubscribeResponseNormalize(), TransformSubscribeResponseSet()
property TransformToMessage as %String [ InitialExpression = "IHE/XDSb/Version1/MetadataObject-to-Message.xsl" ];
The transform that produces XDSb messages from metadata
Property methods: TransformToMessageDisplayToLogical(), TransformToMessageGet(), TransformToMessageIsValid(), TransformToMessageLogicalToDisplay(), TransformToMessageLogicalToOdbc(), TransformToMessageNormalize(), TransformToMessageSet()
property TransformToMetadata as %String [ InitialExpression = "IHE/XDSb/Version1/Message-to-XDSbRequest.xsl" ];
Property methods: TransformToMetadataDisplayToLogical(), TransformToMetadataGet(), TransformToMetadataIsValid(), TransformToMetadataLogicalToDisplay(), TransformToMetadataLogicalToOdbc(), TransformToMetadataNormalize(), TransformToMetadataSet()
property ValidateAffinityDomain as %Boolean [ InitialExpression = 1 ];
Property methods: ValidateAffinityDomainDisplayToLogical(), ValidateAffinityDomainGet(), ValidateAffinityDomainIsValid(), ValidateAffinityDomainLogicalToDisplay(), ValidateAffinityDomainNormalize(), ValidateAffinityDomainSet()
property ValidatePatientID as %Boolean [ InitialExpression = 1 ];
Allow turning off patient ID validation; to be used during testing
Property methods: ValidatePatientIDDisplayToLogical(), ValidatePatientIDGet(), ValidatePatientIDIsValid(), ValidatePatientIDLogicalToDisplay(), ValidatePatientIDNormalize(), ValidatePatientIDSet()

Methods (Including Private)

method BuildFilterItems() [ Language = objectscript ]
method CheckFilteredDocument(pMetaData, pDocument) as %Status [ Language = objectscript ]
method CheckSubmissionSet(pMetaData, pSubmissionSet) as %Status [ Language = objectscript ]
classmethod CleanupFilterItems(pSubscription As HS.IHE.DSUB.NotificationBroker.Subscription) as %Status [ Language = objectscript ]
Strip leading/trailing () and '' from values, move multiple values from single line to mulitple lines
classmethod CompareValues(pValue, pQueryValue) as %Boolean [ Language = objectscript ]
Compare a pQueryValue to pValue considering % as like or _, otherwise only equal
method FilterAuthor(pObject, pFilterItem) as %Boolean [ Language = objectscript ]
FilterAuthor for SubmissionSets and Documents
method FilterIntendedRecipients(pSubmissionSet As HS.Types.IHE.XDSb.Submission, pFilterItem) as %Boolean [ Language = objectscript ]
Given the pSubmissionSet determine whether the Record Should be filtered based on IntendedRecipients
method FilterReferenceIdList(pDocument, pFilterItem) as %Boolean [ Language = objectscript ]
method GetNotificationRequest(pRequest As HS.Message.XMLMessage, Output pNewRequest As HS.Message.XMLMessage) as %Status [ Language = objectscript ]
Get the Metadata from the notification
method InternalPublish(pRequest As HS.Message.IHE.XDSb.Metadata, Output pResponse As HS.Message.XMLMessage) as %Status [ Language = objectscript ]
Internal publish - (from registry)
method OnAfterSubscription(pSubscription As HS.IHE.DSUB.NotificationBroker.Subscription, pResponse As HS.Message.XMLMessage, pRequest As HS.Message.XMLMessage) as %Status [ Language = objectscript ]
User code fired after the subscription has been filed pSubscription is subscription object which has been filed pResponse is available to provide soap faults pRequest is the original message
method OnBeforeSubscription(pSubscription As HS.IHE.DSUB.NotificationBroker.Subscription, pResponse As HS.Message.XMLMessage, pRequest As HS.Message.XMLMessage) as %Status [ Language = objectscript ]
User code capable of checking / changing subscription prior to filing pSubscription is parsed subscription ready to be filed pResponse is available to provide soap faults pRequest is the original message
method OnInit() as %Status [ Language = objectscript ]
This user callback method is called via initConfig() from %OnNew() or in the case of SOAP Services from OnPreSOAP()
method OnMessage(pRequest As %Library.Persistent, Output pResponse As %Library.Persistent) as %Status [ Language = objectscript ]
Inherited description: This is the default message handler. All request types not declared in the message map are delivered here
method QueryPatientIDPDQ(pPatientID) as %Status [ Language = objectscript ]
method Subscribe(pRequest As HS.Message.XMLMessage, Output pResponse As HS.Message.XMLMessage) as %Status [ Language = objectscript ]
method SubscribeObject(pSubscription As HS.IHE.DSUB.NotificationBroker.Subscription, Output pResponse As HS.Message.XMLMessage, pRequest As HS.Message.XMLMessage = "") as %Status [ Language = objectscript ]
Internal method - do not override - use OnBeforeSubscription or OnAfterSubscription
method Unsubscribe(pRequest As HS.Message.XMLMessage, Output pResponse As HS.Message.XMLMessage) as %Status [ Language = objectscript ]
method ValidateFilterItems(pSubscription As HS.IHE.DSUB.NotificationBroker.Subscription, pResponse As HS.Message.XMLMessage) as %Status [ Language = objectscript ]

Inherited Members

Inherited Properties (Including Private)

Inherited Methods (Including Private)

FeedbackOpens in a new window