Ens.BusinessService
abstract class Ens.BusinessService extends Ens.Host, Ens.Util.IOLogger
Property Inventory
- %AlertStartTime
- %OutsideCreated
- %PreserveSession
- %ProcessInputCalled
- %RequestHeader
- %SuperSessionCreatedBeforeSession
- %WaitForNextCallInterval
- AlertGracePeriod
- GenerateSuperSessionID
Method Inventory
- ForceSessionId()
- OnError()
- OnProcessInput()
- OnTearDown()
- PopulateSuperSession()
- SendAlert()
- SendRequestAsync()
- SendRequestSync()
Parameters
parameter APPDATAKEY = ProcessInputAsync;
parameter SETTINGS = GenerateSuperSessionID:Additional,AlertGracePeriod:Alerting;
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 %AlertStartTime as %Numeric [ InitialExpression = 0 ];
Property methods: %AlertStartTimeDisplayToLogical(), %AlertStartTimeGet(), %AlertStartTimeIsValid(), %AlertStartTimeLogicalToDisplay(), %AlertStartTimeNormalize(), %AlertStartTimeSet()
property %OutsideCreated as %String;
IO device name if created by CreateBusinessService from a CSP TCP job
Property methods: %OutsideCreatedDisplayToLogical(), %OutsideCreatedGet(), %OutsideCreatedIsValid(), %OutsideCreatedLogicalToDisplay(), %OutsideCreatedLogicalToOdbc(), %OutsideCreatedNormalize(), %OutsideCreatedSet()
property %PreserveSession as %Boolean [ InitialExpression = 0 ];
Put all inputs from this service into a single session
Property methods: %PreserveSessionDisplayToLogical(), %PreserveSessionGet(), %PreserveSessionIsValid(), %PreserveSessionLogicalToDisplay(), %PreserveSessionNormalize(), %PreserveSessionSet()
property %ProcessInputCalled as %Boolean [ Calculated ];
Deprecated - use %WaitForNextCallInterval
Property methods: %ProcessInputCalledDisplayToLogical(), %ProcessInputCalledIsValid(), %ProcessInputCalledLogicalToDisplay(), %ProcessInputCalledNormalize()
property %RequestHeader as Ens.MessageHeader;
Property methods: %RequestHeaderGet(), %RequestHeaderGetObject(), %RequestHeaderGetObjectId(), %RequestHeaderGetSwizzled(), %RequestHeaderIsValid(), %RequestHeaderNewObject(), %RequestHeaderSet(), %RequestHeaderSetObject(), %RequestHeaderSetObjectId(), %RequestHeaderUnSwizzle()
property %SuperSessionCreatedBeforeSession as %Boolean [ InitialExpression = 0 ];
This is used to indicate if the %SuperSession has been created from the inbound request
and ought not to be cleared as part of %PreserveSession actions
Property methods: %SuperSessionCreatedBeforeSessionDisplayToLogical(), %SuperSessionCreatedBeforeSessionGet(), %SuperSessionCreatedBeforeSessionIsValid(), %SuperSessionCreatedBeforeSessionLogicalToDisplay(), %SuperSessionCreatedBeforeSessionNormalize(), %SuperSessionCreatedBeforeSessionSet()
property %WaitForNextCallInterval as %Boolean [ InitialExpression = 1 ];
Used to be named %ProcessInputCalled, with inverse sense
Property methods: %WaitForNextCallIntervalDisplayToLogical(), %WaitForNextCallIntervalGet(), %WaitForNextCallIntervalIsValid(), %WaitForNextCallIntervalLogicalToDisplay(), %WaitForNextCallIntervalNormalize(), %WaitForNextCallIntervalSet()
property AlertGracePeriod as %Numeric (MINVAL = 0) [ InitialExpression = 0 ];
When AlertOnError is True, refrain from alerting if it is not from ProcessInput() and the Service succeeds again within this number of seconds
Property methods: AlertGracePeriodDisplayToLogical(), AlertGracePeriodGet(), AlertGracePeriodIsValid(), AlertGracePeriodLogicalToDisplay(), AlertGracePeriodNormalize(), AlertGracePeriodSet()
property GenerateSuperSessionID as %Boolean [ InitialExpression = 0 ];
If this setting is enabled then generate a Super Session ID.
See method GenerateSuperSession() and user call back method OnGenerateSuperSession()in Ens.Host
See method GenerateSuperSession() and user call back method OnGenerateSuperSession()in Ens.Host
Property methods: GenerateSuperSessionIDDisplayToLogical(), GenerateSuperSessionIDGet(), GenerateSuperSessionIDIsValid(), GenerateSuperSessionIDLogicalToDisplay(), GenerateSuperSessionIDNormalize(), GenerateSuperSessionIDSet()
Methods
method ForceSessionId() as %Status
Pre-allocate a request header object and an ID to represent a fresh session.
When the next message is sent (that is, when SendRequestSync() or SendRequestAsync() is next called), it will use this pre-allocated header.
Override this method to provide custom error handling. Return 0 means skip standard AlertOnError behavior.
method OnProcessInput(pInput As %RegisteredObject, Output pOutput As %RegisteredObject, ByRef pHint As %String) as %Status
Override this method to process incoming data. Do not call SendRequestSync/Async() from outside this method (e.g. in a SOAP Service or a CSP page).
method OnTearDown() as %Status
This user callback method is called from %OnClose()
method PopulateSuperSession() as %Status
Generate a Super Session ID if it is currently empty and setting to generate enabled.
method SendAlert(pAlertRequest As Ens.AlertRequest) as %Status
Use this method to send an alert message
method SendRequestAsync(pTargetDispatchName As %String, pRequest As %Library.Persistent, pDescription As %String = "") as %Status
Use this method to dispatch a business invocation asynchronously
method SendRequestSync(pTargetDispatchName As %String, pRequest As %Library.Persistent, ByRef pResponse As %Library.Persistent, pTimeout As %Numeric = -1, pDescription As %String = "", ByRef pSendSyncHandling As %String) as %Status
Use this method to dispatch a business invocation synchronously
Inherited Members
Inherited Properties
- %ConfigName
- %ConfigQueueName
- %LastActionTime
- %LastHandledTime
- %LastReportedError
- %QuitTask
- %SessionId
- %SuperSession
- %WarnedLatest
- %isShadow
- Adapter
- AlertGroups
- AlertOnError
- ArchiveIO
- BusinessPartner
- IOLogEntry
- InactivityTimeout
- ThrottleDelay
Inherited Methods
- %AddToSaveSet()
- %ClassIsLatestVersion()
- %ClassName()
- %ConstructClone()
- %DispatchClassMethod()
- %DispatchGetModified()
- %DispatchGetProperty()
- %DispatchMethod()
- %DispatchSetModified()
- %DispatchSetMultidimProperty()
- %DispatchSetProperty()
- %Extends()
- %GetParameter()
- %IsA()
- %IsModified()
- %New()
- %NormalizeObject()
- %ObjectModified()
- %OnClose()
- %OnNew()
- %OriginalNamespace()
- %PackageName()
- %RemoveFromSaveSet()
- %SerializeObject()
- %SetModified()
- %SuperSessionSet()
- %ValidateObject()
- AdapterName()
- AssignOneSetting()
- CloseIOLogEntry()
- EnumerateSettingsClose()
- EnumerateSettingsExecute()
- EnumerateSettingsFetch()
- GenerateSuperSession()
- GetDeferredResponseToken()
- GetMsgHdrRequestKey()
- GetProductionSettingValue()
- GetProductionSettings()
- GetPropertyConnections()
- GetSettings()
- GetShadowInstance()
- NewIOLogEntry()
- OnGenerateSuperSession()
- OnGetConnections()
- OnInit()
- OnKeepalive()
- OnMonitor()
- OnProductionStart()
- OnProductionStop()
- QueueName()
- SaveIOLogEntry()
- SendDeferredResponse()
Subclasses
- Ens.Activity.Service.TCPCounted
- Ens.Alerting.AlertMonitor
- Ens.BusinessDuplex
- Ens.BusinessMetric
- Ens.Enterprise.MonitorService
- Ens.Enterprise.MsgBank.TCPService
- Ens.ManagerService
- Ens.MonitorService
- Ens.ProductionMonitorService
- Ens.ScheduleService
- EnsLib.AmazonSQS.Service
- EnsLib.Background.Service
- EnsLib.EDI.EDIFACT.Service.Standard
- EnsLib.EDI.X12.Service.Standard
- EnsLib.EDI.XML.Service.Standard
- EnsLib.FTP.PassthroughService
- EnsLib.File.PassthroughService
- EnsLib.Gateway.Service
- EnsLib.HTTP.Service
- EnsLib.JMS.Service
- EnsLib.JMSPEX.Service
- EnsLib.Kafka.Service
- EnsLib.MFT.Service.Passthrough
- EnsLib.MQSeries.PassthroughService
- EnsLib.MQTT.Service.Passthrough
- EnsLib.PEX.BusinessService
- EnsLib.Printing.PrintService
- EnsLib.PushNotifications.AppService
- EnsLib.RabbitMQ.Service
- EnsLib.RecordMap.Service.Base
- EnsLib.RecordMap.Service.ComplexBatchStandard
- EnsLib.SOAP.Service
- EnsLib.SQL.Service.GenericService
- EnsLib.TCP.Framed.PassthroughService
- EnsLib.TCP.PassthroughService
- EnsLib.TCP.StatusService
- EnsLib.Testing.Service
- EnsLib.XML.Object.Service.Standard
- EnsLib.XSLT.TransformedService