PubSub+ Messaging API For C
7.31.0.7
|
Functions | Typedefs | Enumerations | Enumeration Values | Defines |
Items that can be configured for a Flow. More...
Macros | |
#define | SOLCLIENT_FLOW_PROP_BIND_BLOCKING "FLOW_BIND_BLOCKING" |
This property controls whether or not to block in solClient_session_createFlow(). More... | |
#define | SOLCLIENT_FLOW_PROP_BIND_TIMEOUT_MS "FLOW_BIND_TIMEOUT_MS" |
The timeout (in milliseconds) used when creating a Flow in blocking mode. More... | |
#define | SOLCLIENT_FLOW_PROP_BIND_ENTITY_ID "FLOW_BIND_ENTITY_ID" |
The type of object to which this Flow is bound. More... | |
#define | SOLCLIENT_FLOW_PROP_BIND_ENTITY_DURABLE "FLOW_BIND_ENTITY_DURABLE" |
The durability of the object to which this Flow is bound. More... | |
#define | SOLCLIENT_FLOW_PROP_BIND_NAME "FLOW_BIND_NAME" |
The name of the Queue or Topic Endpoint that is the target of the bind. More... | |
#define | SOLCLIENT_FLOW_PROP_WINDOWSIZE "FLOW_WINDOWSIZE" |
The Guaranteed message window size for the Flow. More... | |
#define | SOLCLIENT_FLOW_PROP_AUTOACK "FLOW_AUTOACK" |
Deprecated: When set to SOLCLIENT_PROP_ENABLE_VAL, the API generates application level acknowledgments when the receive callback function returns. More... | |
#define | SOLCLIENT_FLOW_PROP_ACKMODE "FLOW_ACKMODE" |
Controls how acknowledgments are generated for received Guaranteed messages. More... | |
#define | SOLCLIENT_FLOW_PROP_TOPIC "FLOW_TOPIC" |
When binding to a Topic endpoint, the Topic may be set in the bind. More... | |
#define | SOLCLIENT_FLOW_PROP_MAX_BIND_TRIES "FLOW_MAX_BIND_TRIES" |
When creating a non-blocking Flow, or a Flow that is bound due to Session-connect, the maximum number of bind attempts to make. More... | |
#define | SOLCLIENT_FLOW_PROP_ACK_TIMER_MS "FLOW_ACK_TIMER_MS" |
The duration of the Flow acknowledgment timer (in milliseconds). More... | |
#define | SOLCLIENT_FLOW_PROP_ACK_THRESHOLD "FLOW_ACK_THRESHOLD" |
The threshold for sending an acknowledgement, configured as a percentage. More... | |
#define | SOLCLIENT_FLOW_PROP_START_STATE "FLOW_START_STATE" |
This property controls whether the Flow should be created in a start or stop state with respect to receiving messages. More... | |
#define | SOLCLIENT_FLOW_PROP_SELECTOR "FLOW_SELECTOR" |
A Java Message System (JMS) defined selector. More... | |
#define | SOLCLIENT_FLOW_PROP_NO_LOCAL "FLOW_NO_LOCAL" |
When a Flow has the No Local property enabled, messages published on the Session cannot appear in a Flow created in the same Session, even if the endpoint contains a subscription that matches the published message. More... | |
#define | SOLCLIENT_FLOW_PROP_MAX_UNACKED_MESSAGES "FLOW_MAX_UNACKED_MESSAGES" |
This property may only be set when the Flow property SOLCLIENT_FLOW_PROP_ACKMODE is set to SOLCLIENT_FLOW_PROP_ACKMODE_CLIENT. More... | |
#define | SOLCLIENT_FLOW_PROP_BROWSER "FLOW_BROWSER" |
Set browser mode on flow and signal it is a browser flow to broker on bind. More... | |
#define | SOLCLIENT_FLOW_PROP_ACTIVE_FLOW_IND "FLOW_ACTIVE_FLOW_IND" |
When a Flow has the Active Flow Indication property enabled, the application will receive flow events when the flow becomes active, or inactive. More... | |
#define | SOLCLIENT_FLOW_PROP_REPLAY_START_LOCATION "FLOW_REPLAY_START_LOCATION" |
When a Flow is created, the application may request replay of messages from the replay log, even messages that have been previously delivered and removed the from topic endpoint or queue. More... | |
#define | SOLCLIENT_FLOW_PROP_MAX_RECONNECT_TRIES "FLOW_MAX_RECONNECT_TRIES" |
When a flow is unbound by the message-broker due to "Replay Started" or "Service Unavailable", the API will attempt to reconnect the flow if this property is non-zero. More... | |
#define | SOLCLIENT_FLOW_PROP_RECONNECT_RETRY_INTERVAL_MS "FLOW_RECONNECT_RETRY_INTERVAL_MS" |
When a flow is reconnecting, the API will attempt to reconnect immediately, if that bind attempt fails it will wait for the retry interval before attempting to connect again. More... | |
#define | SOLCLIENT_FLOW_PROP_REQUIRED_OUTCOME_FAILED "FLOW_REQUIRED_OUTCOME_FAILED" |
Create a flow that allows solClient_flow_settleMsg() with SOLCLIENT_OUTCOME_FAILED. More... | |
#define | SOLCLIENT_FLOW_PROP_REQUIRED_OUTCOME_REJECTED "FLOW_REQUIRED_OUTCOME_REJECTED" |
Create a flow that allows solClient_flow_settleMsg() with SOLCLIENT_OUTCOME_REJECTED. More... | |
Items that can be configured for a Flow.
#define SOLCLIENT_FLOW_PROP_ACK_THRESHOLD "FLOW_ACK_THRESHOLD" |
The threshold for sending an acknowledgement, configured as a percentage.
The API sends a transport acknowledgment every N messages where N is calculated as this percentage of the flow window size if the endpoint's max-delivered-unacked-msgs-per-flow setting at bind time is greater than or equal to the transport window size. Otherwise, N is calculated as this percentage of the endpoint's max-delivered-unacked-msgs-per-flow setting at bind time.
The valid range is 1..75. Default: SOLCLIENT_FLOW_PROP_DEFAULT_ACK_THRESHOLD
#define SOLCLIENT_FLOW_PROP_ACK_TIMER_MS "FLOW_ACK_TIMER_MS" |
The duration of the Flow acknowledgment timer (in milliseconds).
The valid range is 20..1500. Default: SOLCLIENT_FLOW_PROP_DEFAULT_ACK_TIMER_MS
#define SOLCLIENT_FLOW_PROP_ACKMODE "FLOW_ACKMODE" |
Controls how acknowledgments are generated for received Guaranteed messages.
Possible values are SOLCLIENT_FLOW_PROP_ACKMODE_AUTO and SOLCLIENT_FLOW_PROP_ACKMODE_CLIENT. Default SOLCLIENT_FLOW_PROP_ACKMODE_AUTO
#define SOLCLIENT_FLOW_PROP_ACTIVE_FLOW_IND "FLOW_ACTIVE_FLOW_IND" |
When a Flow has the Active Flow Indication property enabled, the application will receive flow events when the flow becomes active, or inactive.
If the underlying session capabilities indicate that the broker does not support active flow indications, then solClient_session_createFlow() will fail immediately (SOLCLIENT_FAIL) and set the subCode SOLCLIENT_SUBCODE_FLOW_ACTIVE_FLOW_INDICATION_UNSUPPORTED. Default: SOLCLIENT_FLOW_PROP_DEFAULT_ACTIVE_FLOW_IND
#define SOLCLIENT_FLOW_PROP_AUTOACK "FLOW_AUTOACK" |
Deprecated: When set to SOLCLIENT_PROP_ENABLE_VAL, the API generates application level acknowledgments when the receive callback function returns.
This property is ignored if SOLCLIENT_FLOW_PROP_ACKMODE is specified. Default: SOLCLIENT_FLOW_PROP_DEFAULT_AUTOACK
#define SOLCLIENT_FLOW_PROP_BIND_BLOCKING "FLOW_BIND_BLOCKING" |
This property controls whether or not to block in solClient_session_createFlow().
Default: SOLCLIENT_FLOW_PROP_DEFAULT_BIND_BLOCKING
#define SOLCLIENT_FLOW_PROP_BIND_ENTITY_DURABLE "FLOW_BIND_ENTITY_DURABLE" |
The durability of the object to which this Flow is bound.
Default: SOLCLIENT_PROP_ENABLE_VAL, which means the endpoint is durable. When set to SOLCLIENT_PROP_DISABLE_VAL, a temporary endpoint is created.
#define SOLCLIENT_FLOW_PROP_BIND_ENTITY_ID "FLOW_BIND_ENTITY_ID" |
The type of object to which this Flow is bound.
The valid values are SOLCLIENT_FLOW_PROP_BIND_ENTITY_SUB, SOLCLIENT_FLOW_PROP_BIND_ENTITY_QUEUE, and SOLCLIENT_FLOW_PROP_BIND_ENTITY_TE. Default: SOLCLIENT_FLOW_PROP_DEFAULT_BIND_ENTITY_ID
#define SOLCLIENT_FLOW_PROP_BIND_NAME "FLOW_BIND_NAME" |
The name of the Queue or Topic Endpoint that is the target of the bind.
This property is ignored when the BIND_ENTITY_ID is SOLCLIENT_FLOW_PROP_BIND_ENTITY_SUB. The maximum length (not including NULL terminator) is SOLCLIENT_BUFINFO_MAX_QUEUENAME_SIZE. Default: SOLCLIENT_FLOW_PROP_DEFAULT_BIND_NAME
#define SOLCLIENT_FLOW_PROP_BIND_TIMEOUT_MS "FLOW_BIND_TIMEOUT_MS" |
The timeout (in milliseconds) used when creating a Flow in blocking mode.
The valid range is > 0. Default: SOLCLIENT_FLOW_PROP_DEFAULT_BIND_TIMEOUT_MS
#define SOLCLIENT_FLOW_PROP_BROWSER "FLOW_BROWSER" |
Set browser mode on flow and signal it is a browser flow to broker on bind.
A browser flow allows client applications to look at messages spooled on Endpoints without removing them. Messages are browsed from oldest to newest. The flow window size will be reduced as messages are received. Applications have to call solClient_flow_start() to get more messages. After being browsed, messages are still available for consumption over normal flows. However, it is possible to selectively remove messages (by calling solClient_flow_sendAck()) from the persistent store of an Endpoint, in this case, these removed messages will no longer be available for consumption. Default: SOLCLIENT_FLOW_PROP_DEFAULT_BROWSER
NOTE: If browsing a queue with an active consumer, no guarantee is made that the browser will receive all messages published to the queue. The consumer can receive and acknowledge messages before they are delivered to the browser.
#define SOLCLIENT_FLOW_PROP_MAX_BIND_TRIES "FLOW_MAX_BIND_TRIES" |
When creating a non-blocking Flow, or a Flow that is bound due to Session-connect, the maximum number of bind attempts to make.
The valid range is >= 1. Default: SOLCLIENT_FLOW_PROP_DEFAULT_MAX_BIND_TRIES
#define SOLCLIENT_FLOW_PROP_MAX_RECONNECT_TRIES "FLOW_MAX_RECONNECT_TRIES" |
When a flow is unbound by the message-broker due to "Replay Started" or "Service Unavailable", the API will attempt to reconnect the flow if this property is non-zero.
If this property is -1, it will retry forever. Otherwise it tries the configured maximum number of times. Default: SOLCLIENT_FLOW_PROP_DEFAULT_MAX_RECONNECT_TRIES
#define SOLCLIENT_FLOW_PROP_MAX_UNACKED_MESSAGES "FLOW_MAX_UNACKED_MESSAGES" |
This property may only be set when the Flow property SOLCLIENT_FLOW_PROP_ACKMODE is set to SOLCLIENT_FLOW_PROP_ACKMODE_CLIENT.
When set to a positive value, this property controls the maximum number of messages that may be unacknowledged on the Flow (solClient_flow_sendAck() is called to acknowledge messages and remove those messages from the message spool). This property cannot be used to increase the broker configured maximum number of acknowledged messages on the endpoint. When set to -1, the broker configured maximum controls how many unacknowledged messages may be received by the application. Valid values are -1 and >0. Default SOLCLIENT_FLOW_PROP_DEFAULT_MAX_UNACKED_MESSAGES
#define SOLCLIENT_FLOW_PROP_NO_LOCAL "FLOW_NO_LOCAL" |
When a Flow has the No Local property enabled, messages published on the Session cannot appear in a Flow created in the same Session, even if the endpoint contains a subscription that matches the published message.
The broker that the Session connects to must have the No Local capability, and the capability must be enabled. If the broker the Session is connected to does not support No Local, a call to solClient_session_createFlow() returns SOLCLIENT_FAIL and subcode SOLCLIENT_SUBCODE_NO_LOCAL_NOT_SUPPORTED set.
#define SOLCLIENT_FLOW_PROP_RECONNECT_RETRY_INTERVAL_MS "FLOW_RECONNECT_RETRY_INTERVAL_MS" |
When a flow is reconnecting, the API will attempt to reconnect immediately, if that bind attempt fails it will wait for the retry interval before attempting to connect again.
Default: SOLCLIENT_FLOW_PROP_DEFAULT_RECONNECT_RETRY_INTERVAL_MS
#define SOLCLIENT_FLOW_PROP_REPLAY_START_LOCATION "FLOW_REPLAY_START_LOCATION" |
When a Flow is created, the application may request replay of messages from the replay log, even messages that have been previously delivered and removed the from topic endpoint or queue.
The replay start location may be SOLCLIENT_FLOW_PROP_REPLAY_START_LOCATION_BEGINNING to indicate that all messages available should be replayed. Or the replay start location may be a string that begins with "DATE:" followed by a date in one of two formats. The date may be a string representing a long integer, which is the number of seconds since the epoch - 0:00:00 Jan 1, 1970. The date may be a string as specified in RFC3339 - 'YYYY-MM-DDTHH:MM:SS[.1*DIGIT]Z' or 'YYYY-MM-DDTHH:MM:SS[.1*DIGIT]("+"/"-")HH:MM'. Additionally, the replay start location may be a replication-group-message-id string as returned by solClient_replicationGroupMessageId_toString(). Such a string starts with "rmid1:" and is a solClient_replicationGroupMessageId_t.
#define SOLCLIENT_FLOW_PROP_REQUIRED_OUTCOME_FAILED "FLOW_REQUIRED_OUTCOME_FAILED" |
Create a flow that allows solClient_flow_settleMsg() with SOLCLIENT_OUTCOME_FAILED.
Ignored on transacted sessions. Requires SOLCLIENT_SESSION_CAPABILITY_AD_APP_ACK_FAILED. Default: SOLCLIENT_FLOW_PROP_DEFAULT_REQUIRED_OUTCOME_FAILED
#define SOLCLIENT_FLOW_PROP_REQUIRED_OUTCOME_REJECTED "FLOW_REQUIRED_OUTCOME_REJECTED" |
Create a flow that allows solClient_flow_settleMsg() with SOLCLIENT_OUTCOME_REJECTED.
Ignored on transacted sessions. Requires SOLCLIENT_SESSION_CAPABILITY_AD_APP_ACK_FAILED. Default: SOLCLIENT_FLOW_PROP_DEFAULT_REQUIRED_OUTCOME_REJECTED
#define SOLCLIENT_FLOW_PROP_SELECTOR "FLOW_SELECTOR" |
A Java Message System (JMS) defined selector.
#define SOLCLIENT_FLOW_PROP_START_STATE "FLOW_START_STATE" |
This property controls whether the Flow should be created in a start or stop state with respect to receiving messages.
Flow start/stop state can be changed later through solClient_flow_start() or solClient_flow_stop(). Default SOLCLIENT_FLOW_PROP_DEFAULT_START_STATE
#define SOLCLIENT_FLOW_PROP_TOPIC "FLOW_TOPIC" |
When binding to a Topic endpoint, the Topic may be set in the bind.
This parameter is ignored for Queue or subscriber binding. The maximum length (not including NULL terminator) is SOLCLIENT_BUFINFO_MAX_TOPIC_SIZE. Default: SOLCLIENT_FLOW_PROP_DEFAULT_TOPIC
#define SOLCLIENT_FLOW_PROP_WINDOWSIZE "FLOW_WINDOWSIZE" |
The Guaranteed message window size for the Flow.
This sets the maximum number of messages that can be in transit (that is, the messages are sent from the broker but are not yet delivered to the application). The valid range is 1..255. Default: SOLCLIENT_FLOW_PROP_DEFAULT_WINDOWSIZE