diff options
Diffstat (limited to 'idl')
-rw-r--r-- | idl/coseventcomm.idl | 34 | ||||
-rw-r--r-- | idl/cosnaming.idl | 98 |
2 files changed, 132 insertions, 0 deletions
diff --git a/idl/coseventcomm.idl b/idl/coseventcomm.idl new file mode 100644 index 0000000000..e659c8d560 --- /dev/null +++ b/idl/coseventcomm.idl @@ -0,0 +1,34 @@ +//File: CosEventComm.idl +//Part of the Event Service +//From http://industry.ebi.ac.uk/openBSA/idl/CosEventComm.idl + +#ifndef _COS_EVENT_COMM_IDL_ +#define _COS_EVENT_COMM_IDL_ +#pragma prefix "omg.org" + +module CosEventComm { + + exception Disconnected{}; + + interface PushConsumer { + void push (in any data) raises(Disconnected); + void disconnect_push_consumer(); + }; + + interface PushSupplier { + void disconnect_push_supplier(); + }; + + interface PullSupplier { + any pull () raises(Disconnected); + any try_pull (out boolean has_event) + raises(Disconnected); + void disconnect_pull_supplier(); + }; + + interface PullConsumer { + void disconnect_pull_consumer(); + }; + +}; +#endif /* ifndef _COS_EVENT_COMM_IDL_ */ diff --git a/idl/cosnaming.idl b/idl/cosnaming.idl new file mode 100644 index 0000000000..233d324f97 --- /dev/null +++ b/idl/cosnaming.idl @@ -0,0 +1,98 @@ +//File: CosNaming.idl +//The only module of the Naming Service +//From http://industry.ebi.ac.uk/openBSA/idl/CosNaming.idl + +#ifndef _COS_NAMING_IDL_ +#define _COS_NAMING_IDL_ +#pragma prefix "omg.org" + +module CosNaming +{ + typedef string Istring; + struct NameComponent { + Istring id; + Istring kind; + }; + + typedef sequence <NameComponent> Name; + + enum BindingType {nobject, ncontext}; + + struct Binding { + Name binding_name; + BindingType binding_type; + }; + + typedef sequence <Binding> BindingList; + + + interface BindingIterator; + + interface NamingContext { + + enum NotFoundReason { missing_node, + not_context, + not_object}; + + exception NotFound { NotFoundReason why; + Name rest_of_name;}; + + exception CannotProceed { NamingContext cxt; + Name rest_of_name;}; + + exception InvalidName{}; + exception AlreadyBound {}; + exception NotEmpty{}; + + void bind( in Name n, + in Object obj) + raises( NotFound, + CannotProceed, + InvalidName, + AlreadyBound); + void rebind(in Name n, + in Object obj) + raises( NotFound, + CannotProceed, + InvalidName); + void bind_context( in Name n, + in NamingContext nc) + raises( NotFound, + CannotProceed, + InvalidName, + AlreadyBound); + void rebind_context(in Name n, + in NamingContext nc) + raises( NotFound, + CannotProceed, + InvalidName); + Object resolve (in Name n) + raises( NotFound, + CannotProceed, + InvalidName); + void unbind(in Name n) + raises( NotFound, + CannotProceed, + InvalidName); + NamingContext new_context(); + NamingContext bind_new_context(in Name n) + raises( NotFound, + AlreadyBound, + CannotProceed, + InvalidName); + void destroy( ) + raises(NotEmpty); + void list ( in unsigned long how_many, + out BindingList bl, + out BindingIterator bi); + }; + + interface BindingIterator { + boolean next_one(out Binding b); + boolean next_n( in unsigned long how_many, + out BindingList bl); + void destroy(); + }; + +}; +#endif /* ifndef _COS_NAMING_IDL_ */ |