aboutsummaryrefslogtreecommitdiff
path: root/api/logic/modplatform/legacy_ftb/PrivatePackManager.cpp
diff options
context:
space:
mode:
authorPetr Mrázek <peterix@gmail.com>2019-11-03 23:48:12 +0100
committerPetr Mrázek <peterix@gmail.com>2019-11-03 23:48:12 +0100
commit47ed2f48d4a118876263f37b9fe2ab8911c2a8fe (patch)
tree3caa2000d3fe9f57a82757dec2ae138e7474c499 /api/logic/modplatform/legacy_ftb/PrivatePackManager.cpp
parent0c9340a3d2e32223a9097f95b92b11045aaec845 (diff)
downloadPrismLauncher-47ed2f48d4a118876263f37b9fe2ab8911c2a8fe.tar.gz
PrismLauncher-47ed2f48d4a118876263f37b9fe2ab8911c2a8fe.tar.bz2
PrismLauncher-47ed2f48d4a118876263f37b9fe2ab8911c2a8fe.zip
NOISSUE put legacy FTB support in a namespace, fix its base URL
Diffstat (limited to 'api/logic/modplatform/legacy_ftb/PrivatePackManager.cpp')
-rw-r--r--api/logic/modplatform/legacy_ftb/PrivatePackManager.cpp41
1 files changed, 41 insertions, 0 deletions
diff --git a/api/logic/modplatform/legacy_ftb/PrivatePackManager.cpp b/api/logic/modplatform/legacy_ftb/PrivatePackManager.cpp
new file mode 100644
index 00000000..501e6003
--- /dev/null
+++ b/api/logic/modplatform/legacy_ftb/PrivatePackManager.cpp
@@ -0,0 +1,41 @@
+#include "PrivatePackManager.h"
+
+#include <QDebug>
+
+#include "FileSystem.h"
+
+namespace LegacyFTB {
+
+void PrivatePackManager::load()
+{
+ try
+ {
+ currentPacks = QString::fromUtf8(FS::read(m_filename)).split('\n', QString::SkipEmptyParts).toSet();
+ dirty = false;
+ }
+ catch(...)
+ {
+ currentPacks = {};
+ qWarning() << "Failed to read third party FTB pack codes from" << m_filename;
+ }
+}
+
+void PrivatePackManager::save() const
+{
+ if(!dirty)
+ {
+ return;
+ }
+ try
+ {
+ QStringList list = currentPacks.toList();
+ FS::write(m_filename, list.join('\n').toUtf8());
+ dirty = false;
+ }
+ catch(...)
+ {
+ qWarning() << "Failed to write third party FTB pack codes to" << m_filename;
+ }
+}
+
+}