00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef _utils_NAMESERVER
00021 #define _utils_NAMESERVER 1
00022
00028 #define PROJECT_NAME "fbfs"
00029 #include <omniORB3/CORBA.h>
00030
00031 #include "URI.h"
00032
00033 namespace utils {
00034 class NameServer;
00035 };
00036
00050 class utils::NameServer {
00051 public:
00055 class Exception {};
00056
00059 class NotFoundException : public Exception {};
00060
00063 class InvalidNameException : public Exception {};
00064
00077 static CORBA::Boolean
00078 bindObjectToName(const char *context, const char* name, const char* kind,
00079 const CORBA::ORB_ptr orb, const CORBA::Object_ptr obj);
00080
00089 static CORBA::Boolean
00090 unbindObject(const char *context, const char* name, const char* kind, const CORBA::ORB_ptr orb);
00091
00102 static CORBA::Object_ptr
00103 get_object( const CORBA::ORB_ptr orb, const utils::URI &uri ) throw(Exception);
00104 };
00105
00106 #endif