X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=src%2FcreaImageIOTreeHandlerImageAdder.cpp;h=ce619c3424fd943e928f40ad8c7920f1a09030df;hb=3213e0d7adb70f52d723a5b7065f4780b6c9e451;hp=f51ef14c816a299a222309a2b04eb3d08101d713;hpb=0d98274674b094c2fbd1caec3afb0fe7ce993186;p=creaImageIO.git diff --git a/src/creaImageIOTreeHandlerImageAdder.cpp b/src/creaImageIOTreeHandlerImageAdder.cpp index f51ef14..ce619c3 100644 --- a/src/creaImageIOTreeHandlerImageAdder.cpp +++ b/src/creaImageIOTreeHandlerImageAdder.cpp @@ -138,19 +138,8 @@ namespace creaImageIO } else { - std::string path=node->GetAttribute("FullFileName"); - //Gets the add key - std::string addKey=mSynchronizer->GetAttribute("ADD_KEY","IGNORED_FILES","PATH",path,mCurrentDB); - //Gets the number of files added - int files=atoi((mSynchronizer->GetAttribute("FILES_ADDED","ADD_OPS","ADD_KEY",addKey,mCurrentDB)).c_str()); - files=files-1; - std::stringstream out; - out<SetAttribute("FILES_ADDED","ADD_OPS",out.str(),"ADD_KEY",addKey,mCurrentDB); - //Sets the file as removed - mSynchronizer->SetAttribute("REMOVE","IGNORED_FILES","1","PATH = '"+path+"' AND ADD_KEY",addKey,mCurrentDB); - } + remove(node); + } } //===================================================================== @@ -167,7 +156,16 @@ namespace creaImageIO } else { - std::string path=(*it)->GetAttribute("FullFileName"); + remove(*it); + } + + } + } + + + void TreeHandlerImageAdder::remove( tree::Node* i_node) + { + std::string path=i_node->GetAttribute("FullFileName"); //Gets the add key std::string addKey=mSynchronizer->GetAttribute("ADD_KEY","IGNORED_FILES","PATH",path,mCurrentDB); //Gets the number of files added @@ -179,11 +177,7 @@ namespace creaImageIO mSynchronizer->SetAttribute("FILES_ADDED","ADD_OPS",out.str(),"ADD_KEY",addKey,mCurrentDB); //Sets the file as removed mSynchronizer->SetAttribute("REMOVE","IGNORED_FILES","1","PATH = '"+path+"' AND ADD_KEY",addKey,mCurrentDB); - } - - } } - //======================================================================= @@ -228,18 +222,16 @@ namespace creaImageIO bool valid = mSynchronizer->isIndexed(itr->string());//true;//=mTimestampHandler->AddDirectory(dirpath, itr->string(), lastModif, time(0),mCurrentDB); if(valid) { - + std::string path(itr->string()); mProgress.IncNumberScannedFiles(); - boost::algorithm::replace_all( itr->string(), - INVALID_FILE_SEPARATOR , - VALID_FILE_SEPARATOR); + boost::algorithm::replace_all( path,INVALID_FILE_SEPARATOR,VALID_FILE_SEPARATOR); i_sc.ReadAttributes(itr->string(),attr); - mTreeHandler->GetTopLevelNodeId("FullFileName",itr->string(),parent_id); + // mTreeHandler->GetTopLevelNodeId("FullFileName",itr->string(),parent_id); mTreeHandler->AddBranch(attr); mProgress.IncNumberHandledFiles(); std::stringstream removedOn; removedOn<InsertIgnoreFile(addKey, itr->string(),"0",removedOn.str(),mCurrentDB); + mSynchronizer->InsertIgnoreFile(addKey, path,"0",removedOn.str(),mCurrentDB); mProgressSignal(mProgress); @@ -291,7 +283,7 @@ namespace creaImageIO { mProgress.IncNumberHandledFiles(); AddFile( itr->string() ); - mTreeHandler->GetTopLevelNodeId("FullFileName",itr->string(),parent_id); + //mTreeHandler->GetTopLevelNodeId("FullFileName",itr->string(),parent_id); std::stringstream removedOn; removedOn<InsertIgnoreFile(addKey, itr->string(),"0",removedOn.str(),mCurrentDB); @@ -688,5 +680,10 @@ namespace creaImageIO } } - + //======================================================================= + const std::string TreeHandlerImageAdder::isAttributeExist(const std::string i_attr) + { + return mTreeHandler->GetTree().isAttributeExist(i_attr); + } + }