3a4cc92b45
svn path=/trunk/; revision=14744
99 lines
2.3 KiB
Text
99 lines
2.3 KiB
Text
//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_ */
|