Utils: Introduce a TemporaryDirectory and TemporaryFile class

Both wrap the corresponding Qt class, but make sure all temporary files
or directories are created inside a "master temporary directory".

Change-Id: I55461be507c828c965224c02863ea5ed9bbf9498
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
This commit is contained in:
Tobias Hunger
2017-01-19 16:44:22 +01:00
committed by Tim Jenssen
parent e6017c40fc
commit c6f90e575e
64 changed files with 324 additions and 153 deletions

View File

@@ -33,6 +33,7 @@
#include <cpptools/cppprojectfile.h>
#include <projectexplorer/project.h>
#include <utils/algorithm.h>
#include <utils/temporarydirectory.h>
#include <cplusplus/CppDocument.h>
#include <cplusplus/Token.h>
@@ -445,9 +446,10 @@ Dumper::Dumper(const CPlusPlus::Snapshot &globalSnapshot, const QString &logFile
QString logFileId_ = logFileId;
if (!logFileId_.isEmpty())
logFileId_.prepend(QLatin1Char('_'));
const QString logFileName = QDir::tempPath() + QString::fromLatin1("/qtc-codemodelinspection")
const QString logFileName = ::Utils::TemporaryDirectory::masterDirectoryPath()
+ "/qtc-codemodelinspection"
+ ideRevision_
+ QDateTime::currentDateTime().toString(QLatin1String("_yyMMdd_hhmmss"))
+ QDateTime::currentDateTime().toString("_yyMMdd_hhmmss")
+ logFileId_
+ QLatin1String(".txt");