Skip navigation.

Using the CORBA Notification Service

  Previous Next vertical dots separating previous/next from contents/index/pdf Contents Index View as PDF   Get Adobe Reader

 


CosNotifyChannelAdmin::SupplierAdmin::
obtain_notification_push_consumer

Synopsis

Creates proxy push consumer objects.

OMG IDL

ProxyConsumer obtain_notification_push_consumer (
in ClientType ctype,
out ProxyID proxy_id)
raises ( AdminLimitExceeded );

Exceptions

CosNotifyChannelAdmin::AdminLimitExceeded

Never raised.

CORBA::IMP_LIMIT

Indicates the following problem:

Tobj_Notification::SUB_UNSUPPORTED_CLIENT_TYPE

Description

Used when posting events. This operation is used in poster applications to create proxy push consumer objects. ClientType must be set to "CosNotifyChannelAdmin::STRUCTURED_EVENT". The ProxyID returned should be ignored. The Proxy Consumer must be narrowed the proxy supplier to CosNotifyChannelAdmin::StructuredProxyPushConsumer.

Note: Notification Service applications that start and shut down only once can use the proxy_id to determine if their subscription has been cancelled automatically or by the system administrator.

Return Value

This operation returns the new proxy's object reference. The new proxy_id is also returned through the proxy_id out parameter.

Examples

Note: Code examples shown here are abbreviated. For complete code examples, see "Creating and Posting Events" on page -4.

C++ code example:

CosNotifyChannelAdmin::ProxyConsumer_var generic_proxy_consumer =
supplier_admin->obtain_notification_push_consumer(
CosNotifyChannelAdmin::STRUCTURED_EVENT,
proxy_id
);
CosNotifyChannelAdmin::StructuredProxyPushConsumer_var
proxy_push_consumer =
CosNotifyChannelAdmin::StructuredProxyPushConsumer::_narrow(
generic_proxy_consumer
);

CosNotifyChannelAdmin::EventChannel Class

This class is used by event poster applications. The OMG IDL for this class is as follows:

Module CosNotifyChannelAdmin
{
interface EventChannel :
CosNotification::QoSAdmin,
CosNotification::AdminPropertiesAdmin,
CosEventChannelAdmin::EventChannel {
     readonly attribute ConsumerAdmin default_consumer_admin;
readonly attribute
SupplierAdmin default_supplier_admin;
readonly attribute CosNotifyFilter::FilterFactory
default_filter_factory;
};
}; //
CosNotifyChannelAdmin

 

Skip navigation bar  Back to Top Previous Next