aboutsummaryrefslogtreecommitdiffstats
path: root/lib/cosNotification/src/CosTypedEvent.idl
diff options
context:
space:
mode:
authorErlang/OTP <[email protected]>2009-11-20 14:54:40 +0000
committerErlang/OTP <[email protected]>2009-11-20 14:54:40 +0000
commit84adefa331c4159d432d22840663c38f155cd4c1 (patch)
treebff9a9c66adda4df2106dfd0e5c053ab182a12bd /lib/cosNotification/src/CosTypedEvent.idl
downloadotp-84adefa331c4159d432d22840663c38f155cd4c1.tar.gz
otp-84adefa331c4159d432d22840663c38f155cd4c1.tar.bz2
otp-84adefa331c4159d432d22840663c38f155cd4c1.zip
The R13B03 release.OTP_R13B03
Diffstat (limited to 'lib/cosNotification/src/CosTypedEvent.idl')
-rw-r--r--lib/cosNotification/src/CosTypedEvent.idl57
1 files changed, 57 insertions, 0 deletions
diff --git a/lib/cosNotification/src/CosTypedEvent.idl b/lib/cosNotification/src/CosTypedEvent.idl
new file mode 100644
index 0000000000..d77c37731a
--- /dev/null
+++ b/lib/cosNotification/src/CosTypedEvent.idl
@@ -0,0 +1,57 @@
+#ifndef _COS_TYPED_EVENT_IDL_
+#define _COS_TYPED_EVENT_IDL_
+
+#pragma prefix "omg.org"
+
+#include<CosEvent.idl>
+
+module CosTypedEventComm {
+
+ interface TypedPushConsumer : CosEventComm::PushConsumer {
+ Object get_typed_consumer();
+ };
+
+ interface TypedPullSupplier : CosEventComm::PullSupplier {
+ Object get_typed_supplier();
+ };
+};
+
+module CosTypedEventChannelAdmin {
+
+ exception InterfaceNotSupported {};
+ exception NoSuchImplementation {};
+ typedef string Key;
+
+
+ interface TypedProxyPushConsumer :
+ CosEventChannelAdmin::ProxyPushConsumer,
+ CosTypedEventComm::TypedPushConsumer { };
+
+ interface TypedProxyPullSupplier :
+ CosEventChannelAdmin::ProxyPullSupplier,
+ CosTypedEventComm::TypedPullSupplier { };
+
+ interface TypedSupplierAdmin :
+ CosEventChannelAdmin::SupplierAdmin {
+ TypedProxyPushConsumer obtain_typed_push_consumer(in Key supported_interface)
+ raises(InterfaceNotSupported);
+ CosEventChannelAdmin::ProxyPullConsumer obtain_typed_pull_consumer (in Key uses_interface)
+ raises(NoSuchImplementation);
+ };
+
+ interface TypedConsumerAdmin :
+ CosEventChannelAdmin::ConsumerAdmin {
+ TypedProxyPullSupplier obtain_typed_pull_supplier(in Key supported_interface)
+ raises (InterfaceNotSupported);
+ CosEventChannelAdmin::ProxyPushSupplier obtain_typed_push_supplier(in Key uses_interface)
+ raises(NoSuchImplementation);
+ };
+
+ interface TypedEventChannel {
+ TypedConsumerAdmin for_consumers();
+ TypedSupplierAdmin for_suppliers();
+ void destroy ();
+ };
+};
+
+#endif /* ifndef _COS_TYPED_EVENT_IDL_ */