TipcSrvConnSubjectGetSubscribeLb


Name

TipcSrvConnSubjectGetSubscribeLb — determine if an RTclient is subscribing to a subject, including load balancing information

Synopsis

T_BOOL TipcSrvConnSubjectGetSubscribeLb(srv, subject, 
subscribe_status_return, lb_status_return) 
T_IPC_SRV srv; 
T_STR subject; 
T_BOOL *subscribe_status_return; 
T_BOOL *lb_status_return; 

Arguments

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

Return Values

TRUE if the subscribe statuses of the subject were successfully retrieved, FALSE otherwise.

Diagnostics

If TipcSrvConnSubjectGetSubscribeLb fails, it returns FALSE and sets the global SmartSockets error number to one of:

Description

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.

Caution

If TipcSrvConnSubjectGetSubscribeLb returns FALSE, it does not store a value in subscribe_status_return or lb_status_return.

See Also

TipcMonClientSubscribeSetWatch, TipcMonSubjectSubscribeSetWatch, TipcSrvConnSubjectGetSubscribe, TipcSrvConnSubjectSetSubscribeLb

Examples

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