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.LBMReceiverAttributes Class Reference

Encapsulates the set of default LBM receiver attributes. More...

Inheritance diagram for com.latencybusters.lbm.LBMReceiverAttributes:

## Classes
class | callback_data_t
struct | lbm_rcv_src_notification_func_t
class | src_notification_info

## Public Member Functions
unsafe | LBMReceiverAttributes ()
| Instantiate LBMReceiverAttributes class. More...
unsafe | LBMReceiverAttributes (string contextName, string topicName)
| Instantiate an LBMReceiverAttributes class using a context name and topic name from the xml configuration that must have been previously loaded. More...
void | Dispose ()
| Free memory associated with this set of attributes.
void | dispose ()
| Free memory associated with this set of attributes (same as Dispose()). More...
unsafe void | setFromXml (string contextName, string topicName)
| Set values in an LBMReceiverAttributes class using a context name and topic name from the xml configuration that must have been previously loaded. More...
unsafe List< LBMConfigOption > | dumpAttributeList ()
| Dump source configuration options. More...
unsafe string | getValue (string attributeName)
| Returns the current value of an attribute from this set of receiver-related attributes. More...
unsafe void | setValue (string attributeName, string attributeValue)
| Set the current value of an attribute in this set of receiver-related attributes. More...
void | setRegistrationIdCallback (LBMRegistrationIdCallback cb, object cbArg)
| Register a callback interface (and a callback handle argument) to be called to enable a receiver to set the registration ID it uses for a given source (UME only). More...
void | setRegistrationIdCallback (UMERegistrationIdExCallback cb, object cbArg)
| Register a callback interface (and a callback handle argument) to be called to enable a receiver to set the registration ID it uses for a given source (UME only). More...
void | setRecoverySequenceNumberCallback (UMERecoverySequenceNumberCallback cb, object cbArg)
| Register an extended callback interface (and a callback handle argument) to be called to enable a receiver to set the low sequence number it uses for recovery events (including late joins and durable subscriptions). More...
void | setSourceNotificationCallbacks (LBMSourceCreationCallback creationCb, LBMSourceDeletionCallback deletionCb, object cbArg)
| Set per-topic source creation and deletion notification callback functions. More...
void | setObjectRecycler (LBMObjectRecyclerBase objRec, Object objRecCbArg)
| Set the LBM object recycler that can be used by the context to reuse LBMMessage objects as well as LBM Context/Receiver/Source Statistics objects. More...
void | enableSingleReceiverCallback (bool enabled)
| If set to true, LBMReceivers, LBMHotFailoverReceivers, and LBMWildcardReceivers will only accept a single LBMReceiverCallback. The addReceiver and removeReceiver APIs will become defunct and log a warning if used. This reduces the amount of syncronization work done per message and results in lower latencies. Set to false by default. More...

## Detailed Description

Encapsulates the set of default LBM receiver attributes.

## Constructor & Destructor Documentation

unsafe com.latencybusters.lbm.LBMReceiverAttributes.LBMReceiverAttributes | ( |  | ) |

Instantiate LBMReceiverAttributes class.

Exceptions

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

unsafe com.latencybusters.lbm.LBMReceiverAttributes.LBMReceiverAttributes | ( | string | contextName,
|  | string | topicName
| ) |  |

Instantiate an LBMReceiverAttributes class using a context name and topic name from the xml configuration that must have been previously loaded.

Parameters

  contextName | The context name under which this receiver is to be created
  topicName | The receiver topic name under which this receiver is to be created

Exceptions

  com.latencybusters.lbm.LBMException | The context name or receiver topic name is not permitted by XML configuration or other 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.LBMRegistrationIdCallback(), com.latencybusters.lbm.UMERecoverySequenceNumberCallbackInfo.lowSequenceNumber(), com.latencybusters.lbm.UMERecoverySequenceNumberCallback(), and com.latencybusters.lbm.UMERegistrationIdExCallback().

## Member Function Documentation

void com.latencybusters.lbm.LBMReceiverAttributes.dispose | ( |  | ) |

Free memory associated with this set of attributes (same as Dispose()).

See also
  Dispose

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

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

Dump source configuration options.

Exceptions

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

Returns
  An array of LBMConfigOptions

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.LBMReceiverAttributes.enableSingleReceiverCallback | ( | bool | enabled | ) |

If set to true, LBMReceivers, LBMHotFailoverReceivers, and LBMWildcardReceivers will only accept a single LBMReceiverCallback. The addReceiver and removeReceiver APIs will become defunct and log a warning if used. This reduces the amount of syncronization work done per message and results in lower latencies. Set to false by default.

Parameters

  enabled | Set to true to enable single receiver callback mode. Set to false to disable.

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

unsafe string com.latencybusters.lbm.LBMReceiverAttributes.getValue | ( | string | attributeName | ) |

Returns the current value of an attribute from this set of receiver-related attributes.

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().

unsafe void com.latencybusters.lbm.LBMReceiverAttributes.setFromXml | ( | string | contextName,
|  | string | topicName
| ) |  |

Set values in an LBMReceiverAttributes class using a context name and topic name from the xml configuration that must have been previously loaded.

Parameters

  contextName | The context name under which this receiver is to be created
  topicName | The receiver topic name under which this receiver is to be created

Exceptions

  com.latencybusters.lbm.LBMException | The context name or receiver topic name is not permitted by XML configuration or other 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.LBMReceiverAttributes.setObjectRecycler | ( | LBMObjectRecyclerBase | objRec,
|  | Object | objRecCbArg
| ) |  |

Set the LBM object recycler that can be used by the context to reuse LBMMessage objects as well as LBM Context/Receiver/Source Statistics objects.

Parameters

  objRec | an LBM object recycler that will be called when objects need to be retrieved
  objRecCbArg | a callback object token that will be passed in the retrieve method

void com.latencybusters.lbm.LBMReceiverAttributes.setRecoverySequenceNumberCallback | ( | UMERecoverySequenceNumberCallback | cb,
|  | object | cbArg
| ) |  |

Register an extended callback interface (and a callback handle argument) to be called to enable a receiver to set the low sequence number it uses for recovery events (including late joins and durable subscriptions).

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 API may not be called from a wildcard receiver create callback. Doing so will not result in the callbacks being called.

See also
  LBMWildcardReceiverCreateCallback

Parameters

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

void com.latencybusters.lbm.LBMReceiverAttributes.setRegistrationIdCallback | ( | LBMRegistrationIdCallback | cb,
|  | object | cbArg
| ) |  |

Register a callback interface (and a callback handle argument) to be called to enable a receiver to set the registration ID it uses for a given source (UME only).

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 API may not be called from a wildcard receiver create callback. Doing so will not result in the callbacks being called.

See also
  LBMRegistrationIdCallback
  LBMWildcardReceiverCreateCallback

Parameters

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

void com.latencybusters.lbm.LBMReceiverAttributes.setRegistrationIdCallback | ( | UMERegistrationIdExCallback | cb,
|  | object | cbArg
| ) |  |

Register a callback interface (and a callback handle argument) to be called to enable a receiver to set the registration ID it uses for a given source (UME only).

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 API may not be called from a wildcard receiver create callback. Doing so will not result in the callbacks being called.

See also
  UMERegistrationIdExCallback
  LBMWildcardReceiverCreateCallback

Parameters

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

void com.latencybusters.lbm.LBMReceiverAttributes.setSourceNotificationCallbacks | ( | LBMSourceCreationCallback | creationCb,
|  | LBMSourceDeletionCallback | deletionCb,
|  | object | cbArg
| ) |  |

Set per-topic source creation and deletion notification callback functions.

This API may not be called from a wildcard receiver create callback. Doing so will not result in the callbacks being called.

See also
  LBMWildcardReceiverCreateCallback

Parameters

  creationCb | Source creation callback delegate.
  deletionCb | Source deletion callback delegate.
  cbArg | Client-supplied callback object, returned to source creation and deletion callback methods.

Exceptions

  com.latencybusters.lbm.LBMEInvalException | Both source notification callbacks must be set or cleared at once.
  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.

unsafe void com.latencybusters.lbm.LBMReceiverAttributes.setValue | ( | string | attributeName,
|  | string | attributeValue
| ) |  |

Set the current value of an attribute in this set of receiver-related attributes.

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.EINVAL, com.latencybusters.lbm.LBM.errorMessage(), and com.latencybusters.lbm.LBM.errorNumber().

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

- LBMReceiverAttributes.cs