[TIBCO.EMS .NET client library 7.0 documentation]

Sets if ExceptionListener set on the Connection should be called after fault-tolerant switch.

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

Syntax

public static void SetExceptionOnFTSwitch(
	bool callExceptionListener
)
Public Shared Sub SetExceptionOnFTSwitch ( _
	callExceptionListener As Boolean _
)
public:
static void SetExceptionOnFTSwitch(
	bool callExceptionListener
)

Parameters

callExceptionListener
Type: System..::.Boolean

When true, the connection’s ExceptionListener catches an EMSException, which contains the name of the new server.

When false, fault-tolerant failover does not trigger an exception in the client.

Remarks

This setting determines exception behavior when the client successfully switches to a different server (fault-tolerant failover).

When an application performs fault-tolerant switch it may notify the Connection's ExceptionListener by calling it with EMSException providing the information about fault-tolerant switch. If calling the Connection's ExceptionListener is set, it is called with the EMSException which has the vendor error code (EMSException.getErrorCode) set to the String in the form:

 Copy Code
FT-SWITCH: new-server-url

An application can recognize such calls by analyzing the error code in the passed EMSException and perform necessary actions. Notice that the ExceptionListener is called with the special EMSException only when fault-tolerant switch has been performed succesfully. In case the fault-tolerant switch has failed, the Connection's ExceptionListener will be called with regular EMSException (it will not have error code in the form 'FT-SWITCH: new-server-url') specifying that the connection to Server has been terminated. Notice that by default Connection's ExceptionListener is not called after a successfull fault-tolerant switch.

Note: When the exception listener is called, the exception listener is not allowed to call any EMS method. To do so in this case risks a deadlock in the client.

See Also