UniSet
1.4.0
|
00001 /* This file is part of the UniSet project 00002 * Copyright (c) 2002 Free Software Foundation, Inc. 00003 * Copyright (c) 2002 Pavel Vainerman 00004 * 00005 * This program is free software; you can redistribute it and/or modify 00006 * it under the terms of the GNU General Public License as published by 00007 * the Free Software Foundation; either version 2 of the License, or 00008 * (at your option) any later version. 00009 * 00010 * This program is distributed in the hope that it will be useful, 00011 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00012 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00013 * GNU General Public License for more details. 00014 * 00015 * You should have received a copy of the GNU General Public License 00016 * along with this program; if not, write to the Free Software 00017 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. 00018 */ 00019 // -------------------------------------------------------------------------- 00024 // -------------------------------------------------------------------------- 00025 #ifndef ObjectRepositoryFactory_H_ 00026 #define ObjectRepositoryFactory_H_ 00027 // -------------------------------------------------------------------------- 00028 #include <omniORB4/CORBA.h> 00029 #include <omniORB4/Naming.hh> 00030 #include "Exceptions.h" 00031 #include "ObjectRepository.h" 00032 00033 // ----------------------------------------------------------------------------------------- 00034 //namespase ORepositoryFacotry 00035 //{ 00036 00038 class ObjectRepositoryFactory: private ObjectRepository 00039 { 00040 public: 00041 // ObjectRepositoryFactory(); 00042 // ObjectRepositoryFactory(int* argc=argc_ptr, char* **argv=argv_ptr); // параметры инициализации ORB 00043 ObjectRepositoryFactory( UniSetTypes::Configuration* conf ); 00044 ~ObjectRepositoryFactory(); 00045 00047 bool createSection(const char* name, const char* in_section )throw(UniSetTypes::ORepFailed,UniSetTypes::InvalidObjectName); 00049 bool createSection(const std::string& name, const std::string& in_section)throw(UniSetTypes::ORepFailed,UniSetTypes::InvalidObjectName); 00051 bool createSectionF(const std::string& fullName)throw(UniSetTypes::ORepFailed,UniSetTypes::InvalidObjectName); 00052 00054 bool createRootSection(const char* name); 00056 bool createRootSection(const std::string& name); 00057 00058 00060 bool removeSection(const std::string& fullName, bool recursive=false); 00061 00063 bool renameSection(const std::string& newName, const std::string& fullName); 00070 void printSection(const std::string& fullName); 00071 // void printSection(CosNaming::NamingContext_ptr ctx); 00072 // @} 00073 // end of add to ORepServiceGroup 00074 00075 protected: 00076 00077 private: 00079 bool createContext(const char *cname, CosNaming::NamingContext_ptr ctx); 00080 }; 00081 //}; 00082 00083 #endif