| Oracle® C++ Call Interface Programmer's Guide 10g Release 2 (10.2) Part Number B14294-02  | 
  | 
  | 
View PDF | 
The subscription class encapsulates the information and operations necessary for registering a subscriber for notification.
Table 12-46 Enumerated Values Used by Subscription Class
| Attribute | Options | 
|---|---|
Presentation  | 
  | 
Protocol  | 
  | 
Namespace  | 
  | 
Table 12-47 Summary of Subscription Methods
| Method | Summary | 
|---|---|
| 
 
  | 
|
| 
 Retrieves the callback context.  | 
|
| 
 Retrieves the number of database servers in which the client is interested for the registration.  | 
|
| 
 Returns the names of all the database servers where the client registered an interest for notification.  | 
|
| 
 Returns the pointer to the registered callback function.  | 
|
| 
 Retrieves the payload that has been set on the   | 
|
| 
 Retrieves the name of the   | 
|
| 
 Retrieves the namespace of the   | 
|
| 
 Retrieves the name of the   | 
|
| 
 Retrieves the notification presentation mode.  | 
|
| 
 Retrieves the notification protocol.  | 
|
| 
 Determines if the   | 
|
| 
 Assignment operator for   | 
|
| 
 Registers a callback function for OCI protocol.  | 
|
| 
 Specifies the database server distinguished names from which the client will receive notifications.  | 
|
| 
 Specifies the context passed to user callbacks  | 
|
| 
 Specifies the   | 
|
| 
 Specifies the name of the subscription.  | 
|
| 
 Specifies the namespace in which the subscription is used.  | 
|
| 
 Specifies the buffer content of the notification.  | 
|
| 
 Specifies the name of the recipient of the notification.  | 
|
| 
 Specifies the presentation mode in which the client will receive notifications.  | 
|
| 
 Specifies the protocol in which the client will receive notifications.  | 
|
| 
 Specifiess the name of the subscription.  | 
|
| 
 Specifies the namespace where the subscription is used.  | 
|
| 
 Specifies the name of the recipient of the notification.  | 
Subscription class constructor.
| Syntax | Description | 
|---|---|
Subscription ( const Environment *env );  | 
Creates a Subscription within a specified Environment. | 
Subscription( const Subscription& sub);  | 
Copy constructor. | 
Syntax
Subscription(const Subscription& sub);
| Parameter | Description | 
|---|---|
env  | 
The Environment. | 
sub  | 
The original Subscription.. | 
Retrieves the callback context.
Syntax
void* getCallbackContext() const;
Returns the number of database servers in which the client is interested for the registration.
Syntax
unsigned int getDatabaseServersCount() const;
Returns the names of all the database servers where the client registered an interest for notification.
Syntax
vector<string> getDatabaseServerNames() const;
Returns the pointer to the callback function registered for this Subscription.
Syntax
unsigned int (*getNotifyCallback() const)( Subscription& sub, NotifyResult *nr);
| Parameter | Description | 
|---|---|
sub  | 
The Subscription. | 
nr  | 
The NotifyResult. | 
Retrieves the payload that has been set on the Subscription object prior to posting.
Syntax
Bytes getCPayload() const;
Retrieves the name of the subscription.
Syntax
string getSubscriptionName() const;
Retrieves the namespace of the subscription. The subscription name must be consistent with its namespace. Valid Namespace values are NS_AQ and NS_ANONYMOUS, as defined in Table 12-46.
Syntax
Namespace getSubscriptionNamespace() const;
Retrieves the name of the recipient of the notification. Possible return values are email address, the HTTP url and the PL/SQL procedure, depending on the protocol.
Syntax
string getRecipientName() const;
Retrieves the presentation mode in which the client receives notifications. Valid Presentation values are defined in Table 12-46.
Syntax
Presentation getPresentation() const;
Retrieves the protocol in which the client receives notifications. Valid Protocol values are defined in Table 12-46.
Syntax
Protocol getProtocol() const;
Returns TRUE if Subscription is NULL or FALSE otherwise.
Syntax
bool isNull() const;
Assignment operator for Subscription.
Syntax
void operator=( const Subscription& sub);
| Parameter | Description | 
|---|---|
sub  | 
The original Subscription. | 
Registers a notification callback function when the protocol is PROTO_CBK, as defined in Table 12-46. Context registration is also included in this call.
Syntax
void setCallbackContext( void *ctx);
| Parameter | Description | 
|---|---|
ctx  | 
The context set. | 
Specifies the list of database server distinguished names from which the client will receive notifications.
Syntax
void setDatabaseServerNames( const vector<string>& dbsrv);
| Parameter | Description | 
|---|---|
dbsrv  | 
The list of database distinguished names | 
Sets the context that the client wants to get passed to the user callback. If the protocol is set to PROTO_CBK or not specified, this attribute needs to be set before registering the subscription handle.
Syntax
void setNotifyCallback( 
   unsigned int (*callback)(
                    Subscription& sub,
                    NotifyResult *nr));
| Parameter | Description | 
|---|---|
callback  | 
The user callback function. | 
sub  | 
The Subscription object. | 
nr  | 
The NotifyResult object. | 
Sets the Subscription object to NULL and frees the memory associated with the object.
Syntax
void setNull();
Sets the buffer content that corresponds to the payload to be posted to the Subscription.
Syntax
void setPayload( const Bytes& payload);
| Parameter | Description | 
|---|---|
payload  | 
Content of the notification. | 
Sets the presentation mode in which the client will receive notifications.
Syntax
void setPresentation( Presentation pres);
| Parameter | Description | 
|---|---|
pres  | 
Presentation mode, as defined in Table 12-46. | 
Sets the Protocol in which the client will receive event notifications, as defined in Table 12-46.
Syntax
void setProtocol( Protocol prot);
| Parameter | Description | 
|---|---|
prot  | 
Protocol mode | 
Sets the name of the subscription. All subscriptions are identified by a subscription name, which consists of a sequence of bytes of specified length.
If the namespace is NS_AQ, the subscription name is:
SCHEMA.QUEUE when registering on a single consumer queue
SCHEMA.QUEUE:CONSUMER_NAME when registering on a multi-consumer queue
Syntax
void setSubscriptionName( const string& name);
| Parameter | Description | 
|---|---|
name  | 
Subscription name. | 
Sets the namespace where the subscription is used. The subscription name must be consistent with its namespace. Default value is NS_AQ.
Syntax
void setSubscriptionNamespace( Namespace nameSpace);
| Parameter | Description | 
|---|---|
nameSpace  | 
Namespace in which the subscription is used, as defined in Table 12-46. | 
Sets the name of the recipient of the notification.
Syntax
void setRecipientName( const string& name);
| Parameter | Description | 
|---|---|
name  | 
Name of the notification recipient. |