TIBCO EMS .NET API 8.5 TIBCO EMS .NET API 8.5

- Main Page
- Related Pages
- Namespaces
- Classes

- Namespace List
- Namespace Members

Namespaces | Classes | Enumerations | Functions
Package TIBCO.EMS

## Namespaces
package | ADMIN
package | UFO

## Classes
class | BytesMessage
| A BytesMessage object is used to send a message containing a stream of uninterpreted bytes. It inherits from the Message interface and adds a bytes message body. The receiver of the message supplies the interpretation of the bytes. More...
class | EMSExceptionEventArgs
| Present a connection problem as a .NET event. More...
class | Connection
| A Connection object is a client's active connection to TIBCO EMS Server. More...
class | ConnectionFactory
| Administered object for creating server connections. More...
class | ConnectionMetaData
| A ConnectionMetaData object provides information describing the Connection object. More...
class | Destination
| A Destination object encapsulates a TIBCO EMS specific address. More...
class | EMSDTCConnection
| A Connection object is a client's active connection to TIBCO EMS Server. A EMSDTCConnection should be used when the client intends to participate in a MSDTC transaction (i.e. System.Transactions.Transaction) More...
class | EMSDTCConnectionFactory
| Connection factory class for creating EMSDTCConnections and subsequently EMSMSDTCSessions for participating in MSDTC distributed transactions. More...
class | EMSDTCSession
| The EMSDTCSession class represents a session of the client within the server. Only EMSDTCSession's are allowed to participate in MSDTC distributed transactions. More...
class | EMSException
| This is base class for TIBCO EMS .NET API related exceptions More...
class | SecurityException
| The method cannot complete because of a security restriction More...
class | EMSSSL
| SSL specific class that provides methods, defines and other miscellaneous constants that are used to set ssl parameters that apply across all connections. More...
class | EMSSSLFileStoreInfo
| Specifies the file store information. More...
class | EMSSSLHostNameVerifierArgs
| Specifies the host name verifier arguments More...
class | EMSSSLSystemStoreInfo
| Specifies the system store information More...
class | FederatedConnectionFactory
| The FederatedConnectionFactory class represents the connection factory entry in the naming server. A FederatedConnectionFactory object is the query result of a connection factory name lookup, the return value of the `NameSearcher.Lookup` method. More...
class | FederatedEMSDTCConnectionFactory
| The FederatedEMSDTCConnectionFactory class represents the connection factory entry in the naming server. A FederatedEMSDTCConnectionFactory object is the query result of a connection factory name lookup, the return value of the `NameSearcher.Lookup` method. More...
class | FederatedQueue
| The FederatedQueue class represents the queue entry in the naming server. A FederatedQueue object is the query result of a queue name lookup, the return value of the `NameSearcher.Lookup` method. More...
class | FederatedQueueConnectionFactory
| The FederatedQueueConnectionFactory class represents the queue connection factory entry in the naming server. A FederatedQueueConnectionFactory object is the query result of a queue connection factory name lookup, the return value of the `NameSearcher.Lookup` method. More...
class | FederatedTopic
| The FederatedTopic class represents the topic entry in the naming server. A FederatedTopic object is the query result of a topic name lookup, the return value of the `NameSearcher.Lookup` method. More...
class | FederatedTopicConnectionFactory
| The FederatedTopicConnectionFactory class represents the topic connection factory entry in the naming server. A FederatedTopicConnectionFactory object is the query result of a topic connection factory name lookup, the return value of the `NameSearcher.Lookup` method. More...
interface | ICompletionListener
| Notifies the application an asynchronous send has completed. More...
interface | IExceptionListener
| Asynchronously detect problems with connections. More...
class | InvalidClientIDException
| The provider rejects the connection's client ID More...
class | InvalidDestinationException
| The EMS Server cannot locate the destination More...
class | InvalidSelectorException
| The client passed a message selector with invalid syntax More...
class | LdapLookupConsts
| Specifies the parameters used to connect to a third-party LDAP server and lookup EMS administered objects. More...
class | LdapLookupContext
| This class provides an interface used to search for and perform queries in a third-party LDAP server for EMS administered objects. More...
class | LdapLookupSSLParams
| Provides the query client certificate callback and the server verify callback used to establish an SSL connection to the LDAP server (ldaps). More...
class | LookupContext
| Search for and perform queries on administered objects in the EMS server More...
class | LookupContextFactory
| Create ILookupContext objects More...
class | MapMessage
| A MapMessage object is used to send a set of name-value pairs. The names are String objects, and the values are primitive data types in the .NET programming language. The names must have a value that is not null, and not an empty string. The entries can be accessed sequentially or randomly by name. The order of the entries is undefined. MapMessage inherits from the Message interface and adds a message body that contains a Map. More...
class | Message
| Messages carry information among EMS client programs. More...
class | EMSMessageEventArgs
| EMSMessageHandler event argument, used in TIBCO.EMS.MessageConsumer.MessageHandler. More...
class | MessageConsumer
| A client uses a MessageConsumer object to receive messages from a destination. More...
class | MessageEOFException
| The data stream within a message ended unexpectedly More...
class | MessageFormatException
| Datatype mismatch More...
class | MessageNotReadableException
| Attempt to read from a message in write-only mode More...
class | MessageNotWriteableException
| Attempt to write to a message in read-only mode More...
class | MessageProducer
| Defines the root behavior of all message producers. More...
class | NamingException
| This is the base class for all exceptions related to name lookup requests More...
class | CommunicationException
| This exception is thrown when a lookup request returns bad data. More...
class | ConfigurationException
| This exception is thrown when the configuration of the naming service has caused failures More...
class | CannotProceedException
| This exception is thrown when the naming service cannot be proceeded because of insufficient information to resolve a lookup request. More...
class | NameNotFoundException
| The name lookup repository cannot find a name; the name is not bound More...
class | ServiceUnavailableException
| A lookup request failed because the client could not connect to the server More...
class | InvalidNameException
| In a lookup request, the name has incorrect syntax More...
class | AuthenticationException
| This exception is thrown when the client authentication to the naming server failed because of invalid authentication or insufficient privileges for a lookup request. More...
class | ObjectMessage
| An ObjectMessage object is used to send a message that contains a serializable object. More...
class | Queue
| A Queue object encapsulates a TIBCO EMS specific queue name. More...
class | QueueBrowser
| Enumerate the messages in a queue without consuming them More...
class | QueueConnection
| A QueueConnection object is an active connection to a point-to-point TIBCO EMS Server. More...
class | QueueConnectionFactory
| Backward compatibility. Administered object for creating queue connections. More...
class | QueueReceiver
| A client uses a QueueReceiver object to receive messages that have been delivered to a queue. More...
class | QueueRequestor
| This class provides a request/reply facility for messaging over a queue, using a TemporaryQueue for handling replies. More...
class | QueueSender
| A client uses a QueueSender object to send messages to a queue. More...
class | QueueSession
| Session restricted to queues More...
class | ResourceAllocationException
| Required resources are not available More...
class | Session
| A Session object is a single-threaded context for producing and consuming messages. More...
class | StreamMessage
| A StreamMessage object is used to send a stream of primitive types in the .NET programming language. It is filled and read sequentially. It inherits from the Message interface and adds a stream message body. More...
class | TemporaryQueue
| A TemporaryQueue object is a unique Queue object created for the duration of a Connection. It is a system-defined queue that can be consumed only by the Connection that created it. More...
class | TemporaryTopic
| A TemporaryTopic object is a unique Topic object created for the duration of a Connection. More...
class | TextMessage
| A TextMessage object is used to send a message containing a String. It inherits from the Message interface and adds a text message body. More...
class | DeliveryMode
| Define delivery mode constants as integers (for backward compatibility) More...
class | Tibems
| Defines miscellaneous constants and provider properties used by TIBCO Enterprise Message Service More...
class | EMSMulticastExceptionEventArgs
| Presents a multicast problem as a .NET event. More...
class | Topic
| A Topic object encapsulates a TIBCO EMS specific topic name. More...
class | TopicConnection
| A TopicConnection object is an active connection to a publish/subscribe TIBCO EMS Server. More...
class | TopicConnectionFactory
| Backward compatibility. Administered object for creating topic connections. More...
class | TopicPublisher
| A client uses a TopicPublisher object to publish messages on a topic. A TopicPublisher object is the publish-subscribe form of a message producer. More...
class | TopicRequestor
| This class provides a request/reply facility for messaging over a topic. More...
class | TopicSession
| A TopicSession object provides methods for creating TopicPublisher, TopicSubscriber. More...
class | TopicSubscriber
| A client uses a TopicSubscriber object to receive messages that have been published to a topic. More...
class | TransactionInProgressException
| This exception indicates that the transaction associated with processing of the request is in progress More...
class | TransactionRolledBackException
| An attempt to commit a transaction resulted in rollback More...

## Enumerations
enum | EMSSSLStoreType { EMSSSLStoreType.EMSSSL_STORE_TYPE_FILE = 0, EMSSSLStoreType.EMSSSL_STORE_TYPE_SYSTEM = 1, EMSSSLStoreType.EMSSSL_STORE_TYPE_DEFAULT = EMSSSL_STORE_TYPE_SYSTEM }
| Certificate Store Type to be used for reading SSL Certificates More...
enum | SessionMode { SessionMode.SessionTransacted = 0, SessionMode.AutoAcknowledge, SessionMode.ClientAcknowledge, SessionMode.DupsOkAcknowledge, SessionMode.NoAcknowledge = 22, SessionMode.ExplicitClientAcknowledge, SessionMode.ExplicitClientDupsOkAcknowledge }
| Enumerate constants associated with sessions. More...
enum | FactoryLoadBalanceMetric { FactoryLoadBalanceMetric.None = 0, FactoryLoadBalanceMetric.Connections, FactoryLoadBalanceMetric.ByteRate }
| Enum defintions for connection factory load balance metrics. More...
enum | MessageDeliveryMode { MessageDeliveryMode.NonPersistent = 1, MessageDeliveryMode.Persistent, MessageDeliveryMode.ReliableDelivery = 22 }
| Defines of the delivery modes as enum More...

## Functions
delegate void | EMSExceptionHandler (object sender, EMSExceptionEventArgs args)
| Delegate declaration for exception handler More...
delegate bool | EMSSSLHostNameVerifier (object sender, EMSSSLHostNameVerifierArgs args)
| Delegate declaration for host name verifier More...
delegate void | EMSMessageHandler (object sender, EMSMessageEventArgs args)
| Delegate declaration for message event handler More...
delegate void | EMSMulticastExceptionHandler (object sender, EMSMulticastExceptionEventArgs args)
| Delegate declaration for the multicast exception handler More...

## Enumeration Type Documentation

enum TIBCO.EMS.EMSSSLStoreType

Certificate Store Type to be used for reading SSL Certificates

Enumerator
EMSSSL_STORE_TYPE_FILE | public const to be used if the certificates are stored in a pkcs12 (aka .pfx) file.
EMSSSL_STORE_TYPE_SYSTEM | public const to be used if the certificates are store in the Microsoft certificate store.
EMSSSL_STORE_TYPE_DEFAULT | public const to be used if the certificates are stored in the Microsoft certificate store, specifying default will cause the Microsoft certificate store to be used.

enum TIBCO.EMS.FactoryLoadBalanceMetric

Enum defintions for connection factory load balance metrics.

When a connection factory balances the client load among several servers, it uses this metric to determine the least loaded server, so the connection factory can create a connection to it.

Enumerator
None | Indicate that no load balancing metric has been set for the connection factory.
Connections | Indicate that the connection factory load balances connections across multiple servers by creating a connection to the server with the fewest number of connections.
ByteRate | Indicate that the connection factory load balances connections across multiple servers by creating a connection to the server with the lowest total byte rate (input and output).

enum TIBCO.EMS.MessageDeliveryMode

Defines of the delivery modes as enum

The class DeliveryMode defines a parallel set of constants as ordinary integers. However, this MessageDeliveryMode enumeration enables .NET to do stronger type checking at compile time, which can enhance program reliability.

Enumerator
NonPersistent | Non persistent delivery
Persistent | Persistent delivery
ReliableDelivery | Reliable delivery. This delivery mode is a proprietary extension and when used offers increased performance of the message producers using this mode.

enum TIBCO.EMS.SessionMode

Enumerate constants associated with sessions.

Enumerator
SessionTransacted | The session is transacted. The IsTransacted property has this value if the session uses transaction semantics. See SESSION_TRANSACTED for more information.
AutoAcknowledge | Automatic acknowledgment. See AUTO_ACKNOWLEDGE for more information.
ClientAcknowledge | Client acknowledgment. See CLIENT_ACKNOWLEDGE for more information.
DupsOkAcknowledge | Duplication ok acknowledgment. See DUPS_OK_ACKNOWLEDGE for more information.
NoAcknowledge | Defines no acknowledge acknowledge mode. This acknowledge mode is a proprietary extension and when used offers increased performance of the message consumers. Messages delivered to the sessions using this acknowledge mode do not require acknowledgement and are never redelivered regardless if the delivery has been successfull or not. See NO_ACKNOWLEDGE for more information.
ExplicitClientAcknowledge | Defines explicit client acknowledge mode. This acknowledge mode is a proprietary extension. Sessions using this acknowledge mode must acknowledge each message explicitly calling the acknowledge() method for all messages. The application can call aknowledge() in any order. The general rule that acknowledging a message will acknowledge all previous messages does not apply. See EXPLICIT_CLIENT_ACKNOWLEDGE for more information.
ExplicitClientDupsOkAcknowledge | Defines explicit client acknowledge mode with dups_ok. This acknowledge mode is a proprietary extension. This acknowledge mode implements the same explicit acknowledge logic as the ExplicitClientAcknowledge mode. However while ExplicitClientAcknowledge guarantees the success of the acknowledge operation upon return, this mode does not and, similarly to DupsOkAcknowledge mode, acknowledges message lazily with the possibility that some acknowledged messages may be redelivered. Like for ExplicitClientAcknowledge, this mode requires an application to explicitly call acknowledge() method, in any order, for each message it wants to acknowledge. See EXPLICIT_CLIENT_DUPS_OK_ACKNOWLEDGE for more information.

## Function Documentation

delegate void TIBCO.EMS.EMSExceptionHandler | ( | object | sender,
|  | EMSExceptionEventArgs | args
| ) |  |

Delegate declaration for exception handler

Asynchronously detect problems with connections.

When a program uses a connection to send messages, the send calls can detect problems with the connection, and notify the client program by throwing exceptions. However, when a program uses a connection only to receive messages, the client cannot catch such exceptions.

This delegate provides an alternate pathway for alerting a client program of connection problems. The program implements this delegate, and registers it with the connection. When the client library detects a connection problem, it raises an event. This delegate processes the event, which contains an exception that details the problem.

EMSExceptionHandler detects this type of problem in a .NET programming idiom. In contrast, IExceptionListener mimics the way in which JMS provides similar functionality in a Java programming idiom. Programmers may select either idiom - but not both (which would cause duplicate exception processing, with undefined behavior).

Exception Event Handler Example:

...
connection.ExceptionHandler += new EMSExceptionHandler(handleEx);
...
private void handleEx(object sender, EMSExceptionEventArgs arg)
{
EMSException e = arg.Exception;
Console.WriteLine("Exception: " + e.Message);
}
...

Parameters

  sender | The source of the event, the Connection object in this case.
  args | The event argument, EMSExceptionEventArgs, that contains the exception object.

delegate void TIBCO.EMS.EMSMessageHandler | ( | object | sender,
|  | EMSMessageEventArgs | args
| ) |  |

Delegate declaration for message event handler

This delegate provides an asynchronous pathway for receiving messages. The program implements this delegate, and registers it with a MessageConsumer. When a message arrives, the client library raises an event. This delegate processes the event, which presents the message.

NOTE: The message is read-only, attempting to modify the received message in the handler will result in MessageNotWriteableException. A consumer can modify a received message after calling either the clearBody or clearProperties method to make the body or properties writable.

The EMSMessageHandler receives messages in a .NET programming idiom. In contrast, IMessageListener mimics the way in which JMS provides similar functionality in a Java programming idiom. Programmers may select either idiom - but not both (which would cause duplicate message processing, with undefined behavior).

Example Message Event Handler:

...
consumer.MessageHandler += new EMSMessageHandler(handleMsg);
...
private void handleMsg(object sender, EMSMessageEventArgs arg)
{
Message m = arg.Message;
Console.WriteLine("Received message: " + m);
...
}
...

Serialization

In compliance with the JMS specification, sessions distribute messages to listeners and event handler delegates in serial (non-concurrent) fashion.

Parameters

  sender | The source of the event. It can be either the MessageConsumer object or the Session object depending on to which object is the message handler registered.
  args | The event argument, EMSMessageEventArgs

delegate void TIBCO.EMS.EMSMulticastExceptionHandler | ( | object | sender,
|  | EMSMulticastExceptionEventArgs | args
| ) |  |

Delegate declaration for the multicast exception handler

Asynchronously detect problems with connections.

When a program uses EMS mutlicast, EMS can detect problems with multicast and notify the client program by throwing exceptions or invoking this delegate.

This delegate provides a pathway for alerting a client program of multicast problems. The program implements this delegate, and registers it. When the client library detects or is notified of a multicast problem, it raises an event. This delegate processes the event, which contains an exception that details the problem.

EMSMulticastExceptionHandler detects this type of problem in a .NET programming idiom.

Multicast Exception Event Handler Example:

...
Tibems.MulitcastExceptionHandler += new EMSMulticastExceptionHandler(handleEx);
...
private void handleEx(object sender, EMSMulticastExceptionEventArgs arg)
{
EMSException e = arg.Exception;
Console.WriteLine("Exception: " + e.Message);
}
...

Parameters

  sender | The source of the event, the Connection object in this case.
  args | The event argument, EMSExceptionEventArgs, that contains the exception object.

Deprecated:
  As of release 8.3

delegate bool TIBCO.EMS.EMSSSLHostNameVerifier | ( | object | sender,
|  | EMSSSLHostNameVerifierArgs | args
| ) |  |

Delegate declaration for host name verifier

The user can perform any necessary specific validations in the host name verifier delegate, returning false will cause the SSL handshake to terminate, returning true will cause the SSL handshake to continue.

Parameters

  sender | The source of the event.
  args | The event argument, EMSSSLHostNameVerifierArgs