bionic (3) CosNaming_NamingContext.3erl.gz

Provided by: erlang-manpages_20.2.2+dfsg-1ubuntu2_all bug

NAME

       CosNaming_NamingContext  -  This  interface  supports  different bind and access functions for names in a
       context.

DESCRIPTION

       This is the object that defines name scopes, names must be unique within a naming  context.  Objects  may
       have  multiple  names  and  may  exist  in  multiple  naming contexts. Name context may be named in other
       contexts and cycles are permitted.

       The type NameComponent used below is defined as:

       -record('CosNaming_NameComponent', {id, kind=""}).

       where id and kind are strings.

       The type Binding used below is defined as:

       -record('CosNaming_Binding', {binding_name, binding_type}).

       where binding_name is a Name and binding_type is an enum which has the values nobject and ncontext.

       Both these records are defined in the file CosNaming.hrl and it is included with:

       -include_lib("orber/COSS/CosNaming/CosNaming.hrl").

       There are a number of exceptions that can be returned from functions in this interface.

         * NotFound is defined as

         -record('CosNaming_NamingContext_NotFound',
                 {rest_of_name, why}).

         * CannotProceed is defined as

         -record('CosNaming_NamingContext_CannotProceed',
                 {rest_of_name, cxt}).

         * InvalidName is defined as

         -record('CosNaming_NamingContext_InvalidName', {}).

         * NotFound is defined as

         -record('CosNaming_NamingContext_NotFound', {}).

         * AlreadyBound is defined as

         -record('CosNaming_NamingContext_AlreadyBound', {}).

         * NotEmpty is defined as

         -record('CosNaming_NamingContext_NotEmpty', {}).

       These exceptions are defined in the file CosNaming_NamingContext.hrl and it is included with:

       -include_lib("orber/COSS/CosNaming/CosNaming_NamingContext.hrl").

EXPORTS

       bind(NamingContext, Name, Object) -> Return

              Types:

                 NameContext = #objref
                 Name = [NameComponent]
                 Object = #objref
                 Return = ok

              Creates a binding of a name and an object in the naming context. Naming contexts  that  are  bound
              using bind() do not participate in name resolution.

       rebind(NamingContext, Name, Object) -> Return

              Types:

                 NamingContext = #objref
                 Name = [NameComponent]
                 Object = #objref
                 Return = ok

              Creates a binding of a name and an object in the naming context even if the name is already bound.
              Naming contexts that are bound using rebind() do not participate in name resolution.

       bind_context(NamingContext1, Name, NamingContex2) -> Return

              Types:

                 NamingContext1 = NamingContext2 =#objref
                 Name = [NameComponent]
                 Return = ok

              The bind_context function creates a binding of a name and a naming context in the current context.
              Naming contexts that are bound using bind_context() participate in name resolution.

       rebind_context(NamingContext1, Name, NamingContex2) -> Return

              Types:

                 NamingContext1 = NamingContext2 =#objref
                 Name = [NameComponent]
                 Return = ok

              The  rebind_context  function  creates  a  binding  of  a name and a naming context in the current
              context even if the name already is bound. Naming contexts that are bound  using  rebind_context()
              participate in name resolution.

       resolve(NamingContext, Name) -> Return

              Types:

                 NamingContext = #objref
                 Name = [NameComponent]
                 Return = Object
                 Object = #objref

              The  resolve  function is the way to retrieve an object bound to a name in the naming context. The
              given name must match exactly the bound name. The type of the object is not returned, clients  are
              responsible for narrowing the object to the correct type.

       unbind(NamingContext, Name) -> Return

              Types:

                 NamingContext = #objref
                 Name = [NameComponent]
                 Return = ok

              The unbind operation removes a name binding from the naming context.

       new_context(NamingContext) -> Return

              Types:

                 NamingContext = #objref
                 Return = #objref

              The new_context operation creates a new naming context.

       bind_new_context(NamingContext, Name) -> Return

              Types:

                 NamingContext = #objref
                 Name = [NameComponent]
                 Return = #objref

              The  new_context  operation  creates  a  new  naming  context  and binds it to Name in the current
              context.

       destroy(NamingContext) -> Return

              Types:

                 NamingContext = #objref
                 Return = ok

              The destroy operation disposes the NamingContext object and removes it from the name  server.  The
              context must be empty e.g. not contain any bindings to be removed.

       list(NamingContext, HowMany) -> Return

              Types:

                 NamingContext = #objref
                 HowMany = int()
                 Return = {ok, BindingList, BindingIterator}
                 BindingList = [Binding]
                 BindingIterator = #objref

              The list operation returns a BindingList with a number of bindings up-to HowMany from the context.
              It also returns a BindinIterator which can be used to step through the list. If the  total  number
              of  existing  bindings are less than, or equal to, the HowMany parameter a NIL object reference is
              returned.

          Note:
              One  must  destroy  the  BindingIterator,  unless  it  is  a  NIL  object  reference,   by   using
              'BindingIterator':destroy(). Otherwise one can get dangling objects.