diff options
Diffstat (limited to 'TAO/orbsvcs/orbsvcs/CosNaming.idl')
-rw-r--r-- | TAO/orbsvcs/orbsvcs/CosNaming.idl | 237 |
1 files changed, 0 insertions, 237 deletions
diff --git a/TAO/orbsvcs/orbsvcs/CosNaming.idl b/TAO/orbsvcs/orbsvcs/CosNaming.idl deleted file mode 100644 index cfd4153fd4f..00000000000 --- a/TAO/orbsvcs/orbsvcs/CosNaming.idl +++ /dev/null @@ -1,237 +0,0 @@ -/* -*- C++ -*- */ -// $Id$ - -// ============================================================================ -// -// = LIBRARY -// cos -// -// = FILENAME -// CosNaming.idl -// -// = AUTHOR -// Marina Spivak <marina@cs.wustl.edu> -// -// ============================================================================ - -#ifndef TAO_NAMING_IDL -#define TAO_NAMING_IDL - -#pragma prefix "omg.org" - -module CosNaming -{ - // = TITLE - // This module provides interface for using COS Naming Service. - - typedef string Istring; - // Define a typedef for String. Maybe at some point, <Istring> will - // be different to support Internationalization. - - struct NameComponent - { - // = TITLE - // This is a 'simple' name. - // - // = DESCRIPTION - // Both id and kind fields are used in resolving names. - - Istring id; - // This is the name that is used to identify object references. - - Istring kind; - // Stores any addtional info about the object reference. - }; - - typedef sequence <NameComponent> Name; - // This is a compound name: <c1; c2; c3; cn> where c1 to cn-1 are - // the names of the nested contexts, and cn is the name of the - // object bound in cn-1. - - enum BindingType - { - nobject, - // object binding. - - ncontext - // Naming context binding. - }; - - struct Binding - { - Name binding_name; - // Simple name, under which an object is bound in a given context. - - BindingType binding_type; - // Indicates whether the binding_name identifies a context, and, therefore, can - // participate in name resolution. - }; - - typedef sequence <Binding> BindingList; - - interface BindingIterator; - // Forward declaration. - - interface NamingContext - { - // = TITLE - // Interface for managing name bindings and naming contexts. - - // = Exceptions. - - enum NotFoundReason - { - missing_node, - not_context, - not_object - }; - - exception NotFound - { - // = TITLE - // Indicates that the name does not identify a binding. - - NotFoundReason why; - Name rest_of_name; - }; - - exception CannotProceed - { - // = TITLE - // Implementation may throw this exception if some reason it cannot - // complete the operation. This is currently not used in TAO. - - NamingContext cxt; - Name rest_of_name; - }; - - exception InvalidName - { - // = TITLE - // A name of length 0 is invalid. Implementations may place - // further restrictions. - }; - - exception AlreadyBound - { - // = TITLE - // Indicates that the specified name is already bound to - // some object. Only one object can be bound to a - // particular name in an context. To change the binding, - // <rebind> and <rebind_context> can be used. - }; - - exception NotEmpty - { - // = TITLE - // Indicates that the context is not empty. - }; - - // = Binding operations. - - void bind (in Name n, in Object obj) - raises(NotFound, CannotProceed, InvalidName, AlreadyBound); - // Create a binding for name <n> and object <obj> in the naming - // context. Compound names are treated as follows: ctx->bind - // (<c1; c2; c3; cn>, obj) = (ctx->resolve (<c1; c2; - // cn-1>))->bind (<cn>, obj) if the there already exists a - // binding for the specified name, <AlreadyBound> exception is - // thrown. Naming contexts should be bound using <bind_context> - // and <rebind_context> in order to participate in name - // resolution later. - - void rebind (in Name n, in Object obj) - raises(NotFound, CannotProceed, InvalidName); - // This is similar to <bind> operation above, except for when - // the binding for the specified name already exists in the - // specified context. In that case, the existing binding is - // replaced with the new one. - - void bind_context (in Name n, in NamingContext nc) - raises(NotFound, CannotProceed, InvalidName, AlreadyBound); - // This is the version of <bind> specifically for binding naming - // contexts, so that they will participate in name resolution - // when compound names are passed to be resolved. - - void rebind_context (in Name n, in NamingContext nc) - raises(NotFound, CannotProceed, InvalidName); - // This is a version of <rebind> specifically for naming - // contexts, so that they can participate in name resolution - // when compound names are passed. - - // = Resolving names. - - Object resolve (in Name n) - raises(NotFound, CannotProceed, InvalidName); - // Return object reference that is bound to the name. Compound - // name resolve is defined as follows: ctx->resolve (<c1; c2; - // cn>) = ctx->resolve (<c1; c2 cn-1>)->resolve (<cn>) The - // naming service does not return the type of the object. - // Clients are responsible for "narrowing" the object to the - // appropriate type. - - // = Unbinding names. - - void unbind (in Name n) - raises(NotFound, CannotProceed, InvalidName); - // Remove the name binding from the context. When compound - // names are used, unbind is defined as follows: ctx->unbind - // (<c1; c2; cn>) = (ctx->resolve (<c1; c2; cn-1>))->unbind - // (<cn>) - - // = Creating Naming Contexts. - - NamingContext new_context (); - // This operation returns a new naming context implemented by - // the same naming server in which the operation was invoked. - // The context is not bound. - - NamingContext bind_new_context (in Name n) - raises(NotFound, AlreadyBound, CannotProceed, InvalidName); - // This operation creates a new context and binds it to the name - // supplied as an argument. The newly-created context is - // implemented by the same server as the context in which it was - // bound (the name argument excluding the last component). - - // = Deleting contexts. - - void destroy () - raises (NotEmpty); - // Delete the naming context. NOTE: the user should <unbind> - // any bindings in which the given context is bound to some - // names before invoking <destroy> operation on it. - - - // = Listing the naming context. - - void list (in unsigned long how_many, - out BindingList bl, - out BindingIterator bi); - // Returns at most the requested number of bindings <how_many> - // in <bl>. If the naming context contains additional bindings, - // they are returned with a BindingIterator. In the naming - // context does not contain any additional bindings <bi> - // returned as null. - }; - - interface BindingIterator - { - // = TITLE - // Interface for iterating over Bindings returned with the - // <list> operation. - - boolean next_one (out Binding b); - // This operation returns the next binding. If there are no - // more bindings false is returned. - - boolean next_n (in unsigned long how_many, - out BindingList bl); - // This operation returns at most the requested number of - // bindings. - - void destroy (); - // This operation destroys the iterator. - }; -}; - -#endif /* TAO_NAMING_IDL */ |