![]() |
![]() |
e-docs > Tuxedo > Using the CORBA Notification Service > CORBA Notification Service API Reference |
Using the CORBA Notification Service
|
CORBA IDL
Channel find_channel(
in ChannelID channel_id );
Parameter
In this release of BEA Tuxedo, there can only be one event channel; therefore, the ChannelID that is passed in must be set to Tobj_SimpleEvents::DEFAULT_CHANNEL (for C++) or Tobj_SimpleEvents.DEFAULT_CHANNEL.Value (for Java).
Exceptions
Note: For more information on exceptions and corresponding minor codes, see "Exception Minor Codes" on page 2-66.
Description
Used by poster applications and subscriber applications. This operation is used to find the event channel so that it can be used by the poster to post events and by the subscriber to subscribe and unsubscribe to events.
Return Value
Returns the default event channel's object reference.
Examples
Note: Code examples shown here are abbreviated. For complete code examples, see "Getting the Event Channel" on page 3-3.
C++ code example:
channel_factory->find_channel(
Tobj_SimpleEvents::DEFAULT_CHANNEL);
Java code example:
channel_factory.find_channel(DEFAULT_CHANNEL.value);
CosNotification Service API
This section contains a discussion of the operations defined by the CosNotification Service that are implemented by the BEA Tuxedo CORBA Notification Service. These operations are only a subset of the complete set of operations. This subset is a functionally complete API that can be used as an alternative to the BEA Simple Events API.
This API is more complex then the BEA Simple Events API. There are two reasons for this. First, the CosNotification Service API is more complex. Second, the BEA Tuxedo implementation of the CosNotification Service API places additional restrictions on the operations that are supported. Because this complexity offers no advantages in terms of performance or flexibility, BEA Systems, Inc. recommends that you use the BEA Simple Events API whenever possible.
The CosNotification API is provided for those who require that a standard API be used whenever possible for purposes of portability. In regard to functionality, this API provides no benefits beyond those offered by the Simple Events API. Applications that are developed using this API will be mostly, but not completely, portable. The reason for this is that not enough of the CosNotification Service API is supported to facilitate portability. For example, the filtering grammar required by the CORBA-based Notification Service is based on the COS Trader grammar. Since BEA Tuxedo does not support this grammar, but supports an alternative grammar based on the BEA Tuxedo EventBroker grammar, any application that requires filtering will not be portable. The same is true for QoS, that is, the CosNotification Service API does not support the CORBA-based Notification Service standard qualities of service, but it does support alternative qualities of service.
Overview of Supported CosNotification Service Classes
Figure 2-3 shows the CosNotification Service classes implemented, in full or in part, in this release of BEA Tuxedo and their relationships.
Figure 2-3 Implemented CosNotification Service Classes
The operations supported by each class are summarized below. For more detailed descriptions, see "Detailed Descriptions of CosNotification Service Classes" on page 2-31.
This class is used by the event poster and subscriber applications. It supports the get_channel_factory operation which is used to get the channel factory when posting, subscribing, and unsubscribing to events.
This class is used by event poster and subscriber applications. It supports three operations:
This class is used by event poster applications. It supports the obtain_notification_push_consumer operation. Poster applications use this operation to create proxy push consumer objects which in turn are used to post events to the Notification Service.
This class is used by event poster applications. It supports the following operations:
This class is used by event subscriber applications to create a filter object. It supports the create_filter operation. The filter object provides all data filtering including domain, type, and filterable data.
This class is used by event subscriber applications. It supports the following operations:
This class is used by event subscriber applications. It supports the following operations:
This class is used by event subscriber applications. It supports the following operations:
This interface is implemented by event subscriber applications. It supports the push_structured_event operation. The Notification Service invokes this operation to deliver events to the subscriber.
Detailed Descriptions of CosNotification Service Classes
This section describes the CosNotification Service classes that this release of BEA Tuxedo implements. These classes are fully described in the CosNotification Service IDL files, which are located in the tuxdir/include directory.
Note: If you use class operations that are not supported, the CORBA::NO_IMPLEMENT exception is raised.
CosNotifyFilter::Filter Class
This class is used by event subscriber applications. The OMG IDL for this class is as follows:
Module CosNotifyFilter
{
interface Filter {
ConstraintInfoSeq add_constraints (
in ConstraintExpSeq constraint)
raises (InvalidConstraint);
void destroy();
};
}; //CosNotifyFilter
![]() |
![]() |
![]() |
![]() |
||
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |