UM .NET API 6.17.1

- Main Page
- Related Pages
- Packages
- Classes

- Class List
- Class Hierarchy
- Class Members

Classes | Public Member Functions | List of all members
com.latencybusters.lbm.LBMContext Class Reference

Creates an LBM context. More...

Inheritance diagram for com.latencybusters.lbm.LBMContext:

## Classes
struct | lbm_umq_msgid_t
struct | ume_liveness_receiving_context_t

## Public Member Functions
| LBMContext ()
| Instantiate an LBMContext object using default attributes. More...
| LBMContext (LBMContextAttributes lbmcattr)
| Instantiate an LBMContext object using given attributes. More...
void | close ()
| Close and dispose of this context. More...
unsafe List< LBMConfigOption > | dumpAttributeList ()
| Returns an array of context attributes in LBConfigOption. More...
string | getAttributeValue (string attributeName)
| Returns the value of a context-related attribute for this context. More...
void | setAttributeValue (string attributeName, string attributeValue)
| Set the value of a context-related attribute for this context. More...
void | processEvents (long msec)
| Process internal events in the given LBM context object. More...
void | processEvents (long msec, int flags)
| Process internal events in the given LBM context object. More...
void | processEvents (long msec, int flags, UInt32 tv_sec, UInt32 tv_usec)
| Process internal events in the given LBM context object. More...
void | unblockProcessEvents ()
| Unblock processEvents call. More...
LBMTopic | lookupTopic (string symbol)
| Create an LBMTopic object (useable for an LBM receiver) for a given topic name. Topic strings should be limited in length to 246 characters (not including the final null). More...
LBMTopic | lookupTopic (string symbol, LBMReceiverAttributes lbmrattr)
| Create an LBMTopic object (useable for an LBM receiver) for given topic name and attributes. Topic strings should be limited in length to 246 characters (not including the final null). More...
LBMTopic | allocTopic (string symbol)
| Create an LBMTopic object (useable for an LBM source) for given topic name and attributes. Topic strings should be limited in length to 246 characters (not including the final null). More...
LBMTopic | allocTopic (string symbol, LBMSourceAttributes lbmsattr)
| Create an LBMTopic object (useable for an LBM source) for given topic name and attributes. Topic strings should be limited in length to 246 characters (not including the final null). More...
void | enableImmediateMessageReceiver ()
| Enable LBM to receive non-topic immediate messages. More...
void | enableImmediateMessageReceiver (LBMEventQueue lbmevq)
| Enable LBM to receive non-topic immediate messages (using an event queue). More...
void | addImmediateMessageReceiver (LBMImmediateMessageCallback cb)
| Register a callback for handling of non-topic immediate messages. More...
void | addImmediateMessageReceiver (LBMImmediateMessageCallback cb, object cbArg)
| Register a callback for handling of non-topic immediate messages. More...
void | removeImmediateMessageReceiver (LBMImmediateMessageCallback cb)
| Deregister a non-topic, immediate message callback. More...
void | removeImmediateMessageReceiver (LBMImmediateMessageCallback cb, object cbArg)
| Deregister a non-topic, immediate message callback. More...
void | send (string target, string topic, byte[] data, int dataLength, int flags)
| Send a unicast immediate message to the target and topic. More...
void | sendTopicless (string target, byte[] data, int dataLength, int flags)
| Send a topicless unicast immediate message to the target. More...
void | sendc (char[] target, char[] topic, byte[] data, int dataLength, int flags)
| Send a unicast immediate message to the target and topic. More...
void | sendTopicless (char[] target, byte[] data, int dataLength, int flags)
| Send a topicless unicast immediate message to the target. More...
void | send (string target, string topic, LBMRequest lbmreq, LBMEventQueue lbmevq, int flags)
| Send a unicast immediate request message to the target and topic. More...
void | send (string target, string topic, LBMRequest lbmreq, int flags)
| Send a unicast immediate request message to the target and topic. More...
void | send (string topic, byte[] data, int dataLength, int flags)
| Send a multicast immediate message to a specific topic. More...
void | sendc (char[] topic, byte[] data, int dataLength, int flags)
| Send a multicast immediate message to a specific topic. More...
void | sendTopicless (byte[] data, int dataLength, int flags)
| Send a topicless multicast immediate message. More...
void | send (string topic, LBMRequest lbmreq, LBMEventQueue lbmevq, int flags)
| Send a multicast immediate request to a specific topic (specifying an Event Queue for processing of the response(s)) More...
void | send (string topic, LBMRequest lbmreq, int flags)
| Send a multicast immediate request to a specific topic. More...
void | send (string queue, string topic, byte[] data, int dataLength, int flags, LBMSourceSendExInfo exinfo)
| Send a multicast immediate message on a specific topic to a queue. (UMQ only) More...
LBMTimer | createTimer (long milliseconds)
| Create an LBM Timer object. More...
LBMTimer | createTimer (long milliseconds, LBMEventQueue lbmevq)
| Creates a timer associated with this context and a specified event queue that expires with a specified delay. More...
LBMTimer | createTimer (long milliseconds, LBMTimerCallback cb, Object cbArg)
| Creates a timer associated with this context that expires with specified delay. More...
LBMTimer | createTimer (long milliseconds, LBMTimerCallback cb, object cbArg, LBMEventQueue lbmevq)
| Creates a timer associated with this context and a specified event queue that expires with a specified delay. More...
LBMTimer | scheduleTimer (long milliseconds)
| Create an LBM Timer object and retains an internal reference to it. This prevents the timer from being reclaimed by the garbage collector before it expires. More...
LBMTimer | scheduleTimer (long milliseconds, LBMEventQueue lbmevq)
| Creates a timer associated with this context and a specified event queue that expires with a specified delay, and retains an internal reference to it. This prevents the timer from being reclaimed by the garbage collector before it expires. More...
LBMTimer | scheduleTimer (long milliseconds, LBMTimerCallback cb, Object cbArg)
| Creates a timer associated with this context that expires with specified delay, and retains an internal reference to it. This prevents the timer from being reclaimed by the garbage collector before it expires. More...
LBMTimer | scheduleTimer (long milliseconds, LBMTimerCallback cb, Object cbArg, LBMEventQueue lbmevq)
| Creates a timer associated with this context and a specified event queue that expires with a specified delay. This prevents the timer from being reclaimed by the garbage collector before it expires. More...
LBMSource | createSource (LBMTopic lbmtopic)
| Create an LBM Source object associated with this context and a given topic. More...
LBMSource | createSource (LBMTopic lbmtopic, LBMSourceEventCallback cb, object cbArg)
| Create an LBM Source object associated with this context and a given topic. More...
LBMSource | createSource (LBMTopic lbmtopic, LBMEventQueue lbmevq)
| Create an LBM Source object associated with this given context and a given topic and event queue. More...
LBMSource | createSource (LBMTopic lbmtopic, LBMSourceEventCallback cb, object cbArg, LBMEventQueue lbmevq)
| Create an LBM Source object associated with this context and a given topic and event queue. More...
LBMHotFailoverSource | createHotFailoverSource (LBMTopic lbmtopic)
| Create an LBM Hot-Failover Source object associated with this context and a given topic. More...
LBMHotFailoverSource | createHotFailoverSource (LBMTopic lbmtopic, LBMSourceEventCallback cb, object cbArg)
| Create an LBM Hot-Failover Source object associated with this context and a given topic. More...
LBMHotFailoverSource | createHotFailoverSource (LBMTopic lbmtopic, LBMEventQueue lbmevq)
| Create an LBM Hot-Failover Source object associated with this given context and a given topic and event queue. More...
LBMHotFailoverSource | createHotFailoverSource (LBMTopic lbmtopic, LBMSourceEventCallback cb, object cbArg, LBMEventQueue lbmevq)
| Create an LBM Hot-Failover Source object associated with this context and a given topic and event queue. More...
LBMReceiver | createReceiver (LBMTopic lbmtopic)
| Create an LBM Receiver object associated with this context and a given topic. More...
LBMReceiver | createReceiver (LBMTopic lbmtopic, LBMEventQueue lbmevq)
| Create an LBM Receiver object associated with this context and a given topic and event queue. More...
LBMReceiver | createReceiver (LBMTopic lbmtopic, LBMReceiverCallback cb, object cbArg)
| Create an LBM Receiver object associated with this context and a given topic. More...
LBMReceiver | createReceiver (LBMTopic lbmtopic, LBMReceiverCallback cb, object cbArg, LBMEventQueue lbmevq)
| Create an LBM Receiver object associated with this context and a given topic and event queue. More...
LBMHotFailoverReceiver | createHotFailoverReceiver (LBMTopic lbmtopic)
| Create an LBM Hot-Failover Receiver object associated with this context and a given topic. More...
LBMHotFailoverReceiver | createHotFailoverReceiver (LBMTopic lbmtopic, LBMEventQueue lbmevq)
| Create an LBM Hot-Failover Receiver object associated with this context and a given topic and event queue. More...
LBMHotFailoverReceiver | createHotFailoverReceiver (LBMTopic lbmtopic, LBMReceiverCallback cb, object cbArg)
| Create an LBM Hot-Failover Receiver object associated with this context and a given topic. More...
LBMHotFailoverReceiver | createHotFailoverReceiver (LBMTopic lbmtopic, LBMReceiverCallback cb, object cbArg, LBMEventQueue lbmevq)
| Create an LBM Hot-Failover Receiver object associated with this context and a given topic and event queue. More...
void | addSourceNotifyCallback (LBMSourceNotification cb)
| Register a callback interface to be called when a new source is seen for any topic. More...
void | addSourceNotifyCallback (LBMSourceNotification cb, object cbArg)
| Register a callback interface (and a callback handle argument) to be called when a new source is seen for any topic. More...
void | removeSourceNotifyCallback (LBMSourceNotification cb)
| Deregister a source notification callback. More...
LBMContextStatistics | getStatistics ()
| Return the current set of statistics for this context. More...
void | resetStatistics ()
| This will reset the statistics for this context at the c layer. Invalid argument or unexpected operational behavior has been encountered by unmanaged LBM C layer function.
LBMSourceStatistics | getSourceStatistics (int maxStats)
| Return the aggregate set of source transport statistics for this context. More...
void | resetSourceStatistics ()
| This will reset the transport statistics for all sources in this context. More...
LBMReceiverStatistics | getReceiverStatistics (int maxStats)
| Return the aggregate set of receiver transport statistics for this context. More...
void | resetReceiverStatistics ()
| This will reset the transport stats for all receivers in this context. More...
LBMImmediateMessageSourceStatistics | getImmediateMessageSourceStatistics (int maxStats)
| Return the immediate message source statistics for this context. More...
void | resetImmediateMessageSourceStatistics ()
| This will reset the immediate message source transport statistics for this context. More...
LBMImmediateMessageReceiverStatistics | getImmediateMessageReceiverStatistics (int maxStats)
| Return the immediate message source statistics for this context. More...
void | resetImmediateMessageReceiverStatistics ()
| Reset the immediate message receiver transport statistics for this context.
int | getUMQInflight (string queue)
| Get the current UMQ inflight value for this context. More...
int | setUMQInflight (string queue, LBMSetInflightCallback cb, object cbObj)
| Set the current UMQ inflight value for this context. This function is deprecated. More...
void | setUMQMessageStable (string queue, UMQMessageId msg_id)
| Mark a specific msg_id as stable, triggering an event if configured to do so, and adjusting the inflight if necessary. This function is deprecated. More...
void | requestTopicResolution (ushort flags, uint interval_msec, uint duration_sec)
| Request Topic Advertisements (sources), Topic Queries (receivers), and/or Wildcard Topic Queries (wildcard receivers) in the configured topic resolution address domain. More...
void | removeSourceNotifyCallback (LBMSourceNotification cb, object cbArg)
| Deregister a source notification callback. More...
void | Dispose ()
| Same as close. More...

## Detailed Description

Creates an LBM context.

This creates an instance of the LBM main processing element, an LBM context. Sources and Receivers are created from an LBM context and work within that context. For the Embedded operational mode, a thread is spawned to handle message processing.

## Constructor & Destructor Documentation

com.latencybusters.lbm.LBMContext.LBMContext | ( |  | ) |

Instantiate an LBMContext object using default attributes.

Exceptions

  com.latencybusters.lbm.LBMException | Invalid argument or unexpected operational behavior has been encountered by unmanaged LBM C layer function.

com.latencybusters.lbm.LBMContext.LBMContext | ( | LBMContextAttributes | lbmcattr | ) |

Instantiate an LBMContext object using given attributes.

Parameters

  lbmcattr | LBMContextAttributes used to initialize the context

Exceptions

  com.latencybusters.lbm.LBMException | Invalid argument or unexpected operational behavior has been encountered by unmanaged LBM C layer function.

References com.latencybusters.lbm.LBM.errorMessage(), com.latencybusters.lbm.LBM.errorNumber(), com.latencybusters.lbm.LBM.LBM_RESOLVER_EVENT_ADVERTISEMENT_TYPE, and com.latencybusters.lbm.LBMSourceNotification().

## Member Function Documentation

void com.latencybusters.lbm.LBMContext.addImmediateMessageReceiver | ( | LBMImmediateMessageCallback | cb | ) |

Register a callback for handling of non-topic immediate messages.

Note
  Reception of non-topic immediate messages is disabled by default and may be enabled only by calling enableImmediateMessageReceiver.

See also
  enableImmediateMessageReceiver
  LBMImmediateMessageCallback
  removeImmediateMessageReceiver

Parameters

  cb | Object implementing the LBMImmediateMessageCallback delegate interface

void com.latencybusters.lbm.LBMContext.addImmediateMessageReceiver | ( | LBMImmediateMessageCallback | cb,
|  | object | cbArg
| ) |  |

Register a callback for handling of non-topic immediate messages.

Note
  Reception of non-topic immediate messages is disabled by default and may be enabled only by calling enableImmediateMessageReceiver

See also
  LBMImmediateMessageCallback
  removeImmediateMessageReceiver

Parameters

  cb | Callback implementing the LBMImmediateMessageCallback delegate interface
  cbArg | Callback token object

void com.latencybusters.lbm.LBMContext.addSourceNotifyCallback | ( | LBMSourceNotification | cb | ) |

Register a callback interface to be called when a new source is seen for any topic.

This callback is called directly in line and does not use the event queue; therefore, the callback function used should not block or it will block the context thread processing. This facility is disabled by default and may be enabled by calling the LBMContextAttributes.enableSourceNotification method prior to instantiation of LBMContext.

See also
  LBMSourceNotification
  removeSourceNotifyCallback

Parameters

  cb | Callback implementing the LBMSourceNotification delegate interface

void com.latencybusters.lbm.LBMContext.addSourceNotifyCallback | ( | LBMSourceNotification | cb,
|  | object | cbArg
| ) |  |

Register a callback interface (and a callback handle argument) to be called when a new source is seen for any topic.

This callback is called directly in line and does not use the event queue; therefore, the callback function used should not block or it will block the context thread processing. This facility is disabled by default and may be enabled by calling the LBMContextAttributes.enableSourceNotification method prior to instantiation of LBMContext.

See also
  LBMSourceNotification
  removeSourceNotifyCallback

Parameters

  cb | Callback implementing the LBMSourceNotification delegate interface
  cbArg | Callback object passed as a token to the callback interface

LBMTopic com.latencybusters.lbm.LBMContext.allocTopic | ( | string | symbol | ) |

Create an LBMTopic object (useable for an LBM source) for given topic name and attributes. Topic strings should be limited in length to 246 characters (not including the final null).

Parameters

  symbol | Topic name string

Returns
  LBMTopic object for specified topic name and attributes

LBMTopic com.latencybusters.lbm.LBMContext.allocTopic | ( | string | symbol,
|  | LBMSourceAttributes | lbmsattr
| ) |  |

Create an LBMTopic object (useable for an LBM source) for given topic name and attributes. Topic strings should be limited in length to 246 characters (not including the final null).

Warning: It is not safe to call this method from a context thread callback.

Parameters

  symbol | Topic name string
  lbmsattr | LBMSourceAttributes object

Returns
  LBMTopic object for specified topic name and attributes

References com.latencybusters.lbm.LBMImmediateMessageCallback(), and com.latencybusters.lbm.LBMObjectRecyclerBase.retrieveMessage().

void com.latencybusters.lbm.LBMContext.close | ( |  | ) |

Close and dispose of this context.

Warning: It is not safe to call this method from a context thread callback.

Exceptions

  com.latencybusters.lbm.LBMException | Invalid argument or unexpected operational behavior has been encountered by unmanaged LBM C layer function.

LBMHotFailoverReceiver com.latencybusters.lbm.LBMContext.createHotFailoverReceiver | ( | LBMTopic | lbmtopic | ) |

Create an LBM Hot-Failover Receiver object associated with this context and a given topic.

Warning: It is not safe to call this method from a context thread callback.

Parameters

  lbmtopic | LBMTopic used to initialize the receiver

Returns
  LBMHotFailoverReceiver object

LBMHotFailoverReceiver com.latencybusters.lbm.LBMContext.createHotFailoverReceiver | ( | LBMTopic | lbmtopic,
|  | LBMEventQueue | lbmevq
| ) |  |

Create an LBM Hot-Failover Receiver object associated with this context and a given topic and event queue.

Warning: It is not safe to call this method from a context thread callback.

Parameters

  lbmtopic | LBMTopic used to initialize the receiver
  lbmevq | Event queue with which to associate the receiver (all receiver events will be posted to this event queue)

Returns
  LBMReceiver object

LBMHotFailoverReceiver com.latencybusters.lbm.LBMContext.createHotFailoverReceiver | ( | LBMTopic | lbmtopic,
|  | LBMReceiverCallback | cb,
|  | object | cbArg
| ) |  |

Create an LBM Hot-Failover Receiver object associated with this context and a given topic.

Warning: It is not safe to call this method from a context thread callback.

Parameters

  lbmtopic | LBMTopic used to initialize the receiver
  cb | Callback implementing the LBMReceiverCallback delegate interface
  cbArg | Callback object passed as token to callback interface

Returns
  LBMHotFailoverReceiver object

LBMHotFailoverReceiver com.latencybusters.lbm.LBMContext.createHotFailoverReceiver | ( | LBMTopic | lbmtopic,
|  | LBMReceiverCallback | cb,
|  | object | cbArg,
|  | LBMEventQueue | lbmevq
| ) |  |

Create an LBM Hot-Failover Receiver object associated with this context and a given topic and event queue.

Warning: It is not safe to call this method from a context thread callback.

Parameters

  lbmtopic | LBMTopic used to initialize the receiver
  cb | Callback implementing the LBMReceiverCallback delegate interface
  cbArg | Callback object passed as token to callback interface
  lbmevq | Event queue with which to associate the receiver (all receiver events will be posted to this event queue)

Returns
  LBMReceiver object

LBMHotFailoverSource com.latencybusters.lbm.LBMContext.createHotFailoverSource | ( | LBMTopic | lbmtopic | ) |

Create an LBM Hot-Failover Source object associated with this context and a given topic.

Warning: It is not safe to call this method from a context thread callback.

Parameters

  lbmtopic | LBMTopic used to initialize the source.

Returns
  LBMHotFailoverSource object

LBMHotFailoverSource com.latencybusters.lbm.LBMContext.createHotFailoverSource | ( | LBMTopic | lbmtopic,
|  | LBMSourceEventCallback | cb,
|  | object | cbArg
| ) |  |

Create an LBM Hot-Failover Source object associated with this context and a given topic.

Warning: It is not safe to call this method from a context thread callback.

Parameters

  lbmtopic | LBMTopic used to initialize the source
  cb | Callback implementing the LBMSourceEventCallback delegate interface
  cbArg | Callback token object

Returns
  LBMHotFailoverSource object

LBMHotFailoverSource com.latencybusters.lbm.LBMContext.createHotFailoverSource | ( | LBMTopic | lbmtopic,
|  | LBMEventQueue | lbmevq
| ) |  |

Create an LBM Hot-Failover Source object associated with this given context and a given topic and event queue.

Warning: It is not safe to call this method from a context thread callback.

Parameters

  lbmtopic | LBMTopic used to initialize the source
  lbmevq | vent queue with which to associate the source (all source events will be posted to this event queue)

Returns
  LBMHotFailoverSource object

LBMHotFailoverSource com.latencybusters.lbm.LBMContext.createHotFailoverSource | ( | LBMTopic | lbmtopic,
|  | LBMSourceEventCallback | cb,
|  | object | cbArg,
|  | LBMEventQueue | lbmevq
| ) |  |

Create an LBM Hot-Failover Source object associated with this context and a given topic and event queue.

Warning: It is not safe to call this method from a context thread callback.

Parameters

  lbmtopic | LBMTopic used to initialize the source
  cb | Callback implementing the LBMSourceEventCallback delegate interface
  cbArg | Callback token object
  lbmevq | Event queue with which to associate the source (all source events will be posted to this event queue)

Returns
  LBMHotFailoverSource object

LBMReceiver com.latencybusters.lbm.LBMContext.createReceiver | ( | LBMTopic | lbmtopic | ) |

Create an LBM Receiver object associated with this context and a given topic.

Warning: It is not safe to call this method from a context thread callback.

Parameters

  lbmtopic | LBMTopic used to initialize the receiver

Returns
  LBMReceiver object

LBMReceiver com.latencybusters.lbm.LBMContext.createReceiver | ( | LBMTopic | lbmtopic,
|  | LBMEventQueue | lbmevq
| ) |  |

Create an LBM Receiver object associated with this context and a given topic and event queue.

Warning: It is not safe to call this method from a context thread callback.

Parameters

  lbmtopic | LBMTopic used to initialize the receiver
  lbmevq | Event queue with which to associate the receiver (all receiver events will be posted to this event queue)

Returns
  LBMReceiver object

LBMReceiver com.latencybusters.lbm.LBMContext.createReceiver | ( | LBMTopic | lbmtopic,
|  | LBMReceiverCallback | cb,
|  | object | cbArg
| ) |  |

Create an LBM Receiver object associated with this context and a given topic.

Warning: It is not safe to call this method from a context thread callback.

Parameters

  lbmtopic | LBMTopic used to initialize the receiver
  cb | Callback implementing the LBMReceiverCallback delegate interface
  cbArg | Callback object passed as token to callback interface

Returns
  LBMReceiver object

LBMReceiver com.latencybusters.lbm.LBMContext.createReceiver | ( | LBMTopic | lbmtopic,
|  | LBMReceiverCallback | cb,
|  | object | cbArg,
|  | LBMEventQueue | lbmevq
| ) |  |

Create an LBM Receiver object associated with this context and a given topic and event queue.

Warning: It is not safe to call this method from a context thread callback.

Parameters

  lbmtopic | LBMTopic used to initialize the receiver
  cb | Callback implementing the LBMReceiverCallback delegate interface
  cbArg | Callback object passed as token to callback interface
  lbmevq | Event queue with which to associate the receiver (all receiver events will be posted to this event queue)

Returns
  LBMReceiver object

LBMSource com.latencybusters.lbm.LBMContext.createSource | ( | LBMTopic | lbmtopic | ) |

Create an LBM Source object associated with this context and a given topic.

Warning: It is not safe to call this method from a context thread callback.

Parameters

  lbmtopic | LBMTopic used to initialize the source.

Returns
  LBMSource object

LBMSource com.latencybusters.lbm.LBMContext.createSource | ( | LBMTopic | lbmtopic,
|  | LBMSourceEventCallback | cb,
|  | object | cbArg
| ) |  |

Create an LBM Source object associated with this context and a given topic.

Warning: It is not safe to call this method from a context thread callback.

Parameters

  lbmtopic | LBMTopic used to initialize the source
  cb | Callback implementing the LBMSourceEventCallback delegate interface
  cbArg | Callback token object

Returns
  LBMSource object

LBMSource com.latencybusters.lbm.LBMContext.createSource | ( | LBMTopic | lbmtopic,
|  | LBMEventQueue | lbmevq
| ) |  |

Create an LBM Source object associated with this given context and a given topic and event queue.

Warning: It is not safe to call this method from a context thread callback.

Parameters

  lbmtopic | LBMTopic used to initialize the source
  lbmevq | vent queue with which to associate the source (all source events will be posted to this event queue)

Returns
  LBMSource object

LBMSource com.latencybusters.lbm.LBMContext.createSource | ( | LBMTopic | lbmtopic,
|  | LBMSourceEventCallback | cb,
|  | object | cbArg,
|  | LBMEventQueue | lbmevq
| ) |  |

Create an LBM Source object associated with this context and a given topic and event queue.

Warning: It is not safe to call this method from a context thread callback.

Parameters

  lbmtopic | LBMTopic used to initialize the source
  cb | Callback implementing the LBMSourceEventCallback delegate interface
  cbArg | Callback token object
  lbmevq | Event queue with which to associate the source (all source events will be posted to this event queue)

Returns
  LBMSource object

LBMTimer com.latencybusters.lbm.LBMContext.createTimer | ( | long | milliseconds | ) |

Create an LBM Timer object.

References to timers created using this method are not maintained internally. If the timer returned by this method goes out of scope and is reclaimed by the garbage collector, callbacks registered for this timer will not execute. To create a timer with an internally maintained reference, see the scheduleTimer method.

Parameters

  milliseconds | Number of milliseconds until the timer expires

Returns
  LBMTimer object

LBMTimer com.latencybusters.lbm.LBMContext.createTimer | ( | long | milliseconds,
|  | LBMEventQueue | lbmevq
| ) |  |

Creates a timer associated with this context and a specified event queue that expires with a specified delay.

References to timers created using this method are not maintained internally. If the timer returned by this method goes out of scope and is reclaimed by the garbage collector, callbacks registered for this timer will not execute. To create a timer with an internally maintained reference, see the scheduleTimer method.

Parameters

  milliseconds | Number of milliseconds until the timer expires
  lbmevq | Event queue with with which to associate this timer (the timer events will be posted to this event queue)

Returns
  LBMTimer object

LBMTimer com.latencybusters.lbm.LBMContext.createTimer | ( | long | milliseconds,
|  | LBMTimerCallback | cb,
|  | Object | cbArg
| ) |  |

Creates a timer associated with this context that expires with specified delay.

References to timers created using this method are not maintained internally. If the timer returned by this method goes out of scope and is reclaimed by the garbage collector, callbacks registered for this timer will not execute. To create a timer with an internally maintained reference, see the scheduleTimer method.

Parameters

  milliseconds | Number of milliseconds until the timer expires
  cb | Callback implementing the LBMTimerCallback delegate interface
  cbArg | Callback object passed as token to callback interface

Returns
  LBMTimer object

LBMTimer com.latencybusters.lbm.LBMContext.createTimer | ( | long | milliseconds,
|  | LBMTimerCallback | cb,
|  | object | cbArg,
|  | LBMEventQueue | lbmevq
| ) |  |

Creates a timer associated with this context and a specified event queue that expires with a specified delay.

References to timers created using this method are not maintained internally. If the timer returned by this method goes out of scope and is reclaimed by the garbage collector, callbacks registered for this timer will not execute. To create a timer with an internally maintained reference, see the scheduleTimer method.

Parameters

  milliseconds | Number of milliseconds until the timer expires
  cb | Callback implementing the LBMTimerCallback delegate interface
  cbArg | Callback object passed as token to callback interface
  lbmevq | Event queue with with which to associate this timer (the timer events will be posted to this event queue)

Returns
  LBMTimer object

void com.latencybusters.lbm.LBMContext.Dispose | ( |  | ) |

Same as close.

See also
  close

References com.latencybusters.lbm.LBM.errorMessage(), and com.latencybusters.lbm.LBM.errorNumber().

unsafe List<LBMConfigOption> com.latencybusters.lbm.LBMContext.dumpAttributeList | ( |  | ) |

Returns an array of context attributes in LBConfigOption.

Exceptions

  com.latencybusters.lbm.LBMException | Invalid argument or unexpected operational behavior has been encountered by unmanaged LBM C layer function.

Returns
  Returns an array of context attributes in LBConfigOption

References com.latencybusters.lbm.LBM.errorMessage(), com.latencybusters.lbm.LBM.errorNumber(), com.latencybusters.lbm.LBMConfigOption.OptionName, com.latencybusters.lbm.LBMConfigOption.Type, and com.latencybusters.lbm.LBMConfigOption.Value.

void com.latencybusters.lbm.LBMContext.enableImmediateMessageReceiver | ( |  | ) |

Enable LBM to receive non-topic immediate messages.

This method does not establish a callback handler. The callback to handle immediate messages should be established using addImmediateMessageReceiver.

See also
  addImmediateMessageReceiver

void com.latencybusters.lbm.LBMContext.enableImmediateMessageReceiver | ( | LBMEventQueue | lbmevq | ) |

Enable LBM to receive non-topic immediate messages (using an event queue).

This method does not establish a callback handler. The callback to handle immediate messages should be established using addImmediateMessageReceiver.

See also
  addImmediateMessageReceiver

Parameters

  lbmevq | LBMEventQueue on which to process responses (may be null if not using an event queue)

Exceptions

  com.latencybusters.lbm.LBMException | Invalid argument or unexpected operational behavior has been encountered by unmanaged LBM C layer function.

References com.latencybusters.lbm.LBM.errorMessage(), and com.latencybusters.lbm.LBM.errorNumber().

string com.latencybusters.lbm.LBMContext.getAttributeValue | ( | string | attributeName | ) |

Returns the value of a context-related attribute for this context.

Parameters

  attributeName | Name of the attribute to retrieve

Exceptions

  com.latencybusters.lbm.LBMException | Invalid argument or unexpected operational behavior has been encountered by unmanaged LBM C layer function.

Returns
  Value corresponding to the specified attribute name

References com.latencybusters.lbm.LBM.errorMessage(), and com.latencybusters.lbm.LBM.errorNumber().

LBMImmediateMessageReceiverStatistics com.latencybusters.lbm.LBMContext.getImmediateMessageReceiverStatistics | ( | int | maxStats | ) |

Return the immediate message source statistics for this context.

Parameters

  maxStats | Maximum number of sources

Returns
  LBMImmediateMessageSourceStatistics object containing the statistics corresponding to this context

References com.latencybusters.lbm.LBMImmediateMessageReceiverStatistics.refresh(), and com.latencybusters.lbm.LBMObjectRecyclerBase.retrieveImmediateMessageReceiverStatistics().

LBMImmediateMessageSourceStatistics com.latencybusters.lbm.LBMContext.getImmediateMessageSourceStatistics | ( | int | maxStats | ) |

Return the immediate message source statistics for this context.

Parameters

  maxStats | Maximum number of sources

Returns
  LBMImmediateMessageSourceStatistics object containing the statistics corresponding to this context

References com.latencybusters.lbm.LBMImmediateMessageSourceStatistics.refresh(), and com.latencybusters.lbm.LBMObjectRecyclerBase.retrieveImmediateMessageSourceStatistics().

LBMReceiverStatistics com.latencybusters.lbm.LBMContext.getReceiverStatistics | ( | int | maxStats | ) |

Return the aggregate set of receiver transport statistics for this context.

Parameters

  maxStats | Maximum number of sources

Returns
  LBMReceiverStatistics object containing the statistics corresponding to the specified number of sources

References com.latencybusters.lbm.LBMReceiverStatistics.refresh(), and com.latencybusters.lbm.LBMObjectRecyclerBase.retrieveReceiverStatistics().

LBMSourceStatistics com.latencybusters.lbm.LBMContext.getSourceStatistics | ( | int | maxStats | ) |

Return the aggregate set of source transport statistics for this context.

Parameters

  maxStats | Maximum number of sources

Returns
  LBMReceiverStatistics object containing the statistics corresponding to the specified number of sources

References com.latencybusters.lbm.LBMSourceStatistics.refresh(), and com.latencybusters.lbm.LBMObjectRecyclerBase.retrieveSourceStatistics().

LBMContextStatistics com.latencybusters.lbm.LBMContext.getStatistics | ( |  | ) |

Return the current set of statistics for this context.

Returns
  LBMContextStatistics object containing the statistics corresponding to this context

References com.latencybusters.lbm.LBMContextStatistics.refresh(), and com.latencybusters.lbm.LBMObjectRecyclerBase.retrieveContextStatistics().

int com.latencybusters.lbm.LBMContext.getUMQInflight | ( | string | queue | ) |

Get the current UMQ inflight value for this context.

Parameters

  queue | Name of the queue

Exceptions

  com.latencybusters.lbm.LBMException | if an error occurs while retrieving the inflight value

Returns
  the inflight value

LBMTopic com.latencybusters.lbm.LBMContext.lookupTopic | ( | string | symbol | ) |

Create an LBMTopic object (useable for an LBM receiver) for a given topic name. Topic strings should be limited in length to 246 characters (not including the final null).

Warning: It is not safe to call this method from a context thread callback.

Parameters

  symbol | Topic name string

Returns
  LBMTopic object for specified topic name

LBMTopic com.latencybusters.lbm.LBMContext.lookupTopic | ( | string | symbol,
|  | LBMReceiverAttributes | lbmrattr
| ) |  |

Create an LBMTopic object (useable for an LBM receiver) for given topic name and attributes. Topic strings should be limited in length to 246 characters (not including the final null).

Warning: It is not safe to call this method from a context thread callback.

Parameters

  symbol | Topic name string
  lbmrattr | lbmrattr LBMReceiverAttributes object

Returns
  LBMTopic object for specified topic name and attributes

void com.latencybusters.lbm.LBMContext.processEvents | ( | long | msec | ) |

Process internal events in the given LBM context object.

When the operational mode is set to "sequential", it is the responsibility of the application to explicitly process events for the LBM context. This method will process timers and API timer and file descriptor/socket events.

Warning: It is not safe to call this method from a context thread callback.

Parameters

  msec | Continue event processing loop for at least msec milliseconds before returning.

Exceptions

  com.latencybusters.lbm.LBMException | Invalid argument or unexpected operational behavior has been encountered by unmanaged LBM C layer function.

References com.latencybusters.lbm.LBM.errorMessage(), and com.latencybusters.lbm.LBM.errorNumber().

void com.latencybusters.lbm.LBMContext.processEvents | ( | long | msec,
|  | int | flags
| ) |  |

Process internal events in the given LBM context object.

When the operational mode is set to "sequential", it is the responsibility of the application to explicitly process events for the LBM context. This method will process timers and API timer and file descriptor/socket events.

Warning: It is not safe to call this method from a context thread callback.

LBM.PROC_EVENT_EX_FLAG_NO_MAIN_LOOP_MUTEX

Parameters

  msec | Continue event processing loop for at least msec milliseconds before returning.
  flags | Flags to select various features.

Exceptions

  com.latencybusters.lbm.LBMException | Invalid argument or unexpected operational behavior has been encountered by unmanaged LBM C layer function.

References com.latencybusters.lbm.LBM.EINVAL, com.latencybusters.lbm.LBM.errorMessage(), com.latencybusters.lbm.LBM.errorNumber(), com.latencybusters.lbm.LBM.PROC_EVENT_EX_FLAG_NO_MAIN_LOOP_MUTEX, and com.latencybusters.lbm.LBM.PROC_EVENT_EX_FLAG_USER_TIME.

void com.latencybusters.lbm.LBMContext.processEvents | ( | long | msec,
|  | int | flags,
|  | UInt32 | tv_sec,
|  | UInt32 | tv_usec
| ) |  |

Process internal events in the given LBM context object.

When the operational mode is set to "sequential", it is the responsibility of the application to explicitly process events for the LBM context. This method will process timers and API timer and file descriptor/socket events.

Warning: It is not safe to call this method from a context thread callback.

LBM.PROC_EVENT_EX_FLAG_NO_MAIN_LOOP_MUTEX LBM.PROC_EVENT_EX_FLAG_USER_TIME

Parameters

  msec | Continue event processing loop for at least msec milliseconds before returning.
  flags | Flags to select various features.
  tv_sec | User supplies time when the LBM.PROC_EVENT_EX_FLAG_USER_TIME flag is set.
  tv_usec | User supplies time when the LBM.PROC_EVENT_EX_FLAG_USER_TIME flag is set.

Exceptions

  com.latencybusters.lbm.LBMException | Invalid argument or unexpected operational behavior has been encountered by unmanaged LBM C layer function.

References com.latencybusters.lbm.LBM.errorMessage(), com.latencybusters.lbm.LBM.errorNumber(), com.latencybusters.lbm.LBM.PROC_EVENT_EX_FLAG_NO_MAIN_LOOP_MUTEX, and com.latencybusters.lbm.LBM.PROC_EVENT_EX_FLAG_USER_TIME.

void com.latencybusters.lbm.LBMContext.removeImmediateMessageReceiver | ( | LBMImmediateMessageCallback | cb | ) |

Deregister a non-topic, immediate message callback.

See also
  enableImmediateMessageReceiver
  addImmediateMessageReceiver
  LBMImmediateMessageCallback

Parameters

  cb | Callback implementing the LBMImmediateMessageCallback delegate interface

void com.latencybusters.lbm.LBMContext.removeImmediateMessageReceiver | ( | LBMImmediateMessageCallback | cb,
|  | object | cbArg
| ) |  |

Deregister a non-topic, immediate message callback.

See also
  enableImmediateMessageReceiver
  addImmediateMessageReceiver
  LBMImmediateMessageCallback

Parameters

  cb | Callback implementing the LBMImmediateMessageCallback delegate interface
  cbArg | Callback token for previously registered callback

References com.latencybusters.lbm.LBMImmediateMessageCallback().

void com.latencybusters.lbm.LBMContext.removeSourceNotifyCallback | ( | LBMSourceNotification | cb | ) |

Deregister a source notification callback.

See also
  LBMSourceNotification
  addSourceNotifyCallback

Parameters

  cb | Previously registered callback implementing the LBMSourceNotification delegate interface

void com.latencybusters.lbm.LBMContext.removeSourceNotifyCallback | ( | LBMSourceNotification | cb,
|  | object | cbArg
| ) |  |

Deregister a source notification callback.

See also
  LBMSourceNotification
  addSourceNotifyCallback

Parameters

  cb | Previously registered callback implementing the LBMSourceNotification delegate interface
  cbArg | Callback token for previously registered callback

References com.latencybusters.lbm.LBMSourceNotification(), com.latencybusters.lbm.LBM.MSG_MAX_SOURCE_LEN, com.latencybusters.lbm.LBMObjectRecyclerBase.retrieveContextSourceEvent(), com.latencybusters.lbm.LBMNewTransportInfo.setFlags(), com.latencybusters.lbm.LBMNewTransportInfo.setSourceString(), com.latencybusters.lbm.LBMNewTransportInfo.setTransportSourceInfo(), com.latencybusters.lbm.UMEReceiverLivenessCreationCallback(), and com.latencybusters.lbm.UMEReceiverLivenessDeletionCallback().

void com.latencybusters.lbm.LBMContext.requestTopicResolution | ( | ushort | flags,
|  | uint | interval_msec,
|  | uint | duration_sec
| ) |  |

Request Topic Advertisements (sources), Topic Queries (receivers), and/or Wildcard Topic Queries (wildcard receivers) in the configured topic resolution address domain.

Since Advertisements and Queries can become quiescent after a period defined by the Topic Resolution configuration attributes, this function will schedule Topic Resolution Requests at the given interval and duration. Contexts that receive these requests will respond with one advertisement per source and/or one query per receiver as appropriate. These requests will be ignored for topics that are not quiescent. Note that requests are only sent on the outgoing address and are only received on the incoming address. Responses to the request will similarly be sent only on the outgoing address. LBM.TOPIC_RES_REQUEST_CONTEXT_ADVERTISEMENT - Request context advertisements from quiescent contexts. LBM.TOPIC_RES_REQUEST_CONTEXT_QUERY - Request context queries from quiescent contexts.

Parameters

  flags | Flags indicating desired requests. ORed set of values. LBM.TOPIC_RES_REQUEST_ADVERTISEMENT - Request advertisements from quiescent sources. LBM.TOPIC_RES_REQUEST_QUERY - Request queries from quiescent receivers. LBM.TOPIC_RES_REQUEST_WILDCARD_QUERY - Request queries from quiescent wildcard receivers.
  interval_msec | Interval between requests in milliseconds. Less than 10 should be used with caution. Less than 5 is not recommended.
  duration_sec | Minimum duration of requests in seconds. Actual duration can be longer depending on the interval. A value of zero will result in 1 request and the interval will be meaningless.

References com.latencybusters.lbm.LBM.errorMessage(), and com.latencybusters.lbm.LBM.errorNumber().

void com.latencybusters.lbm.LBMContext.resetImmediateMessageSourceStatistics | ( |  | ) |

This will reset the immediate message source transport statistics for this context.

Exceptions

  com.latencybusters.lbm.LBMException | Invalid argument or unexpected operational behavior has been encountered by unmanaged LBM C layer function.

References com.latencybusters.lbm.LBM.errorMessage(), and com.latencybusters.lbm.LBM.errorNumber().

void com.latencybusters.lbm.LBMContext.resetReceiverStatistics | ( |  | ) |

This will reset the transport stats for all receivers in this context.

Exceptions

  com.latencybusters.lbm.LBMException | Invalid argument or unexpected operational behavior has been encountered by unmanaged LBM C layer function.

References com.latencybusters.lbm.LBM.errorMessage(), and com.latencybusters.lbm.LBM.errorNumber().

void com.latencybusters.lbm.LBMContext.resetSourceStatistics | ( |  | ) |

This will reset the transport statistics for all sources in this context.

Exceptions

  com.latencybusters.lbm.LBMException | Invalid argument or unexpected operational behavior has been encountered by unmanaged LBM C layer function.

References com.latencybusters.lbm.LBM.errorMessage(), and com.latencybusters.lbm.LBM.errorNumber().

LBMTimer com.latencybusters.lbm.LBMContext.scheduleTimer | ( | long | milliseconds | ) |

Create an LBM Timer object and retains an internal reference to it. This prevents the timer from being reclaimed by the garbage collector before it expires.

See createTimer to create a timer that will be reclaimed by the garbage collector in the normal manner once it goes out of scope.

Parameters

  milliseconds | Number of milliseconds until the timer expires

Returns
  LBMTimer object

LBMTimer com.latencybusters.lbm.LBMContext.scheduleTimer | ( | long | milliseconds,
|  | LBMEventQueue | lbmevq
| ) |  |

Creates a timer associated with this context and a specified event queue that expires with a specified delay, and retains an internal reference to it. This prevents the timer from being reclaimed by the garbage collector before it expires.

See createTimer to create a timer that will be reclaimed by the garbage collector in the normal manner once it goes out of scope.

Parameters

  milliseconds | Number of milliseconds until the timer expires
  lbmevq | Event queue with with which to associate this timer (the timer events will be posted to this event queue)

Returns
  LBMTimer object

LBMTimer com.latencybusters.lbm.LBMContext.scheduleTimer | ( | long | milliseconds,
|  | LBMTimerCallback | cb,
|  | Object | cbArg
| ) |  |

Creates a timer associated with this context that expires with specified delay, and retains an internal reference to it. This prevents the timer from being reclaimed by the garbage collector before it expires.

See createTimer to create a timer that will be reclaimed by the garbage collector in the normal manner once it goes out of scope.

Parameters

  milliseconds | Number of milliseconds until the timer expires
  cb | Callback implementing the LBMTimerCallback delegate interface
  cbArg | Callback object passed as token to callback interface

Returns
  LBMTimer object

LBMTimer com.latencybusters.lbm.LBMContext.scheduleTimer | ( | long | milliseconds,
|  | LBMTimerCallback | cb,
|  | Object | cbArg,
|  | LBMEventQueue | lbmevq
| ) |  |

Creates a timer associated with this context and a specified event queue that expires with a specified delay. This prevents the timer from being reclaimed by the garbage collector before it expires.

See createTimer to create a timer that will be reclaimed by the garbage collector in the normal manner once it goes out of scope.

Parameters

  milliseconds | Number of milliseconds until the timer expires
  cb | Callback implementing the LBMTimerCallback delegate interface
  cbArg | Callback object passed as token to callback interface
  lbmevq | Event queue with with which to associate this timer (the timer events will be posted to this event queue)

Returns
  LBMTimer object

References com.latencybusters.lbm.LBMTimer.addTimerCallback(), and com.latencybusters.lbm.LBMTimer.reschedule().

void com.latencybusters.lbm.LBMContext.send | ( | string | target,
|  | string | topic,
|  | byte [] | data,
|  | int | dataLength,
|  | int | flags
| ) |  |

Send a unicast immediate message to the target and topic.

The target is a string of one of the following forms:

- "TCP:domain:ip:port" - where domain is the ID of the destination topic resolution domain, ip is the IP address of the destination host, and port is the request port for the context of the destination application.
- "TCP:ip:port" - where ip is the IP address of the destination host and port is the request port for the context of the destination application. This usage assumes the destination is in the same topic resolution domain as the sender.
- "SOURCE:source-string" - where source-string is the string associated with a source's transport session. This allows a subscriber to send a unicast immediate message directly to a publishing application. See Sending to Sources for details.

Note
  If called from a context thread callback, use the LBM_SRC_NONBLOCK flag and handle any LBM_EWOULDBLOCK errors internally.

Warning
  Do not call this function from a context thread callback for persistence stability or persistence confirmation events. It can result in deadlock. Note that immediate messages are processed somewhat less efficiently than source-based messages.

Parameters

  target | Destination address string.
  topic | Topic name to send message to or null for non-topic
  data | Data to send in this message
  dataLength | Length (in bytes) of the data to send in this message
  flags | Flags indicating various conditions.

Exceptions

  com.latencybusters.lbm.LBMException | Invalid argument or unexpected operational behavior has been encountered by unmanaged LBM C layer function.

References com.latencybusters.lbm.LBM.errorMessage(), and com.latencybusters.lbm.LBM.errorNumber().

void com.latencybusters.lbm.LBMContext.send | ( | string | target,
|  | string | topic,
|  | LBMRequest | lbmreq,
|  | LBMEventQueue | lbmevq,
|  | int | flags
| ) |  |

Send a unicast immediate request message to the target and topic.

The target is a string of one of the following forms:

- "TCP:domain:ip:port" - where domain is the ID of the destination topic resolution domain, ip is the IP address of the destination host, and port is the request port for the context of the destination application.
- "TCP:ip:port" - where ip is the IP address of the destination host and port is the request port for the context of the destination application. This usage assumes the destination is in the same topic resolution domain as the sender.
- "SOURCE:source-string" - where source-string is the string associated with a source's transport session. This allows a subscriber to send a unicast immediate message directly to a publishing application. See Sending to Sources for details.

Note
  If called from a context thread callback, use the LBM_SRC_NONBLOCK flag and handle any LBM_EWOULDBLOCK errors internally.

Warning
  Do not call this function from a context thread callback for persistence stability or persistence confirmation events. It can result in deadlock. Note that immediate messages are processed somewhat less efficiently than source-based messages.

Parameters

  target | Destination address string.
  topic | Topic name to send message to or null for non-topic
  lbmreq | LBMRequest object
  lbmevq | LBMEventQueue on which to process responses (may be null if not using an event queue)
  flags | Flags indicating various conditions

Exceptions

  com.latencybusters.lbm.LBMException | Invalid argument or unexpected operational behavior has been encountered by unmanaged LBM C layer function.

References com.latencybusters.lbm.LBMRequest.data(), com.latencybusters.lbm.LBMRequest.dataLength(), com.latencybusters.lbm.LBM.errorMessage(), and com.latencybusters.lbm.LBM.errorNumber().

void com.latencybusters.lbm.LBMContext.send | ( | string | target,
|  | string | topic,
|  | LBMRequest | lbmreq,
|  | int | flags
| ) |  |

Send a unicast immediate request message to the target and topic.

The target is a string of one of the following forms:

- "TCP:domain:ip:port" - where domain is the ID of the destination topic resolution domain, ip is the IP address of the destination host, and port is the request port for the context of the destination application.
- "TCP:ip:port" - where ip is the IP address of the destination host and port is the request port for the context of the destination application. This usage assumes the destination is in the same topic resolution domain as the sender.
- "SOURCE:source-string" - where source-string is the string associated with a source's transport session. This allows a subscriber to send a unicast immediate message directly to a publishing application. See Sending to Sources for details.

Note
  If called from a context thread callback, use the LBM_SRC_NONBLOCK flag and handle any LBM_EWOULDBLOCK errors internally.

Warning
  Do not call this function from a context thread callback for persistence stability or persistence confirmation events. It can result in deadlock.

Note that immediate messages are processed somewhat less efficiently than source-based messages.

Parameters

  target | Destination address string.
  topic | Topic name to send message to or null for non-topic
  lbmreq | LBMRequest object
  flags | Flags indicating various conditions

Exceptions

  com.latencybusters.lbm.LBMException | Invalid argument or unexpected operational behavior has been encountered by unmanaged LBM C layer function.

void com.latencybusters.lbm.LBMContext.send | ( | string | topic,
|  | byte [] | data,
|  | int | dataLength,
|  | int | flags
| ) |  |

Send a multicast immediate message to a specific topic.

Possible OR'd set of flag value include: LBM.SRC_NONBLOCK, LBM.SRC_BLOCK, and LBM.MSG_FLUSH

Note
  If called from a context thread callback, use the LBM_SRC_NONBLOCK flag and handle any LBM_EWOULDBLOCK errors internally.

Warning
  Do not call this function from a context thread callback for persistence stability or persistence confirmation events. It can result in deadlock.

Parameters

  topic | Topic name to send message to or null for non-topic
  data | Data to send in this message
  dataLength | Length (in bytes) of the data to send in this message
  flags | Flags indicating various conditions

Exceptions

  com.latencybusters.lbm.LBMException | Invalid argument or unexpected operational behavior has been encountered by unmanaged LBM C layer function.

References com.latencybusters.lbm.LBM.errorMessage(), and com.latencybusters.lbm.LBM.errorNumber().

void com.latencybusters.lbm.LBMContext.send | ( | string | topic,
|  | LBMRequest | lbmreq,
|  | LBMEventQueue | lbmevq,
|  | int | flags
| ) |  |

Send a multicast immediate request to a specific topic (specifying an Event Queue for processing of the response(s))

Possible OR'd set of flag value include: LBM.SRC_NONBLOCK, LBM.SRC_BLOCK, and LBM.MSG_FLUSH

Note
  If called from a context thread callback, use the LBM_SRC_NONBLOCK flag and handle any LBM_EWOULDBLOCK errors internally.

Warning
  Do not call this function from a context thread callback for persistence stability or persistence confirmation events. It can result in deadlock.

Parameters

  topic | Topic name to send message to or null for non-topic
  lbmreq | LBMRequest object
  lbmevq | LBMEventQueue on which to process responses (may be null if not using an event queue)
  flags | Flags indicating various conditions

Exceptions

  com.latencybusters.lbm.LBMException | Invalid argument or unexpected operational behavior has been encountered by unmanaged LBM C layer function.

References com.latencybusters.lbm.LBMRequest.data(), com.latencybusters.lbm.LBMRequest.dataLength(), com.latencybusters.lbm.LBM.errorMessage(), and com.latencybusters.lbm.LBM.errorNumber().

void com.latencybusters.lbm.LBMContext.send | ( | string | topic,
|  | LBMRequest | lbmreq,
|  | int | flags
| ) |  |

Send a multicast immediate request to a specific topic.

Possible OR'd set of flag value include: LBM.SRC_NONBLOCK, LBM.SRC_BLOCK, and LBM.MSG_FLUSH

Note
  If called from a context thread callback, use the LBM_SRC_NONBLOCK flag and handle any LBM_EWOULDBLOCK errors internally.

Warning
  Do not call this function from a context thread callback for persistence stability or persistence confirmation events. It can result in deadlock.

Parameters

  topic | Topic name to send message to or null for non-topic
  lbmreq | LBMRequest object
  flags | Flags indicating various conditions

void com.latencybusters.lbm.LBMContext.send | ( | string | queue,
|  | string | topic,
|  | byte [] | data,
|  | int | dataLength,
|  | int | flags,
|  | LBMSourceSendExInfo | exinfo
| ) |  |

Send a multicast immediate message on a specific topic to a queue. (UMQ only)

Possible OR'd set of flag value include: LBM.SRC_NONBLOCK, LBM.SRC_BLOCK, and LBM.MSG_FLUSH

Note
  If called from a context thread callback, use the LBM_SRC_NONBLOCK flag and handle any LBM_EWOULDBLOCK errors internally.

Warning
  Do not call this function from a context thread callback for persistence stability or persistence confirmation events. It can result in deadlock.

Parameters

  queue | Queue to submit message to
  topic | Topic name to send message to or null for non-topic
  data | Data to send in this message
  dataLength | Length (in bytes) of the data to send in this message
  flags | Flags indicating various conditions
  exinfo | LBMSourceSendExInfo object, which includes flags to change callback behavior and a client-supplied object to be passed back.

References com.latencybusters.lbm.LBMSourceSendExInfo.clientObject(), com.latencybusters.lbm.LBM.errorMessage(), com.latencybusters.lbm.LBM.errorNumber(), com.latencybusters.lbm.UMQIndexInfo.flags(), com.latencybusters.lbm.LBMSourceSendExInfo.flags(), com.latencybusters.lbm.UMQIndexInfo.index(), com.latencybusters.lbm.UMQIndexInfo.indexLength(), com.latencybusters.lbm.UMQIndexInfo.numericIndex(), com.latencybusters.lbm.UMQMessageTotalLifetimeInfo.totalLifetime(), and com.latencybusters.lbm.LBM.UMQ_INDEX_FLAG_NUMERIC.

void com.latencybusters.lbm.LBMContext.sendc | ( | char [] | target,
|  | char [] | topic,
|  | byte[] | data,
|  | int | dataLength,
|  | int | flags
| ) |  |

Send a unicast immediate message to the target and topic.

The target is a string of one of the following forms:

- "TCP:domain:ip:port" - where domain is the ID of the destination topic resolution domain, ip is the IP address of the destination host, and port is the request port for the context of the destination application.
- "TCP:ip:port" - where ip is the IP address of the destination host and port is the request port for the context of the destination application. This usage assumes the destination is in the same topic resolution domain as the sender.
- "SOURCE:source-string" - where source-string is the string associated with a source's transport session. This allows a subscriber to send a unicast immediate message directly to a publishing application. See Sending to Sources for details.

Note
  If called from a context thread callback, use the LBM_SRC_NONBLOCK flag and handle any LBM_EWOULDBLOCK errors internally.

Warning
  Do not call this function from a context thread callback for persistence stability or persistence confirmation events. It can result in deadlock. Note that immediate messages are processed somewhat less efficiently than source-based messages.

Parameters

  target | Destination address string.
  topic | Topic name to send message to or null for non-topic
  data | Data to send in this message
  dataLength | Length (in bytes) of the data to send in this message
  flags | Flags indicating various conditions.

Exceptions

  com.latencybusters.lbm.LBMException | Invalid argument or unexpected operational behavior has been encountered by unmanaged LBM C layer function.

References com.latencybusters.lbm.LBM.errorMessage(), and com.latencybusters.lbm.LBM.errorNumber().

void com.latencybusters.lbm.LBMContext.sendc | ( | char [] | topic,
|  | byte[] | data,
|  | int | dataLength,
|  | int | flags
| ) |  |

Send a multicast immediate message to a specific topic.

Possible OR'd set of flag value include: LBM.SRC_NONBLOCK, LBM.SRC_BLOCK, and LBM.MSG_FLUSH

Note
  If called from a context thread callback, use the LBM_SRC_NONBLOCK flag and handle any LBM_EWOULDBLOCK errors internally.

Warning
  Do not call this function from a context thread callback for persistence stability or persistence confirmation events. It can result in deadlock.

Parameters

  topic | Topic name to send message to or null for non-topic
  data | Data to send in this message
  dataLength | Length (in bytes) of the data to send in this message
  flags | Flags indicating various conditions

Exceptions

  com.latencybusters.lbm.LBMException | Invalid argument or unexpected operational behavior has been encountered by unmanaged LBM C layer function.

References com.latencybusters.lbm.LBM.errorMessage(), and com.latencybusters.lbm.LBM.errorNumber().

void com.latencybusters.lbm.LBMContext.sendTopicless | ( | string | target,
|  | byte[] | data,
|  | int | dataLength,
|  | int | flags
| ) |  |

Send a topicless unicast immediate message to the target.

The target is a string of one of the following forms:

- "TCP:domain:ip:port" - where domain is the ID of the destination topic resolution domain, ip is the IP address of the destination host, and port is the request port for the context of the destination application.
- "TCP:ip:port" - where ip is the IP address of the destination host and port is the request port for the context of the destination application. This usage assumes the destination is in the same topic resolution domain as the sender.
- "SOURCE:source-string" - where source-string is the string associated with a source's transport session. This allows a subscriber to send a unicast immediate message directly to a publishing application. See Sending to Sources for details.

Note
  If called from a context thread callback, use the LBM_SRC_NONBLOCK flag and handle any LBM_EWOULDBLOCK errors internally.

Warning
  Do not call this function from a context thread callback for persistence stability or persistence confirmation events. It can result in deadlock. Note that immediate messages are processed somewhat less efficiently than source-based messages.

Parameters

  target | Destination address string.
  data | Data to send in this message
  dataLength | Length (in bytes) of the data to send in this message
  flags | Flags indicating various conditions.

Exceptions

  com.latencybusters.lbm.LBMException | Invalid argument or unexpected operational behavior has been encountered by unmanaged LBM C layer function.

void com.latencybusters.lbm.LBMContext.sendTopicless | ( | char[] | target,
|  | byte[] | data,
|  | int | dataLength,
|  | int | flags
| ) |  |

Send a topicless unicast immediate message to the target.

The target is a string of one of the following forms:

- "TCP:domain:ip:port" - where domain is the ID of the destination topic resolution domain, ip is the IP address of the destination host, and port is the request port for the context of the destination application.
- "TCP:ip:port" - where ip is the IP address of the destination host and port is the request port for the context of the destination application. This usage assumes the destination is in the same topic resolution domain as the sender.
- "SOURCE:source-string" - where source-string is the string associated with a source's transport session. This allows a subscriber to send a unicast immediate message directly to a publishing application. See Sending to Sources for details.

Note
  If called from a context thread callback, use the LBM_SRC_NONBLOCK flag and handle any LBM_EWOULDBLOCK errors internally.

Warning
  Do not call this function from a context thread callback for persistence stability or persistence confirmation events. It can result in deadlock. Note that immediate messages are processed somewhat less efficiently than source-based messages.

Parameters

  target | Destination address string.
  data | Data to send in this message
  dataLength | Length (in bytes) of the data to send in this message
  flags | Flags indicating various conditions.

Exceptions

  com.latencybusters.lbm.LBMException | Invalid argument or unexpected operational behavior has been encountered by unmanaged LBM C layer function.

void com.latencybusters.lbm.LBMContext.sendTopicless | ( | byte[] | data,
|  | int | dataLength,
|  | int | flags
| ) |  |

Send a topicless multicast immediate message.

Possible OR'd set of flag value include: LBM.SRC_NONBLOCK, LBM.SRC_BLOCK, and LBM.MSG_FLUSH

Note
  If called from a context thread callback, use the LBM_SRC_NONBLOCK flag and handle any LBM_EWOULDBLOCK errors internally.

Warning
  Do not call this function from a context thread callback for persistence stability or persistence confirmation events. It can result in deadlock.

Parameters

  data | Data to send in this message
  dataLength | Length (in bytes) of the data to send in this message
  flags | Flags indicating various conditions

Exceptions

  com.latencybusters.lbm.LBMException | Invalid argument or unexpected operational behavior has been encountered by unmanaged LBM C layer function.

void com.latencybusters.lbm.LBMContext.setAttributeValue | ( | string | attributeName,
|  | string | attributeValue
| ) |  |

Set the value of a context-related attribute for this context.

Note that this method bypasses the property list. As such no attributes configured using this method will appear in the property list.

Parameters

  attributeName | Name of the attribute to set
  attributeValue | New attribute value

Exceptions

  com.latencybusters.lbm.LBMException | Invalid argument or unexpected operational behavior has been encountered by unmanaged LBM C layer function.

References com.latencybusters.lbm.LBM.errorMessage(), and com.latencybusters.lbm.LBM.errorNumber().

int com.latencybusters.lbm.LBMContext.setUMQInflight | ( | string | queue,
|  | LBMSetInflightCallback | cb,
|  | object | cbObj
| ) |  |

Set the current UMQ inflight value for this context. This function is deprecated.

Parameters

  queue | Name of the queue
  cb | LBMSetInflightCallback delegate
  cbObj | Client object passed into callback

Exceptions

  com.latencybusters.lbm.LBMException | if an error occurs while setting the inflight value

Returns
  the new inflight value

References com.latencybusters.lbm.LBM.errorMessage(), and com.latencybusters.lbm.LBM.errorNumber().

void com.latencybusters.lbm.LBMContext.setUMQMessageStable | ( | string | queue,
|  | UMQMessageId | msg_id
| ) |  |

Mark a specific msg_id as stable, triggering an event if configured to do so, and adjusting the inflight if necessary. This function is deprecated.

Parameters

  queue | Name of the queue
  msg_id | MessageId of the message to mark stable

Exceptions

  com.latencybusters.lbm.LBMException | if an error occurs while marking the message stable

References com.latencybusters.lbm.LBM.errorMessage(), com.latencybusters.lbm.LBM.errorNumber(), com.latencybusters.lbm.UMQMessageId.msgStamp(), and com.latencybusters.lbm.UMQMessageId.registrationId().

void com.latencybusters.lbm.LBMContext.unblockProcessEvents | ( |  | ) |

Unblock processEvents call.

When the operational mode is set to "sequential", this API forces a call to processEvents to return immediately after completing the current set of I/O operations instead of waiting.

Exceptions

  com.latencybusters.lbm.LBMException | if any error occurs.

References com.latencybusters.lbm.LBM.errorMessage(), and com.latencybusters.lbm.LBM.errorNumber().

The documentation for this class was generated from the following file:

- LBMContext.cs