00001 #ifndef COS_EVENTCHANNELADMIN_IDL 00002 #define COS_EVENTCHANNELADMIN_IDL 00003 00004 #include <CosEventComm.idl> 00005 00016 #pragma prefix "omg.org" 00017 00018 module CosEventChannelAdmin 00019 { 00024 exception AlreadyConnected {}; 00025 00030 exception TypeError {}; 00031 00035 interface ProxyPushConsumer: CosEventComm::PushConsumer 00036 { 00043 void connect_push_supplier(in CosEventComm::PushSupplier push_supplier) 00044 raises(AlreadyConnected); 00045 }; 00046 00050 interface ProxyPullSupplier: CosEventComm::PullSupplier 00051 { 00058 void connect_pull_consumer(in CosEventComm::PullConsumer pull_consumer) 00059 raises(AlreadyConnected); 00060 }; 00061 00065 interface ProxyPullConsumer: CosEventComm::PullConsumer 00066 { 00074 void connect_pull_supplier(in CosEventComm::PullSupplier pull_supplier) 00075 raises(AlreadyConnected,TypeError); 00076 }; 00077 00081 interface ProxyPushSupplier: CosEventComm::PushSupplier 00082 { 00090 void connect_push_consumer(in CosEventComm::PushConsumer push_consumer) 00091 raises(AlreadyConnected, TypeError); 00092 }; 00093 00097 interface ConsumerAdmin 00098 { 00103 ProxyPushSupplier obtain_push_supplier(); 00104 00109 ProxyPullSupplier obtain_pull_supplier(); 00110 }; 00111 00115 interface SupplierAdmin 00116 { 00121 ProxyPushConsumer obtain_push_consumer(); 00122 00127 ProxyPullConsumer obtain_pull_consumer(); 00128 }; 00129 00133 interface EventChannel 00134 { 00140 ConsumerAdmin for_consumers(); 00141 00147 SupplierAdmin for_suppliers(); 00148 00152 void destroy(); 00153 }; 00154 }; 00155 00156 #endif /* COS_EVENTCHANNELADMIN_IDL */
![]()