1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59
|
//File: CosEventChannelAdmin.idl
//Part of the Event Service
#ifndef _COS_EVENT_CHANNEL_ADMIN_IDL_
#define _COS_EVENT_CHANNEL_ADMIN_IDL_
// omniORB specific pragmas to insert extra includes into the stub header.
#pragma hh #include "COS_sysdep.h"
#include <CosEventComm.idl>
#pragma prefix "omg.org"
module CosEventChannelAdmin {
exception AlreadyConnected {};
exception TypeError {};
interface ProxyPushConsumer: CosEventComm::PushConsumer {
void connect_push_supplier(
in CosEventComm::PushSupplier push_supplier)
raises(AlreadyConnected);
};
interface ProxyPullSupplier: CosEventComm::PullSupplier {
void connect_pull_consumer(
in CosEventComm::PullConsumer pull_consumer)
raises(AlreadyConnected);
};
interface ProxyPullConsumer: CosEventComm::PullConsumer {
void connect_pull_supplier(
in CosEventComm::PullSupplier pull_supplier)
raises(AlreadyConnected,TypeError);
};
interface ProxyPushSupplier: CosEventComm::PushSupplier {
void connect_push_consumer(
in CosEventComm::PushConsumer push_consumer)
raises(AlreadyConnected, TypeError);
};
interface ConsumerAdmin {
ProxyPushSupplier obtain_push_supplier();
ProxyPullSupplier obtain_pull_supplier();
};
interface SupplierAdmin {
ProxyPushConsumer obtain_push_consumer();
ProxyPullConsumer obtain_pull_consumer();
};
interface EventChannel {
ConsumerAdmin for_consumers();
SupplierAdmin for_suppliers();
void destroy();
};
};
#endif /* ifndef _COS_EVENT_CHANNEL_ADMIN_IDL_ */
|