The subscription class encapsulates the information and operations necessary for registering a subscriber for notification.
Table 13-47 Enumerated Values Used by Subscription Class
| Attribute | Options |
|---|---|
Presentation |
|
Protocol |
|
Namespace |
|
Table 13-48 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 receives 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 receives notifications. |
|
|
Specifies the protocol in which the client receives notifications. |
|
|
Specifies 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. |
Subscription(const Subscription& sub);
| Parameter | Description |
|---|---|
env |
The Environment. |
sub |
The original Subscription. |
Retrieves the callback context.
void* getCallbackContext() const;
Returns the number of database servers in which the client is interested for the registration.
unsigned int getDatabaseServersCount() const;
Returns the names of all the database servers where the client registered an interest for notification.
vector<string> getDatabaseServerNames() const;
Returns the pointer to the callback function registered for this Subscription.
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 before posting.
Bytes getCPayload() const;
Retrieves the name of the subscription.
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 13-47.
Namespace getSubscriptionNamespace() const;
Retrieves the name of the recipient of the notification. Possible return values are E-mail address, the HTTP url and the PL/SQL procedure, depending on the protocol.
string getRecipientName() const;
Retrieves the presentation mode in which the client receives notifications. Valid Presentation values are defined in Table 13-47.
Presentation getPresentation() const;
Retrieves the protocol in which the client receives notifications. Valid Protocol values are defined in Table 13-47.
Protocol getProtocol() const;
Returns TRUE if Subscription is NULL or FALSE otherwise.
bool isNull() const;
Assignment operator for Subscription.
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 13-47. Context registration is also included in this call.
void setCallbackContext( void *ctx);
| Parameter | Description |
|---|---|
ctx |
The context set. |
Specifies the list of database server distinguished names from which the client receives notifications.
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 must be set before registering the subscription handle.
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.
void setNull();
Sets the buffer content that corresponds to the payload to be posted to the Subscription.
void setPayload( const Bytes& payload);
| Parameter | Description |
|---|---|
payload |
Content of the notification. |
Sets the presentation mode in which the client receives notifications.
void setPresentation( Presentation pres);
| Parameter | Description |
|---|---|
pres |
Presentation mode, as defined in Table 13-47. |
Sets the Protocol in which the client receives event notifications, as defined in Table 13-47.
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 multiconsumer queue
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.
void setSubscriptionNamespace( Namespace nameSpace);
| Parameter | Description |
|---|---|
nameSpace |
Namespace in which the subscription is used, as defined in Table 13-47. |
Sets the name of the recipient of the notification.
void setRecipientName( const string& name);
| Parameter | Description |
|---|---|
name |
Name of the notification recipient. |