mirror of
https://github.com/swift-project/pilotclient.git
synced 2026-04-02 23:25:53 +08:00
Issue #77 Factor out parts of CDirectoryUtils into CSwiftDirectories
CDirectoryUtils is utilities for manipulating directories. CSwiftDirectories is getters that return directories used by swift.
This commit is contained in:
@@ -16,6 +16,7 @@
|
||||
#include "blackmisc/iterator.h"
|
||||
#include "blackmisc/range.h"
|
||||
#include "blackmisc/fileutils.h"
|
||||
#include "blackmisc/swiftdirectories.h"
|
||||
#include "blackmisc/directoryutils.h"
|
||||
#include "blackmisc/statusmessage.h"
|
||||
#include "blackmisc/stringutils.h"
|
||||
@@ -1886,7 +1887,7 @@ namespace BlackMisc
|
||||
|
||||
const QString &CAircraftModelList::invalidModelFileAndPath()
|
||||
{
|
||||
static const QString f = CFileUtils::appendFilePathsAndFixUnc(CDirectoryUtils::logDirectory(), "invalidmodels.json");
|
||||
static const QString f = CFileUtils::appendFilePathsAndFixUnc(CSwiftDirectories::logDirectory(), "invalidmodels.json");
|
||||
return f;
|
||||
}
|
||||
|
||||
|
||||
@@ -9,6 +9,7 @@
|
||||
#include "blackmisc/simulation/aircraftmodelutils.h"
|
||||
#include "blackmisc/simulation/fscommon/fscommonutil.h"
|
||||
#include "blackmisc/simulation/aircraftmodellist.h"
|
||||
#include "blackmisc/swiftdirectories.h"
|
||||
#include "blackmisc/directoryutils.h"
|
||||
#include "blackmisc/verify.h"
|
||||
|
||||
@@ -134,7 +135,7 @@ namespace BlackMisc
|
||||
BLACK_VERIFY_X(dir.exists(), Q_FUNC_INFO, "Directory does not exist");
|
||||
if (!dir.exists()) { return {}; }
|
||||
|
||||
const QString htmlTemplate = CFileUtils::readFileToString(CDirectoryUtils::htmlTemplateFilePath());
|
||||
const QString htmlTemplate = CFileUtils::readFileToString(CSwiftDirectories::htmlTemplateFilePath());
|
||||
const QString fn("airlineAircraftMatrix.html");
|
||||
const bool ok = CFileUtils::writeStringToFile(htmlTemplate.arg(html), dir.absoluteFilePath(fn));
|
||||
return ok ? dir.absoluteFilePath(fn) : "";
|
||||
|
||||
@@ -7,6 +7,7 @@
|
||||
*/
|
||||
|
||||
#include "autopublishdata.h"
|
||||
#include "blackmisc/swiftdirectories.h"
|
||||
#include "blackmisc/fileutils.h"
|
||||
#include "blackmisc/json.h"
|
||||
#include "blackmisc/logcategorylist.h"
|
||||
@@ -106,7 +107,7 @@ namespace BlackMisc
|
||||
{
|
||||
if (this->isEmpty()) { return false; }
|
||||
const QString fn = fileBaseName() % u'_' % QDateTime::currentDateTimeUtc().toString("yyyyMMddHHmmss") % fileAppendix();
|
||||
return this->writeJsonToFile(CFileUtils::appendFilePaths(CDirectoryUtils::logDirectory(), fn));
|
||||
return this->writeJsonToFile(CFileUtils::appendFilePaths(CSwiftDirectories::logDirectory(), fn));
|
||||
}
|
||||
|
||||
bool CAutoPublishData::writeJsonToFile(const QString &pathAndFile) const
|
||||
|
||||
@@ -16,6 +16,7 @@
|
||||
#include "blackmisc/pq/length.h"
|
||||
#include "blackmisc/datacache.h"
|
||||
#include "blackmisc/statusmessagelist.h"
|
||||
#include "blackmisc/swiftdirectories.h"
|
||||
#include "blackmisc/directoryutils.h"
|
||||
#include "blackmisc/blackmiscexport.h"
|
||||
|
||||
@@ -91,7 +92,7 @@ namespace BlackMisc
|
||||
bool readFromJsonFile(const QString &fileAndPath, bool clear = true);
|
||||
|
||||
//! Read all JSON files matching the base name
|
||||
int readFromJsonFiles(const QString &dirPath = CDirectoryUtils::logDirectory());
|
||||
int readFromJsonFiles(const QString &dirPath = CSwiftDirectories::logDirectory());
|
||||
|
||||
//! Analyze against DB data
|
||||
CStatusMessageList analyzeAgainstDBData(const CAircraftModelList &dbModels);
|
||||
@@ -109,10 +110,10 @@ namespace BlackMisc
|
||||
static const QString &fileAppendix();
|
||||
|
||||
//! Do any auto pubish files exist?
|
||||
static bool existAutoPublishFiles(const QString &dirPath = CDirectoryUtils::logDirectory());
|
||||
static bool existAutoPublishFiles(const QString &dirPath = CSwiftDirectories::logDirectory());
|
||||
|
||||
//! Delete any existing auto publish files
|
||||
static int deleteAutoPublishFiles(const QString &dirPath = CDirectoryUtils::logDirectory());
|
||||
static int deleteAutoPublishFiles(const QString &dirPath = CSwiftDirectories::logDirectory());
|
||||
|
||||
// ----------------- testing only ---------------
|
||||
|
||||
|
||||
@@ -8,6 +8,7 @@
|
||||
|
||||
#include "fscommonutil.h"
|
||||
#include "aircraftcfgparser.h"
|
||||
#include "blackmisc/swiftdirectories.h"
|
||||
#include "blackmisc/directoryutils.h"
|
||||
#include "blackmisc/fileutils.h"
|
||||
#include "blackmisc/stringutils.h"
|
||||
@@ -418,9 +419,9 @@ namespace BlackMisc
|
||||
int CFsCommonUtil::copyFsxTerrainProbeFiles(const QString &simObjectDir, CStatusMessageList &messages)
|
||||
{
|
||||
messages.clear();
|
||||
if (!CDirectoryUtils::existsUnemptyDirectory(CDirectoryUtils::shareTerrainProbeDirectory()))
|
||||
if (!CDirectoryUtils::existsUnemptyDirectory(CSwiftDirectories::shareTerrainProbeDirectory()))
|
||||
{
|
||||
messages.push_back(CStatusMessage(getLogCategories(), CStatusMessage::SeverityError, u"No terrain probe source files in '%1'") << CDirectoryUtils::shareTerrainProbeDirectory());
|
||||
messages.push_back(CStatusMessage(getLogCategories(), CStatusMessage::SeverityError, u"No terrain probe source files in '%1'") << CSwiftDirectories::shareTerrainProbeDirectory());
|
||||
return -1;
|
||||
}
|
||||
|
||||
@@ -438,7 +439,7 @@ namespace BlackMisc
|
||||
return -1;
|
||||
}
|
||||
|
||||
const QString lastSegment = CFileUtils::lastPathSegment(CDirectoryUtils::shareTerrainProbeDirectory());
|
||||
const QString lastSegment = CFileUtils::lastPathSegment(CSwiftDirectories::shareTerrainProbeDirectory());
|
||||
targetDir = CFileUtils::appendFilePathsAndFixUnc(targetDir, lastSegment);
|
||||
const bool hasDir = td.mkpath(targetDir);
|
||||
if (!hasDir)
|
||||
@@ -447,8 +448,8 @@ namespace BlackMisc
|
||||
return -1;
|
||||
}
|
||||
|
||||
const int copied = CDirectoryUtils::copyDirectoryRecursively(CDirectoryUtils::shareTerrainProbeDirectory(), targetDir, true);
|
||||
messages.push_back(CStatusMessage(getLogCategories(), CStatusMessage::SeverityInfo, u"Copied %1 files from '%2' to '%3'") << copied << CDirectoryUtils::shareTerrainProbeDirectory() << targetDir);
|
||||
const int copied = CDirectoryUtils::copyDirectoryRecursively(CSwiftDirectories::shareTerrainProbeDirectory(), targetDir, true);
|
||||
messages.push_back(CStatusMessage(getLogCategories(), CStatusMessage::SeverityInfo, u"Copied %1 files from '%2' to '%3'") << copied << CSwiftDirectories::shareTerrainProbeDirectory() << targetDir);
|
||||
return copied;
|
||||
}
|
||||
|
||||
|
||||
@@ -16,6 +16,7 @@
|
||||
#include "blackmisc/pq/length.h"
|
||||
#include "blackmisc/logmessage.h"
|
||||
#include "blackmisc/worker.h"
|
||||
#include "blackmisc/swiftdirectories.h"
|
||||
#include "blackmisc/directoryutils.h"
|
||||
#include "blackconfig/buildconfig.h"
|
||||
#include <QDateTime>
|
||||
@@ -72,7 +73,7 @@ namespace BlackMisc
|
||||
QStringList CInterpolationLogger::getLatestLogFiles()
|
||||
{
|
||||
QStringList files({ "", "" });
|
||||
const QString logDir = CDirectoryUtils::logDirectory();
|
||||
const QString logDir = CSwiftDirectories::logDirectory();
|
||||
QDir logs(logDir);
|
||||
if (!logs.exists()) { return files; }
|
||||
logs.setNameFilters(filePatterns());
|
||||
@@ -91,14 +92,14 @@ namespace BlackMisc
|
||||
|
||||
QString CInterpolationLogger::getLogDirectory()
|
||||
{
|
||||
return CDirectoryUtils::logDirectory();
|
||||
return CSwiftDirectories::logDirectory();
|
||||
}
|
||||
|
||||
CStatusMessageList CInterpolationLogger::writeLogFiles(const QList<SituationLog> &interpolation, const QList<PartsLog> &parts)
|
||||
{
|
||||
if (parts.isEmpty() && interpolation.isEmpty()) { return CStatusMessage(static_cast<CInterpolationLogger *>(nullptr)).warning(u"No data for log"); }
|
||||
static const QString html = QStringLiteral("Entries: %1\n\n%2");
|
||||
const QString htmlTemplate = CFileUtils::readFileToString(CDirectoryUtils::htmlTemplateFilePath());
|
||||
const QString htmlTemplate = CFileUtils::readFileToString(CSwiftDirectories::htmlTemplateFilePath());
|
||||
|
||||
CStatusMessageList msgs;
|
||||
const QString ts = QDateTime::currentDateTimeUtc().toString("yyyyMMddhhmmss");
|
||||
@@ -108,7 +109,7 @@ namespace BlackMisc
|
||||
{
|
||||
QString file = filePatternInterpolationLog();
|
||||
file.remove('*');
|
||||
const QString fn = CFileUtils::appendFilePaths(CDirectoryUtils::logDirectory(), QStringLiteral("%1 %2").arg(ts, file));
|
||||
const QString fn = CFileUtils::appendFilePaths(CSwiftDirectories::logDirectory(), QStringLiteral("%1 %2").arg(ts, file));
|
||||
const bool s = CFileUtils::writeStringToFile(htmlTemplate.arg(html.arg(interpolation.size()).arg(htmlInterpolation)), fn);
|
||||
msgs.push_back(CInterpolationLogger::logStatusFileWriting(s, fn));
|
||||
}
|
||||
@@ -118,7 +119,7 @@ namespace BlackMisc
|
||||
{
|
||||
QString file = filePatternPartsLog();
|
||||
file.remove('*');
|
||||
const QString fn = CFileUtils::appendFilePaths(CDirectoryUtils::logDirectory(), QStringLiteral("%1 %2").arg(ts, file));
|
||||
const QString fn = CFileUtils::appendFilePaths(CSwiftDirectories::logDirectory(), QStringLiteral("%1 %2").arg(ts, file));
|
||||
const bool s = CFileUtils::writeStringToFile(htmlTemplate.arg(html.arg(parts.size()).arg(htmlParts)), fn);
|
||||
msgs.push_back(CInterpolationLogger::logStatusFileWriting(s, fn));
|
||||
}
|
||||
@@ -126,7 +127,7 @@ namespace BlackMisc
|
||||
QString kml = CKmlUtils::wrapAsKmlDocument(CInterpolationLogger::getKmlChangedSituations(interpolation));
|
||||
if (!kml.isEmpty())
|
||||
{
|
||||
const QString fn = CFileUtils::appendFilePaths(CDirectoryUtils::logDirectory(), QStringLiteral("%1_changedSituations.kml").arg(ts));
|
||||
const QString fn = CFileUtils::appendFilePaths(CSwiftDirectories::logDirectory(), QStringLiteral("%1_changedSituations.kml").arg(ts));
|
||||
const bool s = CFileUtils::writeStringToFile(kml, fn);
|
||||
msgs.push_back(CInterpolationLogger::logStatusFileWriting(s, fn));
|
||||
}
|
||||
@@ -134,7 +135,7 @@ namespace BlackMisc
|
||||
kml = CKmlUtils::wrapAsKmlDocument(CInterpolationLogger::getKmlInterpolatedSituations(interpolation));
|
||||
if (!kml.isEmpty())
|
||||
{
|
||||
const QString fn = CFileUtils::appendFilePaths(CDirectoryUtils::logDirectory(), QStringLiteral("%1_interpolatedSituations.kml").arg(ts));
|
||||
const QString fn = CFileUtils::appendFilePaths(CSwiftDirectories::logDirectory(), QStringLiteral("%1_interpolatedSituations.kml").arg(ts));
|
||||
const bool s = CFileUtils::writeStringToFile(kml, fn);
|
||||
msgs.push_back(CInterpolationLogger::logStatusFileWriting(s, fn));
|
||||
}
|
||||
@@ -142,7 +143,7 @@ namespace BlackMisc
|
||||
kml = CKmlUtils::wrapAsKmlDocument(CInterpolationLogger::getKmlElevations(interpolation));
|
||||
if (!kml.isEmpty())
|
||||
{
|
||||
const QString fn = CFileUtils::appendFilePaths(CDirectoryUtils::logDirectory(), QStringLiteral("%1_elevations.kml").arg(ts));
|
||||
const QString fn = CFileUtils::appendFilePaths(CSwiftDirectories::logDirectory(), QStringLiteral("%1_elevations.kml").arg(ts));
|
||||
const bool s = CFileUtils::writeStringToFile(kml, fn);
|
||||
msgs.push_back(CInterpolationLogger::logStatusFileWriting(s, fn));
|
||||
}
|
||||
|
||||
@@ -8,6 +8,7 @@
|
||||
|
||||
#include "blackmisc/simulation/xplane/xplaneutil.h"
|
||||
#include "blackmisc/fileutils.h"
|
||||
#include "blackmisc/swiftdirectories.h"
|
||||
#include "blackmisc/directoryutils.h"
|
||||
#include "qsystemdetection.h"
|
||||
#include <QDir>
|
||||
@@ -213,7 +214,7 @@ namespace BlackMisc
|
||||
|
||||
bool CXPlaneUtil::hasXSwiftBusBuildAndPluginDir(const QString &xplaneRootDir)
|
||||
{
|
||||
if (CDirectoryUtils::getXSwiftBusBuildDirectory().isEmpty()) { return false; }
|
||||
if (CSwiftDirectories::getXSwiftBusBuildDirectory().isEmpty()) { return false; }
|
||||
const QString xswiftBusPluginDir = CXPlaneUtil::xswiftbusPluginDir(xplaneRootDir);
|
||||
return (!xswiftBusPluginDir.isEmpty());
|
||||
}
|
||||
@@ -255,11 +256,11 @@ namespace BlackMisc
|
||||
|
||||
bool CXPlaneUtil::hasNewerXSwiftBusBuild(const QString &xplaneRootDir)
|
||||
{
|
||||
if (CDirectoryUtils::getXSwiftBusBuildDirectory().isEmpty()) { return false; }
|
||||
if (CSwiftDirectories::getXSwiftBusBuildDirectory().isEmpty()) { return false; }
|
||||
const QString xswiftBusPluginDir = CXPlaneUtil::xswiftbusPluginDir(xplaneRootDir);
|
||||
if (xswiftBusPluginDir.isEmpty()) { return false; }
|
||||
|
||||
const QFileInfo fiLatestBuild = CFileUtils::findLastModified(CDirectoryUtils::getXSwiftBusBuildDirectory(), true, xplFileFilter());
|
||||
const QFileInfo fiLatestBuild = CFileUtils::findLastModified(CSwiftDirectories::getXSwiftBusBuildDirectory(), true, xplFileFilter());
|
||||
if (!fiLatestBuild.lastModified().isValid()) { return false; }
|
||||
|
||||
const QFileInfo fiLatestDeployed = CFileUtils::findLastModified(xswiftBusPluginDir, true, xplFileFilter());
|
||||
@@ -271,11 +272,11 @@ namespace BlackMisc
|
||||
|
||||
int CXPlaneUtil::copyXSwiftBusBuildFiles(const QString &xplaneRootDir)
|
||||
{
|
||||
if (CDirectoryUtils::getXSwiftBusBuildDirectory().isEmpty()) { return -1; }
|
||||
if (CSwiftDirectories::getXSwiftBusBuildDirectory().isEmpty()) { return -1; }
|
||||
const QString xswiftBusPluginDir = CXPlaneUtil::xswiftbusPluginDir(xplaneRootDir);
|
||||
if (xswiftBusPluginDir.isEmpty()) { return -1; }
|
||||
|
||||
return CDirectoryUtils::copyDirectoryRecursively(CDirectoryUtils::getXSwiftBusBuildDirectory(), xswiftBusPluginDir, true);
|
||||
return CDirectoryUtils::copyDirectoryRecursively(CSwiftDirectories::getXSwiftBusBuildDirectory(), xswiftBusPluginDir, true);
|
||||
}
|
||||
|
||||
const QStringList &CXPlaneUtil::xplFileFilter()
|
||||
|
||||
Reference in New Issue
Block a user