CMTransport

Class

Superclasses

System.Object
  Transport
    CMTransport

Visual Basic

Public Class CMTransport
  Inherits Transport

C#

public class CMTransport : Transport

Purpose

A certified delivery transport object implements the CM delivery protocol for messages.

Remarks

Each certified delivery transport employs a Transport for network communications. CMTransport adds the accounting mechanisms needed for delivery tracking and certified delivery.

Several CMTransport objects can employ a Transport, which also remains available for its own ordinary listeners and for sending ordinary messages.

Programs must explicitly destroy each certified delivery transport object. Destroying a certified delivery transport object invalidates subsequent certified send calls on that object, invalidates any certified listeners using that transport (while preserving the certified delivery agreements of those listeners).

Whether explicitly or implicitly, programs must destroy instances of this class. Rendezvous software keeps internal references to these objects, so the garbage collector does not delete them automatically.

Member

Description

 

Public Instance Properties

BaseTransport

NetTransport

The transport employed by the certified delivery transport; see CMTransport.

Get

DefaultTimeLimit double

The default message time limit (in whole seconds) for all outbound certified messages from the transport.

Every labeled message has a time limit, after which the sender no longer certifies delivery.

Sending programs can explicitly set the time limit on a CMMessage (see TimeLimit). If a time limit is not already set for the outbound message, the transport sets it to the transport’s default time limit property; if this default is not set for the transport (nor for the message), the default time limit is zero (no time limit).

Time limits represent the minimum time that certified delivery is in effect.

The time limit must be non-negative, and specifies a whole number of seconds.

Get

Set

Description string

The description identifies programs and their transports to Rendezvous components. Browser administration interfaces display the description string. (Inherited from Transport.)

As a debugging aid, we recommend setting a unique description string for each transport. Use a string that distinguishes both the application and the role of the transport within it.

Get

Set

LedgerName string

The name of the ledger file; see CMTransport.

An exception with the error code ArgumentsConflict can indicate that the transport does not have a ledger file.

Get

Name string

The correspondent name; see CMTransport.

Get

PublisherInactivityDiscardInterval int

Time limit (in whole seconds) after which a listening CM transport can discard state for inactive CM senders.

The timeout value limits the time that can elapse during which such a sender does not send a message. When the elapsed time exceeds this limit, the listening transport declares the sender inactive, and discards internal state corresponding to the sender.

The time limit must be non-negative.

Set

Warning 

We discourage programmers from using this call except to solve a very specific problem, in which a long-running CM listener program accumulates state for a large number of obsolete CM senders with non-reusable names.

Before using this call, review every subject for which the CM transport has a listener; ensure that only CM senders with non-reusable names send to those subjects. (If senders with reusable names send messages to such subjects, the listening transport can discard their state, and incorrect behavior can result.)

 

RequestOld bool

The request old messages flag of the certified delivery transport; see CMTransport.

Get

SynchronizeLedger bool

The sync ledger flag of a certified delivery transport; see CMTransport.

An exception with the error code ArgumentsConflict can indicate that the transport does not have a ledger file.

Get

Method

Description

Page

CMTransport

Create a transport for certified delivery.

CMTransport

CMTransport.AddListener

Pre-register an anticipated listener.

CMTransport.AddListener

CMTransport.AllowListener

Invite the named receiver to reinstate certified delivery for its listeners, superseding the effect of any previous disallow calls.

CMTransport.AllowListener

CMTransport.Destroy

Destroy a certified delivery transport.

CMTransport.Destroy

CMTransport.DisallowListener

Cancel certified delivery to all listeners at a specific correspondent. Deny subsequent certified delivery registration requests from those listeners.

CMTransport.DisallowListener

CMTransport.RemoveListener

Unregister a specific listener at a specific correspondent, and free associated storage in the sender’s ledger.

CMTransport.RemoveListener

CMTransport.RemoveSendState

Reclaim ledger space from obsolete subjects.

CMTransport.RemoveSendState

CMTransport.ReviewLedger

Query the ledger for stored items related to a subject name.

CMTransport.ReviewLedger

CMTransport.Send

Send a labeled message.

CMTransport.Send

CMTransport.SendReply

Send a labeled reply message.

CMTransport.SendReply

CMTransport.SendRequest

Send a labeled request message and wait for a reply.

CMTransport.SendRequest

CMTransport.SynchronizeLedgerNow

Synchronize the ledger to its storage medium.

CMTransport.SynchronizeLedgerNow

Inherited Methods

Transport.CreateInbox

Related Classes

Transport

Transport.CreateInbox

CMTransport

CMQueueTransport