UM .NET API  6.16
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< LBMConfigOptiondumpAttributeList ()
 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.LBMExceptionInvalid 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
contextNameThe context name under which this receiver is to be created
topicNameThe receiver topic name under which this receiver is to be created
Exceptions
com.latencybusters.lbm.LBMExceptionThe 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.LBMExceptionInvalid 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
enabledSet 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
attributeNameName of the attribute to retrieve
Exceptions
com.latencybusters.lbm.LBMExceptionInvalid 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
contextNameThe context name under which this receiver is to be created
topicNameThe receiver topic name under which this receiver is to be created
Exceptions
com.latencybusters.lbm.LBMExceptionThe 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
objRecan LBM object recycler that will be called when objects need to be retrieved
objRecCbArga 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
cbAn object implementing the UMERecoverySequenceNumberCallback delegate interface
cbArgCallback 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
cbAn object implementing the LBMRegistrationIdCallback delegate interface
cbArgCallback 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
cbAn object implementing the UMERegistrationIdExCallback delegate interface
cbArgCallback 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
creationCbSource creation callback delegate.
deletionCbSource deletion callback delegate.
cbArgClient-supplied callback object, returned to source creation and deletion callback methods.
Exceptions
com.latencybusters.lbm.LBMEInvalExceptionBoth source notification callbacks must be set or cleared at once.
com.latencybusters.lbm.LBMExceptionInvalid 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
attributeNameName of the attribute to set
attributeValueNew attribute value
Exceptions
com.latencybusters.lbm.LBMExceptionInvalid 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: