Click or drag to resize

IFlowSettle Method

version: 10.23.0
Settles a message in a requested way. See Also Ack(Int64).

Settle has 3 message outcome options:

  • Accepted - The message was succesfully processed (the same as Ack(Int64)).
  • Failed - The message will be redelivered.
  • Rejected - The message is removed from the queue and moved to the DMQ if configured.

The exact behavior of Settle() is controlled by flow property MessageAckMode:

  • AutoAck - Messages are acknowledged automatically by the API and calling this function has no effect.
  • ClientAck - Every message received must be acknowledged by the application through individual calls to Settle().

Settle requires RequiredOutcomeFailed and/or RequiredOutcomeRejected to be enabled to allow "Failed" and/or "Rejected" outcomes, respectively.

Namespace:  SolaceSystems.Solclient.Messaging
Assembly:  SolaceSystems.Solclient.Messaging (in SolaceSystems.Solclient.Messaging.dll) Version: 10.23.0
Syntax
C#
ReturnCode Settle(
	long ADMessageId,
	MessageOutcome outcome
)

Parameters

ADMessageId
Type: SystemInt64
ADMessageId of the message to settle.
outcome
Type: SolaceSystems.Solclient.MessagingMessageOutcome
type of the settlement outcome.

Return Value

Type: ReturnCode
When successful, it returns SOLCLIENT_OK.
Exceptions
ExceptionCondition
OperationErrorException Thrown when the start operation fails.
ObjectDisposedException Thrown when the flow is already disposed (terminal state).
FatalErrorException Thrown when an unrecoverable error occurs.
See Also