#include <creaImageIOSystem.h>
#include <boost/filesystem.hpp>
#include <boost/algorithm/string.hpp>
-#include "io.h"
+//#include "io.h"
#ifndef PATH_MAX // If not defined yet : do it
# define PATH_MAX 2048
#endif
//==============================================================
void Gimmick::Initialize(const std::string& path)
{
- mDescriptorPath=path;
Initialize();
}
//Add additional DB from user Settings
addDBSettings();
- // Creates files and directories database
- mTimestampDatabase = new TimestampDatabaseHandler(GetTimestampDatabasePath());
- // Create or open local database
- if (! boost::filesystem::exists( GetTimestampDatabasePath() ) )
- {
- std::string mess = "Timestamp database '";
- mess += GetTimestampDatabasePath();
- mess += "' does not exist : creating it";
- GimmickMessage(1,mess<<std::endl);
-
- if ( ! mTimestampDatabase->Create() )
- {
- GimmickError("ERROR CREATING '"<<GetTimestampDatabasePath()<<"'");
- }
- }
- else
- {
- /// Open and test it
- GimmickMessage(1,"Opening Timestamp database '"
- <<GetTimestampDatabasePath()<<"' "
- <<std::endl);
- if ( ! mTimestampDatabase->Open() )
- {
- GimmickError("ERROR OPENING '"<<GetTimestampDatabasePath()<<"'");
- }
-
- }
-
}
///////////////////////////////////////////////////////////////////////
{
delete it->second;
}
- delete mTimestampDatabase;
}
//==============================================================
return mLocalDatabasePath;
}
- //================================================================
- //================================================================
- const std::string& Gimmick::GetTimestampDatabasePath()
- {
- if (mTimestampDatabasePath.size()==0)
- {
- mTimestampDatabasePath = GetUserSettingsDirectory();
- mTimestampDatabasePath += "Shared/gimmick/timestamp_database.sqlite3";
- boost::algorithm::replace_all( mTimestampDatabasePath,
- INVALID_FILE_SEPARATOR ,
- VALID_FILE_SEPARATOR);
- }
- return mTimestampDatabasePath;
- }
//========================================================================
//========================================================================
return i->second;
}
- //========================================================================
- ///Returns the timestamp database handler
- TimestampDatabaseHandler* Gimmick::GetTimestampDatabase() const
- {
- return mTimestampDatabase;
- }
//========================================================================
mImageAdder.SetCurrentDatabase(d);
mImageAdder.SetTreeHandler(GetTreeHandler(d));
- mImageAdder.SetTimestampHandler(mTimestampDatabase);
mImageAdder.SetSynchronizer(mSynchronizer);
- mImageAdder.AddFiles(filenames);
+ mImageAdder.AddFiles(filenames);
}
//========================================================================
TreeHandler * handler=GetTreeHandler(d);
mImageAdder.SetCurrentDatabase(d);
mImageAdder.SetTreeHandler(handler);
- mImageAdder.SetTimestampHandler(mTimestampDatabase);
mImageAdder.SetSynchronizer(mSynchronizer);
mImageAdder.AddDirectory(f,recurse);
}
{
mImageAdder.SetCurrentDatabase(d);
mImageAdder.SetSynchronizer(mSynchronizer);
- mTimestampDatabase->RemoveNode("PATH",node,d);
mImageAdder.RemoveFile(node);
}
//========================================================================
TreeHandler * handler=GetTreeHandler(d);
mImageAdder.SetCurrentDatabase(d);
mImageAdder.SetTreeHandler(handler);
- mImageAdder.SetTimestampHandler(mTimestampDatabase);
mImageAdder.SetSynchronizer(mSynchronizer);
mImageAdder.CopyFiles(filenames, mSettings->getValue(SETTINGS_COPY_PATH));
}
TreeHandler * handler=GetTreeHandler(d);
mImageAdder.SetCurrentDatabase(d);
mImageAdder.SetTreeHandler(handler);
- mImageAdder.SetTimestampHandler(mTimestampDatabase);
mImageAdder.SetSynchronizer(mSynchronizer);
return mImageAdder.Synchronize(repair, checkAttributes);
}
TreeHandler * handler=GetTreeHandler(d);
mImageAdder.SetCurrentDatabase(d);
mImageAdder.SetTreeHandler(handler);
- mImageAdder.SetTimestampHandler(mTimestampDatabase);
mImageAdder.SetSynchronizer(mSynchronizer);
mImageAdder.GetAttributes(params, filename, results);
}
mImageAdder.SetTreeHandler(it->second);
mImageAdder.DeleteDriveFromMainDB(drive);
}
- mImageAdder.SetTimestampHandler(mTimestampDatabase);
mImageAdder.SetSynchronizer(mSynchronizer);
mImageAdder.DeleteDriveFromOtherDB(drive);
}