#include <mif_cfgrep.h>

Definition at line 56 of file mif_cfgrep.h.
Public Member Functions | |
| mif_CfgRep (mif_ObjectTypeTable_e a_type, string a_name) | |
| virtual | ~mif_CfgRep () |
| UInt32_t | ShowRevisions () |
| mif_ObjectTypeTable_e | GetType () const |
| UInt32_t | LastRev () |
| void | SetPath () |
| string | GenerateFilename (UInt32_t a_revision=0) |
| void | SetLastRevNum () |
| UInt32_t | Upload (pf_File &a_cfgFile) |
| void | RemoveCfg () |
| cmn_File | GetCfg (UInt32_t a_revision) |
Static Public Member Functions | |
| static void | ReplaceVersion (pf_File &parsedFile) |
| static void | ReplaceDate (pf_File &parsedFile) |
| static void | ReplaceUser (pf_File &parsedFile, const string &uadString) |
| static void | ReplaceClients (pf_File &a_parsedFile) |
| static void | ReplaceHosts (pf_File &a_parsedFile) |
| static void | ParseToFile (pf_File &a_pfFile, const i_DataBlock_t &a_cfgFile, string a_fileType, string a_user) |
Protected Attributes | |
| mif_ObjectTypeTable_e | m_type |
| string | m_name |
| cmn_Path | m_repPath |
| UInt32_t | m_lastRevision |
Private Attributes | |
| log_CLASSID_m | |
| mif_CfgRep::mif_CfgRep | ( | mif_ObjectTypeTable_e | a_type, | |
| string | a_name | |||
| ) |
Definition at line 41 of file mif_cfgrep.cpp.
References cmn_CreatePath(), dbg_NORM, log_DBG_m, log_FUNC_A_m, m_lastRevision, m_name, m_repPath, SetLastRevNum(), and SetPath().
00043 : m_type(a_type), 00044 m_name(a_name){ 00045 log_FUNC_A_m(mif_CfgRep, "a_type" << a_type << 00046 " m_name" << m_name); 00047 SetPath(); 00048 log_DBG_m(dbg_NORM, "m_repPath: " << m_repPath); 00049 SetLastRevNum(); 00050 if (m_lastRevision == 0) 00051 cmn_CreatePath(m_repPath); 00052 00053 } // mif_CfgRep::mif_CfgRep

| virtual mif_CfgRep::~mif_CfgRep | ( | ) | [inline, virtual] |
| UInt32_t mif_CfgRep::ShowRevisions | ( | ) |
| mif_ObjectTypeTable_e mif_CfgRep::GetType | ( | ) | const [inline] |
Definition at line 80 of file mif_cfgrep.h.
References m_type.
Referenced by SetPath().
00080 { 00081 return m_type; 00082 };

| UInt32_t mif_CfgRep::LastRev | ( | ) | [inline] |
Definition at line 83 of file mif_cfgrep.h.
References m_lastRevision.
Referenced by i_ManagementInterface_i::ShowDriveRevs(), i_ManagementInterface_i::ShowLibraryRevs(), i_ManagementInterface_i::ShowPartitionRevs(), i_ManagementInterface_i::ShowPoolRevs(), i_ManagementInterface_i::ShowSystemCfgRevs(), and Upload().
00083 { return m_lastRevision;};

| void mif_CfgRep::ReplaceVersion | ( | pf_File & | parsedFile | ) | [static] |
Definition at line 252 of file mif_cfgrep.cpp.
References pf_ValueList::Add(), pf_ValueList::At(), cfg_BASE_HEADER_FILEVERSION, cmn_Num2Str(), dbg_NORM, log_DBG_m, log_FUNC_m, pf_File::m_header, pf_ValueList::m_vec, MIF_IVD_VERSION, pf_Value::simple, pf_ValueList::size(), and pf_Elem::val.
Referenced by ParseToFile().
00252 { 00253 log_FUNC_m(ReplaceVersion); 00254 00255 00256 string version = cmn_Num2Str(MIF_IVD_VERSION); 00257 bool lineFound(false); 00258 00259 for (UInt32_t ct=0; ct<a_parsedFile.m_header.size(); ct++) { 00260 00261 if (a_parsedFile.m_header.m_vec[ct].name == string(cfg_BASE_HEADER_FILEVERSION)) { 00262 const_cast<string &>(a_parsedFile.m_header.At(ct).simple.val) = version; 00263 log_DBG_m(dbg_NORM, 00264 "MIF: Version value successfully replaced by actual one."); 00265 lineFound = true; 00266 break; 00267 } 00268 } 00269 00270 if (!lineFound) { 00271 00272 pf_Value pfValue(string(cfg_BASE_HEADER_FILEVERSION), version, 2); 00273 a_parsedFile.m_header.Add(pfValue); 00274 } 00275 00276 } // mif_CfgRep::CheckInsertVersion


| void mif_CfgRep::ReplaceDate | ( | pf_File & | parsedFile | ) | [static] |
Definition at line 281 of file mif_cfgrep.cpp.
References pf_ValueList::Add(), pf_ValueList::At(), cfg_BASE_HEADER_FILEDATE, dbg_NORM, log_DBG_m, log_FUNC_m, log_WRN_m, pf_File::m_header, pf_ValueList::m_vec, pf_Value::simple, pf_ValueList::size(), cmn_Time::Time2YMDhms(), and pf_Elem::val.
Referenced by ParseToFile().
00281 { 00282 log_FUNC_m(ReplaceDate); 00283 00284 00285 cmn_Time dateTime; 00286 bool lineFound(false); 00287 00288 for (UInt32_t ct=0; ct<a_parsedFile.m_header.size(); ct++) { 00289 00290 if (a_parsedFile.m_header.m_vec[ct].name == string(cfg_BASE_HEADER_FILEDATE)) { 00291 const_cast<string &>(a_parsedFile.m_header.At(ct).simple.val) = dateTime.Time2YMDhms(); 00292 //a_parsedFile.m_header.At(ct).simple.val = dateTime.Time2YMDhms(); 00293 log_DBG_m(dbg_NORM, 00294 "MIF: DateTime value successfully replaced by current one."); 00295 lineFound = true; 00296 break; 00297 } 00298 } 00299 00300 if (!lineFound) { 00301 pf_Value pfValue(string(cfg_BASE_HEADER_FILEDATE), dateTime.Time2YMDhms(), 3); 00302 a_parsedFile.m_header.Add(pfValue); 00303 log_WRN_m("MIF: Configuration file seems to have incomplete header (missing Date line)."); 00304 } 00305 00306 } // mif_CfgRep::ReplaceDate


| void mif_CfgRep::ReplaceUser | ( | pf_File & | parsedFile, | |
| const string & | uadString | |||
| ) | [static] |
Definition at line 311 of file mif_cfgrep.cpp.
References pf_ValueList::Add(), pf_ValueList::At(), cfg_BASE_HEADER_FILEUSER, dbg_NORM, log_DBG_m, log_FUNC_m, pf_File::m_header, pf_ValueList::m_vec, pf_Value::simple, pf_ValueList::size(), and pf_Elem::val.
Referenced by ParseToFile().
00312 { 00313 log_FUNC_m(ReplaceUser); 00314 bool lineFound(false); 00315 for (UInt32_t ct=0; ct<a_parsedFile.m_header.size(); ct++) { 00316 00317 if (a_parsedFile.m_header.m_vec[ct].name == string(cfg_BASE_HEADER_FILEUSER)) { 00318 const_cast<string &>(a_parsedFile.m_header.At(ct).simple.val) = a_uadLine; 00319 log_DBG_m(dbg_NORM, 00320 "MIF: User value successfully replaced by actual one."); 00321 lineFound = true; 00322 break; 00323 } 00324 } 00325 00326 if (!lineFound) { 00327 pf_Value pfValue(string(cfg_BASE_HEADER_FILEUSER), a_uadLine, 4); 00328 a_parsedFile.m_header.Add(pfValue); 00329 00330 // log_ERR_m("MIF: This configuration file seems to have incomplete header (missing User line)."); 00331 // throw ivd_Error(ie_MIF_CFG_HEADER_ERROR, "\"User\" line is missing."); 00332 } 00333 00334 } // mif_CfgRep::ReplaceUser


| void mif_CfgRep::ReplaceClients | ( | pf_File & | a_parsedFile | ) | [static] |
Definition at line 401 of file mif_cfgrep.cpp.
References cfg_FILE_VAR_CLIENT, log_FUNC_m, pf_File::m_common, pf_File::m_sections, pf_SectionList::m_vec, pf_ValueList::m_vec, mif_ResolveHostToFQDN(), PF_GROUP, and PF_SIMPLE.
Referenced by i_ManagementInterface_i::AddPartition(), and i_ManagementInterface_i::UpdatePartition().
00401 { 00402 log_FUNC_m(ReplaceClients); 00403 00404 string hostFqdn; 00405 00406 // replace in Common section. 00407 for (UInt32_t ct=0; ct < a_parsedFile.m_common.m_vec.size() ; ct++) { 00408 00409 if (a_parsedFile.m_common.m_vec[ct].type == PF_SIMPLE) { 00410 if (a_parsedFile.m_common.m_vec[ct].simple.val.compare(cfg_FILE_VAR_CLIENT) == 0) { 00411 mif_ResolveHostToFQDN(a_parsedFile.m_common.m_vec[ct].simple.val); 00412 } 00413 } 00414 else if (a_parsedFile.m_common.m_vec[ct].type == PF_GROUP) { 00415 if (a_parsedFile.m_common.m_vec[ct].group->grpType.compare(cfg_FILE_VAR_CLIENT) == 0){ 00416 mif_ResolveHostToFQDN(a_parsedFile.m_common.m_vec[ct].name); 00417 } 00418 } 00419 } 00420 00421 // replace in other sections. 00422 for (UInt32_t cts=0; cts < a_parsedFile.m_sections.m_vec.size(); cts++) { 00423 00424 for (UInt32_t ctm=0; ctm < a_parsedFile.m_sections.m_vec[cts].size(); ctm++) { 00425 00426 if (a_parsedFile.m_sections.m_vec[cts].m_vec[ctm].type == PF_SIMPLE) { 00427 if (a_parsedFile.m_sections.m_vec[cts].m_vec[ctm].name.compare(cfg_FILE_VAR_CLIENT) == 0) { 00428 mif_ResolveHostToFQDN(a_parsedFile.m_sections.m_vec[cts].m_vec[ctm].simple.val); 00429 } 00430 00431 } 00432 else if (a_parsedFile.m_sections.m_vec[cts].m_vec[ctm].type == PF_GROUP) { 00433 if (a_parsedFile.m_sections.m_vec[cts].m_vec[ctm].group->grpType.compare(cfg_FILE_VAR_CLIENT) == 0) { 00434 mif_ResolveHostToFQDN(a_parsedFile.m_sections.m_vec[cts].m_vec[ctm].name); 00435 } 00436 } 00437 } 00438 } 00439 00440 } // mif_CfgRep::ReplaceClients


| void mif_CfgRep::ReplaceHosts | ( | pf_File & | a_parsedFile | ) | [static] |
Definition at line 358 of file mif_cfgrep.cpp.
References cfg_FILE_VAR_HOST, log_FUNC_m, pf_File::m_common, pf_File::m_sections, pf_SectionList::m_vec, pf_ValueList::m_vec, mif_ResolveHostToFQDN(), PF_GROUP, PF_SIMPLE, and strcasecmp.
Referenced by i_ManagementInterface_i::AddDrive(), i_ManagementInterface_i::AddLibrary(), i_ManagementInterface_i::UpdateDrive(), and i_ManagementInterface_i::UpdateLibrary().
00358 { 00359 log_FUNC_m(ReplaceHosts); 00360 00361 // replace in Common section. 00362 for (UInt32_t ct=0; ct < a_parsedFile.m_common.m_vec.size() ; ct++) { 00363 00364 if (a_parsedFile.m_common.m_vec[ct].type == PF_SIMPLE) { 00365 00366 if (a_parsedFile.m_common.m_vec[ct].name.compare(cfg_FILE_VAR_HOST) == 0){ 00367 mif_ResolveHostToFQDN(a_parsedFile.m_common.m_vec[ct].simple.val); 00368 } 00369 } 00370 else if (a_parsedFile.m_common.m_vec[ct].type == PF_GROUP) { 00371 00372 if (a_parsedFile.m_common.m_vec[ct].group->grpType.compare(cfg_FILE_VAR_HOST) == 0) { 00373 mif_ResolveHostToFQDN(a_parsedFile.m_common.m_vec[ct].name); 00374 } 00375 } 00376 } 00377 00378 // replace in other sections. 00379 for (UInt32_t cts=0; cts < a_parsedFile.m_sections.m_vec.size(); cts++) { 00380 00381 for (UInt32_t ctm=0; ctm < a_parsedFile.m_sections.m_vec[cts].size(); ctm++) { 00382 00383 if (a_parsedFile.m_sections.m_vec[cts].m_vec[ctm].type == PF_SIMPLE) { 00384 00385 if (strcasecmp(a_parsedFile.m_sections.m_vec[cts].m_vec[ctm].name.c_str(),cfg_FILE_VAR_HOST) == 0) { 00386 mif_ResolveHostToFQDN(a_parsedFile.m_sections.m_vec[cts].m_vec[ctm].simple.val); 00387 } 00388 } 00389 else if (a_parsedFile.m_sections.m_vec[cts].m_vec[ctm].type == PF_GROUP) { 00390 00391 if (a_parsedFile.m_sections.m_vec[cts].m_vec[ctm].group->grpType.compare(cfg_FILE_VAR_HOST) == 0) { 00392 mif_ResolveHostToFQDN(a_parsedFile.m_sections.m_vec[cts].m_vec[ctm].name); 00393 } 00394 } 00395 } 00396 } 00397 00398 } // mif_CfgRep::ReplaceHosts


| void mif_CfgRep::SetPath | ( | ) |
Definition at line 57 of file mif_cfgrep.cpp.
References ivd_Directories::cfgDrv, ivd_Directories::cfgLib, ivd_Directories::cfgPart, ivd_Directories::cfgPool, ivd_Directories::cfgSys, cmn_Global::dirs, g_cmn, GetType(), ie_UNKNOWN_TYPE, ivd_Error, log_FUNC_m, m_name, m_repPath, mif_DRIVE, mif_LIBRARY, mif_PARTITION, mif_POOL, and mif_SYSTEM.
Referenced by mif_CfgRep().
00057 { 00058 log_FUNC_m(SetPath); 00059 00060 switch (GetType()) { 00061 case(mif_LIBRARY): 00062 m_repPath = g_cmn.dirs.cfgLib; break; 00063 case(mif_DRIVE): 00064 m_repPath = g_cmn.dirs.cfgDrv; break; 00065 case(mif_POOL): 00066 m_repPath = g_cmn.dirs.cfgPool; break; 00067 case(mif_SYSTEM): 00068 m_repPath = g_cmn.dirs.cfgSys; break; 00069 case(mif_PARTITION): 00070 m_repPath = g_cmn.dirs.cfgPart; break; 00071 default: 00072 throw ivd_Error(ie_UNKNOWN_TYPE); 00073 } 00074 m_repPath += m_name; 00075 00076 } // mif_CfgRep::ComposePath


| string mif_CfgRep::GenerateFilename | ( | UInt32_t | a_revision = 0 |
) |
Definition at line 81 of file mif_cfgrep.cpp.
References CFG_LINK_LATEST, cmn_Num2Str(), ie_MIF_CFG_REVISION_OUT_OF_RANGE, ivd_Error, log_FUNC_m, m_lastRevision, MIF_CFG_MAX_REVISIONS, and MIF_CFG_REV_WIDTH.
Referenced by GetCfg(), and Upload().
00081 { 00082 log_FUNC_m(GenerateFilename); 00083 00084 string revString; 00085 if (a_revision == 0) 00086 return CFG_LINK_LATEST; 00087 else { 00088 if (m_lastRevision < MIF_CFG_MAX_REVISIONS) { 00089 revString = cmn_Num2Str(a_revision); 00090 // add leading zeroes 00091 while (revString.length() < MIF_CFG_REV_WIDTH) 00092 revString.insert(0, "0"); 00093 00094 return revString; 00095 } 00096 else { 00097 // if a_revision exceeds highest revision number allowed... 00098 throw ivd_Error(ie_MIF_CFG_REVISION_OUT_OF_RANGE); 00099 } 00100 } 00101 } // mif_CfgRep::GenerateFilename


| void mif_CfgRep::SetLastRevNum | ( | ) |
Definition at line 105 of file mif_cfgrep.cpp.
References CFG_LINK_LATEST, cmn_Str2Num(), dbg_DETAIL, dbg_NORM, log_DBG_m, log_FUNC_m, m_lastRevision, m_repPath, cmn_Path::OnlyFileName(), and cmn_File::ReadLink().
Referenced by mif_CfgRep(), and Upload().
00105 { 00106 log_FUNC_m(SetLastRevNum); 00107 00108 // read target name w/ ABSOLUTE FILENAME 00109 try { 00110 cmn_Path linkName(m_repPath + CFG_LINK_LATEST); 00111 cmn_Path fileName = cmn_File::ReadLink(linkName); 00112 fileName.OnlyFileName(); 00113 00114 log_DBG_m(dbg_DETAIL, "lastRevision:" << cmn_Str2Num(fileName) << 00115 " fileName:" << fileName); 00116 00117 m_lastRevision = cmn_Str2Num(fileName); 00118 } 00119 catch (ivd_Error& e){ 00120 log_DBG_m(dbg_NORM, e) 00121 m_lastRevision = 0; 00122 } 00123 catch (ivd_SysError& se){ 00124 log_DBG_m(dbg_NORM, se) 00125 m_lastRevision = 0; 00126 } 00127 } // mif_CfgRep::SetLastRevNum


| void mif_CfgRep::ParseToFile | ( | pf_File & | a_pfFile, | |
| const i_DataBlock_t & | a_cfgFile, | |||
| string | a_fileType, | |||
| string | a_user | |||
| ) | [static] |
Definition at line 129 of file mif_cfgrep.cpp.
References dbg_DETAIL, dbg_NORM, pf_File::GetFileType(), ie_MIF_CFG_CONFIG_FILE_UNKNOWN, ivd_Error, log_DBG_m, log_FUNC_m, pf_File::Parse(), ReplaceDate(), ReplaceUser(), ReplaceVersion(), and strcasecmp.
Referenced by i_ManagementInterface_i::AddDrive(), i_ManagementInterface_i::AddLibrary(), i_ManagementInterface_i::AddPartition(), i_ManagementInterface_i::AddPool(), i_ManagementInterface_i::UpdateDrive(), i_ManagementInterface_i::UpdateLibrary(), i_ManagementInterface_i::UpdatePartition(), i_ManagementInterface_i::UpdatePool(), and i_ManagementInterface_i::UpdateSystemCfg().
00132 { 00133 log_FUNC_m(ParseToFile); 00134 try { 00135 // 00136 // parse config buffer 00137 log_DBG_m(dbg_DETAIL, "block:" << endl << *(a_cfgFile.get_buffer())); 00138 a_pfFile.Parse(reinterpret_cast<char *>(const_cast<CORBA::Octet *>(a_cfgFile.get_buffer())), a_cfgFile.length()); 00139 log_DBG_m(dbg_DETAIL, "a_pfFile:" << endl << a_pfFile); 00140 } 00141 catch (ivd_Exception) { 00142 log_DBG_m(dbg_NORM, 00143 "MIF: Syntax error encountered in configuration file."); 00144 throw; 00145 } 00146 00147 // 00148 // check if type matches 00149 if (strcasecmp(a_pfFile.GetFileType().c_str(), a_fileType.c_str()) != 0) { 00150 throw ivd_Error(ie_MIF_CFG_CONFIG_FILE_UNKNOWN); 00151 } 00152 00153 mif_CfgRep::ReplaceVersion(a_pfFile); 00154 mif_CfgRep::ReplaceDate(a_pfFile); 00155 mif_CfgRep::ReplaceUser(a_pfFile, a_user); 00156 00157 }


Definition at line 159 of file mif_cfgrep.cpp.
References CFG_LINK_LATEST, cmn_File::DeleteF(), GenerateFilename(), cmn_Path::GetAbsolutePathName(), cmn_Path::GetFileName(), ivd_BaseException::GetFriendly(), ie_MIF_CFG_TROUBLE_IN_REPOSITORY, ivd_Error, LastRev(), log_ERR_m, log_FUNC_m, m_lastRevision, m_repPath, SetLastRevNum(), and pf_File::WriteFile().
Referenced by i_ManagementInterface_i::AddLibrary(), i_ManagementInterface_i::AddPartition(), i_ManagementInterface_i::UpdatePartition(), and i_ManagementInterface_i::UpdateSystemCfg().
00159 { 00160 00161 log_FUNC_m(Upload); 00162 // copy file to directory (buffer -> repositoryPath/fileName) 00163 try { 00164 cmn_Path fileName(m_repPath + GenerateFilename(LastRev() + 1)); 00165 a_cfgFile.WriteFile(fileName); 00166 //delete symlink 00167 cmn_Path latest(m_repPath + CFG_LINK_LATEST); 00168 cmn_File latestFile(latest); 00169 00170 try { 00171 latestFile.DeleteF(); 00172 } catch (...){ 00173 //ignore 00174 } 00175 //make new symlink 00176 // Windows SymLink requires full pathname, while on UNIX we 00177 // preffer relative pathnames 00178 #if TGT_OS_windows 00179 cmn_File cfgFile(fileName.GetAbsolutePathName()); 00180 #else 00181 cmn_File cfgFile(fileName.GetFileName()); 00182 #endif 00183 cfgFile.SymLink(latest); 00184 00185 SetLastRevNum(); 00186 } 00187 catch (ivd_Error& e) { 00188 log_ERR_m("MIF: Creating file failed." << e); 00189 throw ivd_Error(ie_MIF_CFG_TROUBLE_IN_REPOSITORY, e.GetFriendly()); 00190 } 00191 catch (ivd_SysError& se) { 00192 log_ERR_m("MIF: Creating file failed." << se); 00193 throw ivd_Error(ie_MIF_CFG_TROUBLE_IN_REPOSITORY, se.GetFriendly()); 00194 } 00195 return m_lastRevision; 00196 00197 } // mif_CfgRep::Upload


| void mif_CfgRep::RemoveCfg | ( | ) |
Definition at line 202 of file mif_cfgrep.cpp.
References cmn_CleanDir(), dbg_NORM, cmn_File::DeleteDir(), ivd_BaseException::GetFriendly(), ie_MIF_CFG_TROUBLE_IN_REPOSITORY, ivd_Error, log_DBG_m, log_ERR_m, log_FUNC_m, and m_repPath.
Referenced by i_ManagementInterface_i::RemoveLibrary(), i_ManagementInterface_i::RemovePartition(), and i_ManagementInterface_i::RemovePool().
00202 { 00203 log_FUNC_m(RemoveCfg); 00204 00205 try { 00206 cmn_CleanDir(m_repPath); 00207 log_DBG_m(dbg_NORM, 00208 "MIF: CfgDB repository subdirectory successfully cleared."); 00209 cmn_File::DeleteDir(m_repPath); 00210 log_DBG_m(dbg_NORM, 00211 "MIF: CfgDB repository subdirectory successfully removed."); 00212 } 00213 catch (ivd_Error& e) { 00214 log_ERR_m("CfgDB repository removal failed." << e); 00215 throw ivd_Error(ie_MIF_CFG_TROUBLE_IN_REPOSITORY, e.GetFriendly()); 00216 } 00217 catch (ivd_SysError& se) { 00218 log_ERR_m("CfgDB repository removal failed." << se); 00219 throw ivd_Error(ie_MIF_CFG_TROUBLE_IN_REPOSITORY, se.GetFriendly()); 00220 } 00221 00222 } // mif_CfgRep::RemoveCfg


Definition at line 227 of file mif_cfgrep.cpp.
References GenerateFilename(), ivd_BaseException::GetError(), ivd_BaseException::GetFriendly(), ie_MIF_CFG_REVISION_NONEXISTENT, ie_MIF_CFG_TROUBLE_IN_REPOSITORY, ivd_Error, log_ERR_m, log_FUNC_m, m_repPath, and cmn_File::StatF().
Referenced by i_ManagementInterface_i::ShowDrive(), i_ManagementInterface_i::ShowLibrary(), i_ManagementInterface_i::ShowPartition(), i_ManagementInterface_i::ShowPool(), and i_ManagementInterface_i::ShowSystemCfg().
00227 { 00228 log_FUNC_m(GetCfg); 00229 try { 00230 cmn_File cfgFile(m_repPath + GenerateFilename(a_revision)); 00231 ivd_FileInfo_t info; 00232 cfgFile.StatF(info); 00233 return cfgFile; 00234 } 00235 catch (ivd_Error& e) { 00236 log_ERR_m("CfgDB repository read failed." << e); 00237 throw ivd_Error(ie_MIF_CFG_TROUBLE_IN_REPOSITORY, e.GetFriendly()); 00238 } 00239 catch (ivd_SysError& se) { 00240 #if TGT_OS_windows 00241 if (se.GetError() != ERROR_FILE_NOT_FOUND) { 00242 #else 00243 if (se.GetError() != ENOENT) { 00244 #endif 00245 log_ERR_m("Error accessing the configuration file " << m_repPath + GenerateFilename(a_revision) << ". " << se); 00246 } 00247 throw ivd_Error(ie_MIF_CFG_REVISION_NONEXISTENT); 00248 } 00249 } // mif_CfgRep::ReadConfigRevision


mif_ObjectTypeTable_e mif_CfgRep::m_type [protected] |
string mif_CfgRep::m_name [protected] |
cmn_Path mif_CfgRep::m_repPath [protected] |
Definition at line 71 of file mif_cfgrep.h.
Referenced by GetCfg(), mif_CfgRep(), RemoveCfg(), SetLastRevNum(), SetPath(), and Upload().
UInt32_t mif_CfgRep::m_lastRevision [protected] |
Definition at line 72 of file mif_cfgrep.h.
Referenced by GenerateFilename(), LastRev(), mif_CfgRep(), SetLastRevNum(), and Upload().
mif_CfgRep::log_CLASSID_m [private] |
Definition at line 75 of file mif_cfgrep.h.
1.5.6