00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef _fbfs_NAMESERVER
00021 #define _fbfs_NAMESERVER 1
00022
00023 #include <vector>
00024
00025 #include <omniORB3/CORBA.h>
00026
00027 #include "../idl/NameServer.hh"
00028 #include "../utils/Prefs.h"
00029 #include "Rule.h"
00030
00037 namespace fbfs {
00038 class NameServer_i;
00039 };
00040
00048 class fbfs::NameServer_i : public POA_fbfs::NameServer, public PortableServer::RefCountServantBase {
00049 public:
00054 NameServer_i(utils::Prefs &prefs, const CORBA::ORB_ptr &orb);
00055
00059 virtual ~NameServer_i() {};
00060
00070 char * lookup(const Security &cert, const Obj_id &id)
00071 throw(NotFound, SecurityException, InternalError);
00072 private:
00073 utils::Prefs &prefs;
00074 CORBA::ORB_ptr orb;
00075 vector<fbfs::Rule> rules;
00076 Security cert;
00077 };
00078
00092 #endif