Home > Class Reference > HSLIB namespace > HS.AU.SMD.Process

HS.AU.SMD.Process

persistent class HS.AU.SMD.Process extends Ens.BusinessProcess, HS.HC.Util.Trace.Helper

SQL Table Name: HS_AU_SMD.Process

Property Inventory

Method Inventory

Parameters

parameter SETTINGS = MessageProcessor:Basic:selector?multiSelect=1&context={Ens.ContextSearch/ProductionItems?targets=1&productionName=@productionId},TransportResponseDelivery:Basic:selector?multiSelect=1&context={Ens.ContextSearch/ProductionItems?targets=1&productionName=@productionId};
Inherited description: List of properties can be set as settings in the configuration file format is a comma separated list of property names

Properties

property MessageProcessor as Ens.DataType.ConfigName;
Custom defined handler for processing inbound messages
Property methods: MessageProcessorDisplayToLogical(), MessageProcessorGet(), MessageProcessorGetStored(), MessageProcessorIsValid(), MessageProcessorLogicalToDisplay(), MessageProcessorLogicalToOdbc(), MessageProcessorNormalize(), MessageProcessorParseConfigNameSpec(), MessageProcessorSet()
property TransportResponseDelivery as Ens.DataType.ConfigName [ InitialExpression = "HS.AU.SMD.Operations" ];
Operation to handle outbound messages
Property methods: TransportResponseDeliveryDisplayToLogical(), TransportResponseDeliveryGet(), TransportResponseDeliveryGetStored(), TransportResponseDeliveryIsValid(), TransportResponseDeliveryLogicalToDisplay(), TransportResponseDeliveryLogicalToOdbc(), TransportResponseDeliveryNormalize(), TransportResponseDeliveryParseConfigNameSpec(), TransportResponseDeliverySet()

Methods

method GetDeliverStatus(pRequest As HS.AU.Message.SMD.InboundMessageRequest, Output pResponse As HS.AU.Message.SMD.DeliveryResponse) as %Status [ Language = objectscript ]
Locate any inbound messages with the same invocationId and reject as a duplicate when needed
method GetResponseCode(pResponseStatus, ByRef pResponseString, ByRef pResponseCode, ByRef pResponseMessage) as %Status [ Language = objectscript ]
method GetTransportEndpoint(pInboundMessage As HS.AU.Message.SMD.InboundMessageRequest) as %String [ Language = objectscript ]
method OnError(request As %Library.Persistent, ByRef response As %Library.Persistent, callrequest As %Library.Persistent, pErrorStatus As %Status, pCompletionKey As %String) as %Status [ Language = objectscript ]
This method is called when an error response is received Returning the same error will cause the BusinessProcess to set its status to error and close down Returning $$$OK from this method causes the BusinessProcess to recover from this error
method OnRequest(pRequest As Ens.Request, Output pResponse As Ens.Response) as %Status [ Language = objectscript ]
Take Deliver or ImmediateDeliver message For Deliver - check for duplicates and respond duplicate / ok build response message
method OnResponse(pRequest As Ens.Request, ByRef pResponse As Ens.Response, pCallrequest As Ens.Request, pCallresponse As Ens.Response, pCompletionKey As %String) as %Status [ Language = objectscript ]
Inherited description: Handle a 'Response'
method SendTransportResponse(pInboundMessage As HS.AU.Message.SMD.InboundMessageRequest, pResponseStatus As %Status = $$$OK, pResponseCode As %String = "", pResponseMessage As %String = "") as %Status [ Language = objectscript ]
method UpdateInboundDeliveryStatus(pRequest As HS.AU.Message.SMD.InboundMessageRequest) as %Status [ Language = objectscript ]
Update acknowledgement status for inbound messages (after sending TRD response)
method UpdateTransportStatus(pRequest As HS.AU.Message.SMD.TransportDeliveryRequest, Output pResponse As HS.AU.Message.SMD.TransportDeliveryResponse) as %Status [ Language = objectscript ]
Update acknowledgement status for outbound messages (after receiving TRD response)

Inherited Members

Inherited Properties

Inherited Methods

Storage

Gray indicates storage defined by superclasses.

Storage Model: Storage (Ens.BusinessProcess)

^Ens.BusinessProcessD(ID,"pending",n)
=
%MasterPendingResponses(n)

Storage Model: Storage (Ens.BusinessProcess)

^Ens.BusinessProcessD(ID,"received",n)
=
%MessagesReceived(n)

Storage Model: Storage (Ens.BusinessProcess)

^Ens.BusinessProcessD(ID,"sent",n)
=
%MessagesSent(n)

Storage Model: Storage (Ens.BusinessProcess)

^Ens.BusinessProcessD(ID)
=
%%CLASSNAME
%ConfigQueueName
%IsCompleted
%MasterPendingResponsesOld
%PrimaryRequestHeader
%PrimaryResponseHeader
%RepliedStatus
%responseId
Adapter
%SessionId
%TimeCompleted
%TimeCreated
%ConfigName
%QuitTask
AlertOnError
%responseClassName
%IsTimerInterrupted
%IsTerminated
%StatusCode
%MessagesReceivedOld
%MessagesSentOld
ReplyCodeActions
RetryInterval
AlertRetryGracePeriod
FailureTimeout
Retry
SuspendMessage
QueueCountAlert
QueueWaitAlert
InactivityTimeout
BusinessPartner
AlertGroups
%SuperSession

Storage Model: Storage (HS.AU.SMD.Process)

^Ens.BusinessProcessD(ID,"Process")
=
TraceOperations
MessageProcessor
TransportResponseDelivery
FeedbackOpens in a new window