Skip to main content

%External.Messaging.Client

class %External.Messaging.Client extends %Library.RegisteredObject

Property Inventory

Method Inventory

Properties

property gateway as %External.JavaGateway;
Connection to a Java Gateway
Property methods: gatewayGet(), gatewayGetSwizzled(), gatewayIsValid(), gatewayNewObject(), gatewaySet()
property jclient as %Net.Remote.Object;
Remote Java messaging client object
Property methods: jclientGet(), jclientGetSwizzled(), jclientIsValid(), jclientNewObject(), jclientSet()

Methods

method Close() as %Status
Close connections and release resources
method Connect(jclientClass As %String, settings As %String, additionalClasspaths As %String = "") as %Status
Connect to gateway and instantiate Java messaging client
classmethod CreateClient(settings As Settings, Output sc As %Status, additionalClasspaths As %String = "") as Client
Factory method to create an instance of messaging client. The type of the client is dertermined by the type of the settings class. additionalClasspaths: Additional Java class paths needed by the Java Gateway to instantiate the messaging client. If there are multiple paths, pass in a %ListOfDataTypes.
classmethod CreateJMSClient(settings As %String, Output sc As %Status, additionalClasspaths As %String = "") as JMSClient
Applicable to JMS.
Connects to JMS using the passed in settings JSON string.
classmethod CreateKafkaClient(settings As %String, Output sc As %Status, additionalClasspaths As %String = "") as KafkaClient
Applicable to Kafka.
Connects to Kafka using the passed in settings JSON string.
method CreateQueueOrTopic(queueOrTopicName As %String, settings As %String = "") as %Status
Applicable to all. settings: JSON string representing attributes required to create the queue/topic. The settings are only required for Kafka, SQS and RabbitMQ. The corresponding settings classes are KafkaTopicSettings, SQSQueueSettings and RabbitMQQueueSettings.
classmethod CreateRabbitMQClient(settings As %String, Output sc As %Status, additionalClasspaths As %String = "") as RabbitMQClient
Applicable to RabbitMQ.
Connects to RabbitMQ using the passed in settings JSON string.
classmethod CreateSNSClient(settings As %String, Output sc As %Status, additionalClasspaths As %String = "") as SNSClient
Applicable to SNS.
Connects to SNS using the passed in settings JSON string.
classmethod CreateSQSClient(settings As %String, Output sc As %Status, additionalClasspaths As %String = "") as SQSClient
Applicable to SQS.
Connects to SQS using the passed in settings JSON string.
method DeleteQueueOrTopic(queueOrTopicName As %String) as %Status
Applicable to all except JMS.
method ReceiveMessage(queueOrTopicName As %String, Output messages As %ListOfObjects, params As %String = "") as %Status
Applicable to all except SNS. Receives a List of Messages. queueOrTopicName: Name of the queue/topic to receive messages from. messages: Output list of received messages(%External.Messaging.___Message objects). params: Parameters required by the underlying messaging provider. For JMS, params is the optional subscription name.
method SendMessage(message As %External.Messaging.Message) as %Status
Applicable to all.
Sends a message that is passed in as a parameter, which can be any %External.Messaging.___Message objects.

Inherited Members

Inherited Methods

Subclasses

FeedbackOpens in a new tab