[TIBCO.EMS.UFOCLIENT .NET client library 6.0 documentation]

Publishes a message to the topic, specifying delivery mode, priority, and time to live.

Namespace:  TIBCO.EMS.UFO
Assembly:  TIBCO.EMS.UFO (in TIBCO.EMS.UFO.dll)

Syntax

public void Publish(
	Message message,
	MessageDeliveryMode deliveryMode,
	int priority,
	long timeToLive
)
Public Sub Publish ( _
	message As Message, _
	deliveryMode As MessageDeliveryMode, _
	priority As Integer, _
	timeToLive As Long _
)
public:
void Publish(
	Message^ message, 
	MessageDeliveryMode deliveryMode, 
	int priority, 
	long long timeToLive
)

Parameters

message
Type: TIBCO.EMS.UFO..::.Message
The message to publish.
deliveryMode
Type: MessageDeliveryMode
The delivery mode to use. This argument may be either an enumerated value (see TIBCO.EMS.MessageDeliveryMode) or an integer (see TIBCO.EMS.DeliveryMode). We recommend enumerated values, because they enable .NET to do stronger type checking at compile time, which can enhance program reliability.
priority
Type: System..::.Int32

The priority for this message.

Priority affects the order in which the server delivers messages to consumers (higher values first). The JMS specification defines ten levels of priority value, from zero (lowest priority) to 9 (highest priority). The specification suggests that clients consider 0–4 as gradations of normal priority, and priorities 5–9 as gradations of expedited priority.

timeToLive
Type: System..::.Int64

The message's lifetime (in milliseconds) before it expires.

  • If the time-to-live is non-zero, the expiration is the sum of that time-to-live and the sending client’s current time (GMT). This rule applies even within sessions with transaction semantics—the timer begins with the send call, not the commit call.
  • If the time-to-live is zero, then expiration is also zero—indicating that the message never expires.

Programs can use this property to define a default time-to-live for messages that this producer sends. Individual sending calls can override this default value.

Whenever your application uses non-zero values for message expiration or time-to-live, you must ensure that clocks are synchronized among all the host computers that send and receive messages. Synchronize clocks to a tolerance that is a very small fraction of the smallest or time-to-live.

See Also