TipcSrvConnSubjectGetSubscribeLb determine if an RTclient is subscribing to a subject, including load balancing information
T_BOOL TipcSrvConnSubjectGetSubscribeLb(srv
,subject
,subscribe_status_return
,lb_status_return
) T_IPC_SRVsrv
; T_STRsubject
; T_BOOL*subscribe_status_return
; T_BOOL*lb_status_return
;
srv
connection handle to RTserver
subject
name of the subject to get subscribe status for
subscribe_status_return
storage for subscribe status
lb_status_return
storage for load balancing status
TRUE
if the subscribe statuses of the subject were successfully retrieved, FALSE
otherwise.
If TipcSrvConnSubjectGetSubscribeLb fails, it returns FALSE
and sets the global SmartSockets error number to one of:
TipcSrvConnSubjectGetSubscribeLb and TipcSrvConnSubjectSetSubscribeLb are variants of TipcSrvConnSubjectGetSubscribe and TipcSrvConnSubjectSetSubscribe that include load balancing control.
TipcSrvConnSubjectGetSubscribeLb determines whether or not an RTclient is subscribing to a subject, including load balancing information. The subscribe status controls whether the RTclient receives messages published (sent) to that subject. If the subscribe status of subject is TRUE
, then the RTclient receives messages with subject
as their destination that are sent to RTserver. To start or stop subscribing to a subject, with or without load balancing, use TipcSrvConnSubjectSetSubscribeLb. If the load balancing status of subject is TRUE
, then the RTclient is part of the load balancing calculation. Otherwise, the RTclient overrides load balancing and always receives the messages regardless of whether or not the message was published with load balancing.
TipcSrvConnSubjectGetSubscribeLb may attempt to automatically create a connection to RTserver. If RTclient has a warm connection to RTserver, TipcSrvConnSubjectGetSubscribeLb gets the subscribe status of the subject as if the RTclient were still connected to RTserver. See TipcSrvConnOpen for more information on automatic creation of connections and warm connections to RTserver.
If TipcSrvConnSubjectGetSubscribeLb returns FALSE
, it does not store a value in subscribe_status_return
or lb_status_return
.
TipcMonClientSubscribeSetWatch, TipcMonSubjectSubscribeSetWatch, TipcSrvConnSubjectGetSubscribe, TipcSrvConnSubjectSetSubscribeLb
This example uses TipcSrvConnSubjectGetSubscribeLb to get the subscribe status of the subject /system/thermal
:
T_BOOL subscribe_status; T_BOOL lb_status; if (!TipcSrvConnSubjectGetSubscribeLb(srv, "/system/thermal", &subscribe_status, &lb_status)) {
return
; /* error */
} TutOut("This process is %s the /system/thermal subject.\n", subscribe_status ? "subscribing to" : "not subscribing to"); if (subscribe_status) { TutOut("This process is %s load balancing.\n", lb_status ? "part of" : "not part of"); }
TIBCO SmartSockets™ Application Programming Interface Software Release 6.8, July 2006 Copyright © TIBCO Software Inc. All rights reserved www.tibco.com |