The VM Connector is used for intra/inter app communication. The communication is done through asynchronous queues, which can be either transient or persistent. Transient queues are faster, but not reliable in the case of a system crash. Persistent queues, on the other hand are slower but reliable. When running on a single instance, persistent queues work by serializing and storing the contents into disk. When running in cluster mode, persistent queues are backed by the memory grid instead. This means that when a flow uses the VM connector to publish content to a queue, the Runtime will decide whether to process that message in the same origin node or to send it out to the cluster for another node to pick it up. This is an easy way to distribute load across the cluster. In either way, transactions are always supported.
Configurations
Config
Default configuration
Parameters
Name | Type | Description | Default Value | Required |
---|---|---|---|---|
Name |
String |
The name for this configuration. Connectors reference the configuration with this name. |
x |
|
Connection |
The connection types that can be provided to this configuration. |
x |
Connection Types
Connection
Parameters
Name | Type | Description | Default Value | Required |
---|---|---|---|---|
Reconnection |
When the application is deployed, a connectivity test is performed on all connectors. If set to true, deployment will fail if the test doesn't pass after exhausting the associated reconnection strategy |
|
Associated Operations
Associated Sources
Operations
Consume
Parameters
Name | Type | Description | Default Value | Required |
---|---|---|---|---|
Configuration |
String |
The name of the configuration to use. |
x |
|
Transactional Action |
Enumeration, one of:
|
The type of joining action that operations can take regarding transactions. |
JOIN_IF_POSSIBLE |
|
Queue Name |
String |
x |
||
Timeout |
Number |
5 |
|
|
Timeout Unit |
Enumeration, one of:
|
SECONDS |
|
|
Target Variable |
String |
The name of a variable on which the operation's output will be placed |
|
|
Target Value |
String |
An expression that will be evaluated against the operation's output and the outcome of that expression will be stored in the target variable |
#[payload] |
|
Reconnection Strategy |
A retry strategy in case of connectivity errors |
|
Output
Type |
Any |
Attributes Type |
For Configurations.
Throws
-
VM:EMPTY_QUEUE
-
VM:RETRY_EXHAUSTED
-
VM:QUEUE_NOT_FOUND
-
VM:CONNECTIVITY
Publish
Parameters
Name | Type | Description | Default Value | Required |
---|---|---|---|---|
Configuration |
String |
The name of the configuration to use. |
x |
|
Content |
Any |
#[payload] |
|
|
Transactional Action |
Enumeration, one of:
|
The type of joining action that operations can take regarding transactions. |
JOIN_IF_POSSIBLE |
|
Queue Name |
String |
x |
||
Timeout |
Number |
5 |
|
|
Timeout Unit |
Enumeration, one of:
|
SECONDS |
|
|
Reconnection Strategy |
A retry strategy in case of connectivity errors |
|
For Configurations.
Throws
-
VM:RETRY_EXHAUSTED
-
VM:QUEUE_TIMEOUT
-
VM:QUEUE_NOT_FOUND
-
VM:CONNECTIVITY
Publish Consume
Parameters
Name | Type | Description | Default Value | Required |
---|---|---|---|---|
Configuration |
String |
The name of the configuration to use. |
x |
|
Content |
Any |
#[payload] |
|
|
Transactional Action |
Enumeration, one of:
|
The type of joining action that operations can take regarding transactions. |
JOIN_IF_POSSIBLE |
|
Queue Name |
String |
x |
||
Timeout |
Number |
5 |
|
|
Timeout Unit |
Enumeration, one of:
|
SECONDS |
|
|
Target Variable |
String |
The name of a variable on which the operation's output will be placed |
|
|
Target Value |
String |
An expression that will be evaluated against the operation's output and the outcome of that expression will be stored in the target variable |
#[payload] |
|
Reconnection Strategy |
A retry strategy in case of connectivity errors |
|
Output
Type |
Any |
Attributes Type |
For Configurations.
Throws
-
VM:RETRY_EXHAUSTED
-
VM:QUEUE_TIMEOUT
-
VM:QUEUE_NOT_FOUND
-
VM:CONNECTIVITY
Sources
Listener
Parameters
Name | Type | Description | Default Value | Required |
---|---|---|---|---|
Configuration |
String |
The name of the configuration to use. |
x |
|
Number Of Consumers |
Number |
4 |
|
|
Transactional Action |
Enumeration, one of:
|
The type of beginning action that sources can take regarding transactions. |
NONE |
|
Transaction Type |
Enumeration, one of:
|
The type of transaction to create. Availability will depend on the runtime version. |
LOCAL |
|
Redelivery Policy |
Defines a policy for processing the redelivery of the same message |
|
||
Queue Name |
String |
x |
||
Timeout |
Number |
5 |
|
|
Timeout Unit |
Enumeration, one of:
|
SECONDS |
|
|
Queue Type |
Enumeration, one of:
|
TRANSIENT |
|
|
Max Outstanding Messages |
Number |
0 |
|
|
Reconnection Strategy |
A retry strategy in case of connectivity errors |
|
||
Content |
Any |
#[payload] |
|
Output
Type |
Any |
Attributes Type |
For Configurations.
Throws
-
MULE:SOURCE_RESPONSE_SEND
-
MULE:SOURCE_RESPONSE_GENERATE
Types
Reconnection
Field | Type | Default Value |
---|---|---|
Fails Deployment |
Boolean |
|
Reconnection Strategy |
Reconnect
Field | Type | Default Value |
---|---|---|
Frequency |
Number |
|
Count |
Number |
Reconnect Forever
Field | Type | Default Value |
---|---|---|
Frequency |
Number |
VM Message Attributes
Field | Type | Default Value |
---|---|---|
Queue Name |
String |
|
Timestamp |
DateTime |
Redelivery Policy
Field | Type | Default Value |
---|---|---|
Max Redelivery Count |
Number |
|
Use Secure Hash |
Boolean |
|
Message Digest Algorithm |
String |
|
Id Expression |
String |
|
Object Store Ref |
String |