MCPcopy Create free account
hub / github.com/PolyMC/PolyMC / fetchPrivate

Method fetchPrivate

launcher/modplatform/legacy_ftb/PackFetchTask.cpp:67–112  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

65}
66
67void PackFetchTask::fetchPrivate(const QStringList & toFetch)
68{
69 QString privatePackBaseUrl = BuildConfig.LEGACY_FTB_CDN_BASE_URL + "static/%1.xml";
70
71 for (auto &packCode: toFetch)
72 {
73 QByteArray *data = new QByteArray();
74 NetJob *job = new NetJob("Fetching private pack", m_network);
75 job->addNetAction(Net::Download::makeByteArray(privatePackBaseUrl.arg(packCode), data));
76
77 QObject::connect(job, &NetJob::succeeded, this, [this, job, data, packCode]
78 {
79 ModpackList packs;
80 parseAndAddPacks(*data, PackType::Private, packs);
81 foreach(Modpack currentPack, packs)
82 {
83 currentPack.packCode = packCode;
84 emit privateFileDownloadFinished(currentPack);
85 }
86
87 job->deleteLater();
88
89 data->clear();
90 delete data;
91 });
92
93 QObject::connect(job, &NetJob::failed, this, [this, job, packCode, data](QString reason)
94 {
95 emit privateFileDownloadFailed(reason, packCode);
96 job->deleteLater();
97
98 data->clear();
99 delete data;
100 });
101
102 QObject::connect(job, &NetJob::aborted, this, [this, job, data]{
103 emit aborted();
104 job->deleteLater();
105
106 data->clear();
107 delete data;
108 });
109
110 job->start();
111 }
112}
113
114void PackFetchTask::fileDownloadFinished()
115{

Callers 2

openedImplMethod · 0.80
onAddPackClickedMethod · 0.80

Calls 3

addNetActionMethod · 0.80
clearMethod · 0.45
startMethod · 0.45

Tested by

no test coverage detected