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. Supported settings classes are SNSSettings, SQSSettings, KafkaSettings, JMSSettings and RabbitMQSettings. 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
Connects to JMS using the passed in settings JSON string.
classmethod CreateKafkaClient(settings As %String, Output sc As %Status, additionalClasspaths As %String = "") as KafkaClient
Connects to Kafka using the passed in settings JSON string.
method CreateQueueOrTopic(queueOrTopicName As %String, settings As %String = "") as %Status
Applicable to all except JMS. 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
Connects to RabbitMQ using the passed in settings JSON string.
classmethod CreateSNSClient(settings As %String, Output sc As %Status, additionalClasspaths As %String = "") as SNSClient
Connects to SNS using the passed in settings JSON string.
classmethod CreateSQSClient(settings As %String, Output sc As %Status, additionalClasspaths As %String = "") as SQSClient
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, settings 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). settings: Optional attributes in JSON string required by the underlying messaging provider to receive messages. Corresponding settings classes are KafkaReceiveSettings, SQSReceiveSettings, JMSReceiveSettings and RabbitMQReceiveSettings.
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