diff options
author | Erlang/OTP <[email protected]> | 2009-11-20 14:54:40 +0000 |
---|---|---|
committer | Erlang/OTP <[email protected]> | 2009-11-20 14:54:40 +0000 |
commit | 84adefa331c4159d432d22840663c38f155cd4c1 (patch) | |
tree | bff9a9c66adda4df2106dfd0e5c053ab182a12bd /lib/cosEvent/src/CosEventChannelAdmin.idl | |
download | otp-84adefa331c4159d432d22840663c38f155cd4c1.tar.gz otp-84adefa331c4159d432d22840663c38f155cd4c1.tar.bz2 otp-84adefa331c4159d432d22840663c38f155cd4c1.zip |
The R13B03 release.OTP_R13B03
Diffstat (limited to 'lib/cosEvent/src/CosEventChannelAdmin.idl')
-rw-r--r-- | lib/cosEvent/src/CosEventChannelAdmin.idl | 66 |
1 files changed, 66 insertions, 0 deletions
diff --git a/lib/cosEvent/src/CosEventChannelAdmin.idl b/lib/cosEvent/src/CosEventChannelAdmin.idl new file mode 100644 index 0000000000..d5cb92c4e0 --- /dev/null +++ b/lib/cosEvent/src/CosEventChannelAdmin.idl @@ -0,0 +1,66 @@ +#ifndef _COSEVENTCHANELADMIN_IDL +#define _COSEVENTCHANELADMIN_IDL + +#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 + + + + |