BLPAPI C++
3.24.8
|
#include <blpapi_providersession.h>
Public Types | |
enum | ServiceRegistrationPriority { PRIORITY_LOW = 0, PRIORITY_MEDIUM = INT_MAX / 2, PRIORITY_HIGH = INT_MAX } |
enum | RegistrationParts { PART_PUBLISHING = 0x2, PART_OPERATIONS = 0x4, PART_SUBSCRIBER_RESOLUTION = 0x8, PART_PUBLISHER_RESOLUTION = 0x10, PART_DEFAULT = 0x1 } |
Public Member Functions | |
ServiceRegistrationOptions () | |
ServiceRegistrationOptions (const ServiceRegistrationOptions &original) | |
~ServiceRegistrationOptions () | |
ServiceRegistrationOptions & | operator= (const ServiceRegistrationOptions &rhs) |
void | setGroupId (const char *groupId, unsigned int groupIdLength) |
int | setServicePriority (int priority) |
void | setPartsToRegister (int parts) |
void | addActiveSubServiceCodeRange (int begin, int end, int priority) |
void | removeAllActiveSubServiceCodeRanges () |
int | getGroupId (char *groupId, int *groupIdLength) const |
int | getServicePriority () const |
int | getPartsToRegister () const |
Contains the options which the user can specify when registering a service.
To use non-default options to registerService, create a ServiceRegistrationOptions instance and set the desired options and then supply it when using the registerService interface.
enum RegistrationParts |
Constants for specifying which part(s) of a service should be registered
Enumerator | |
---|---|
PART_PUBLISHING | register to receive subscribe and unsubscribe messages |
PART_OPERATIONS | register to receive the request types corresponding to each "operation" defined in the service metadata |
PART_SUBSCRIBER_RESOLUTION | register to receive resolution requests (with message type |
PART_PUBLISHER_RESOLUTION | register to receive resolution requests (with message type |
PART_DEFAULT | register the parts of the service implied by options specified in the service metadata |
Constants for specifying the priority to register services.
Service providers can use any non-negative value as a priority for more granular control.
Enumerator | |
---|---|
PRIORITY_LOW | Low priority ( |
PRIORITY_MEDIUM | Medium priority ( |
PRIORITY_HIGH | High priority ( |
Create ServiceRegistrationOptions with default options.
ServiceRegistrationOptions | ( | const ServiceRegistrationOptions & | original | ) |
Copy Constructor
Destroy this ServiceRegistrationOptions.
void addActiveSubServiceCodeRange | ( | int | begin, |
int | end, | ||
int | priority | ||
) |
Advertise the service to be registered to receive, with the specified priority
, subscriptions that the resolver has mapped to a service code between the specified begin
and the specified end
values, inclusive. Numerically greater values of priority
indicate higher priorities. The behavior of this function is undefined unless 0 <= begin <= end < (1 << 24)
, and priority
is non-negative.
int getGroupId | ( | char * | groupId, |
int * | groupIdLength | ||
) | const |
Copy the previously specified groupId at the memory location specified by groupId and the set the size of the groupId returned at groupIdLength. A Non-zero value indicates an error. The behavior is undefined if there is not enough space to copy the group Id to the specified buffer. Note that the groupId is not null terminated and buffer for groupId needs to be at most MAX_GROUP_ID_SIZE.
int getPartsToRegister | ( | ) | const |
Return the parts of the service to be registered. See RegistrationParts
, above for additional details.
int getServicePriority | ( | ) | const |
Return the priority with which a service will be registered.
Note that the priority is used for both the publishing part and the operations part. it is not supported for resolution part.
ServiceRegistrationOptions & operator= | ( | const ServiceRegistrationOptions & | rhs | ) |
Assign to this object the value of the specified rhs
object.
void removeAllActiveSubServiceCodeRanges | ( | ) |
Remove all previously added sub-service code ranges.
void setGroupId | ( | const char * | groupId, |
unsigned int | groupIdLength | ||
) |
Set the Group ID for the service to be registered to the specified char array beginning at groupId with size groupIdLength. If groupIdLength > MAX_GROUP_ID_SIZE (=64) only the first MAX_GROUP_ID_SIZE chars are considered as Group Id. Publishers with the same group id are treated as equivalent and will participate in load balancing given the same priority. Publishers with different group ids provide different subsets of the data and subscriptions will be established with one publisher from each group.
void setPartsToRegister | ( | int | parts | ) |
Set the parts of the service to be registered to the specified parts
, which must be a bitwise-or of the options provided in RegistrationParts
, above. This option defaults to RegistrationParts::PARTS_DEFAULT
.
int setServicePriority | ( | int | priority | ) |
Set the priority with which a service will be registered to the specified priority
, where numerically greater values of priority
indicate higher priorities. The behavior is undefined unless priority
is non-negative. Note that while the values of enum ServiceRegistrationPriority
are suitable for use here, any non-negative priority
is acceptable.
By default, a service will be registered with priority ServiceRegistrationPriority::PRIORITY_HIGH
.
Note that this has no effect for resolution services.