Taxonomy Categories:
Member Functions:
Interface Category:
API.
Inherits From:
MNotifier
Inherited By:
None.
Purpose:
The asynchronous notifier distributes the notifications asynchronously. The Notify member function causes the notification to be put into a TNotificationRequest and placed on a request queue. The notification is distributed to the caller when the request processor gets to it.
Instantiation:
Always allocate on the heap.
Deriving Classes:
This class is a concrete notifier and is not usually derived.
Concurrency:
Multithread safe.
Resource Use:
No special requirements.
- TAsynchronousNotifier (TRequestProcessor * processorToUse)
- TAsynchronousNotifier ()
Interface Category:
API.
Purpose:
- Constructs a TAsynchronousNotifier that uses the specified request processor to distribute the notifications. It does not adopt the processor. Thus, several asynchronous notifiers may share the same request processor.
- Default constructor. This creates a default request processor which the asynchronous notifier uses to distribute the notifications.
Calling Context:
- Call this function directly.
- Called by the stream-in operators and directly.
Parameters:
- TRequestProcessor * processorToUse -The processor is not adopted.
- Takes no parameters.
Return Value:
None.
Exceptions:
Throws no exceptions, passes all exceptions through.
Concurrency:
Multithread safe.
Other Considerations:
None.
virtual ~ TAsynchronousNotifier ()
Interface Category:
API.
Purpose:
Destructor.
Calling Context:
Called to destroy an object. Call this function directly.
Parameters:
Return Value:
None.
Exceptions:
Throws no exceptions, passes all exceptions through.
Concurrency:
Multithread safe.
Other Considerations:
None.
- virtual void Notify (const TNotification &)
- virtual void Notify (const TNotification &, const TInterest &)
- virtual void Notify (const TNotification &, const TCollectionOf < TInterest > &)
Interface Category:
API.
Purpose:
- Distributes the notification to all connections that match the interest given in the notification.
- Distributes the notification to all connections that match the interest specified as the second parameter. The receiver can of course receive a notification having an interest that is different than the interest used to make the connection. This is the case with interests like all-changes-interest. Such a receiver expects to get notifications for specific occurrences all sent to its all-changes-interest connection.
- Distributes the notification to all connections which have an interest that matches anyone of the collections of interests.
Calling Context:
- Call this function directly.
- Call this function directly.
- Call this function directly.
Parameters:
- const TNotification & -The notification to distribute.
- const TNotification & -The notification to distribute.
- const TInterest & -The interest used to match the connections that will get the distributed notification.
- const TNotification & -The notification to distribute.
- const TCollectionOf < TInterest > & -The collection of interests that will be used to match the connections that will get the distributed notification.
Return Value:
None.
Exceptions:
Throws no exceptions, passes all exceptions through.
Concurrency:
Multithread safe.
Other Considerations:
None.
virtual void BeginNotification ()
Interface Category:
API.
Purpose:
For efficiency reasons, notifiers might decide to batch up a set of notifications. The notifications will not be distributed until after the EndNotification call is made.
Calling Context:
Call this function directly.
Parameters:
Return Value:
None.
Exceptions:
Throws no exceptions, passes all exceptions through.
Concurrency:
Multithread safe.
Other Considerations:
None.
virtual void EndNotification ()
Interface Category:
API.
Purpose:
For efficiency reasons, notifiers might decide to batch up a set of notifications. The notifications will not be distributed until after the EndNotification call is made.
Calling Context:
Call this function directly.
Parameters:
Return Value:
None.
Exceptions:
Throws no exceptions, passes all exceptions through.
Concurrency:
Multithread safe.
Other Considerations:
None.
virtual void AdoptRequest (TNotificationRequest *)
Interface Category:
API.
Purpose:
Adopts the notification request and places the request on the request processor's queue.
Calling Context:
Call this function directly.
Parameters:
Return Value:
None.
Exceptions:
Throws no exceptions, passes all exceptions through.
Concurrency:
Multithread safe.
Other Considerations:
None.
Member Function: TAsynchronousNotifier::RemoveConnectionInterest
virtual void RemoveConnectionInterest (const TNotifierConnection &, const TInterest &)
Interface Category:
API.
Purpose:
A notifier connection tells the notifier that it is no longer interested in getting notifications by removing the interests.
Calling Context:
Call this function directly.
Parameters:
Return Value:
None.
Exceptions:
Throws no exceptions, passes all exceptions through.
Concurrency:
Not multithread safe.
Other Considerations:
None.
virtual void AddConnectionInterest (TNotifierConnection *, const TInterest &)
Interface Category:
API.
Purpose:
A notifier connection tells the notifier what notifications that it is interested in using the Add Connection Interest member function.
Calling Context:
Call this function directly.
Parameters:
- TNotifierConnection * -The notifier connection that will receive the notifications.
- const TInterest & -The interest that indicates what notifications to send.
Return Value:
None.
Exceptions:
Throws no exceptions, passes all exceptions through.
Concurrency:
Multithread safe.
Other Considerations:
None.
virtual bool IsBatching () const
Interface Category:
API.
Purpose:
This selector indicates whether the notifier is in notification distribution batch mode.
Calling Context:
Call this function directly.
Parameters:
Return Value:
Returns true if the notifier is batching up a group of notifications to distribute.
Exceptions:
Throws no exceptions, passes all exceptions through.
Concurrency:
Multithread safe.
Other Considerations:
None.
virtual bool HasConnectionFor (const TInterest &) const
Interface Category:
API.
Purpose:
A selector used to tell if any receiver has expressed desire in getting notifications for the given interest.
Calling Context:
Call this function directly.
Parameters:
- const TInterest & -The interest to test connection for.
Return Value:
Returns true if there is at least one connection with the given interest.
Exceptions:
Throws no exceptions, passes all exceptions through.
Concurrency:
Multithread safe.
Other Considerations:
None.
Click the icon to mail questions or corrections about this material to Taligent personnel.
Copyright©1995 Taligent,Inc. All rights reserved.