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

Method installConfigs

launcher/modplatform/atlauncher/ATLPackInstallTask.cpp:648–692  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

646}
647
648void PackInstallTask::installConfigs()
649{
650 qDebug() << "PackInstallTask::installConfigs: " << QThread::currentThreadId();
651 setStatus(tr("Downloading configs..."));
652 jobPtr = new NetJob(tr("Config download"), APPLICATION->network());
653
654 auto path = QString("Configs/%1/%2.zip").arg(m_pack_safe_name).arg(m_version_name);
655 auto url = QString(BuildConfig.ATL_DOWNLOAD_SERVER_URL + "packs/%1/versions/%2/Configs.zip")
656 .arg(m_pack_safe_name).arg(m_version_name);
657 auto entry = APPLICATION->metacache()->resolveEntry("ATLauncherPacks", path);
658 entry->setStale(true);
659
660 auto dl = Net::Download::makeCached(url, entry);
661 if (!m_version.configs.sha1.isEmpty()) {
662 auto rawSha1 = QByteArray::fromHex(m_version.configs.sha1.toLatin1());
663 dl->addValidator(new Net::ChecksumValidator(QCryptographicHash::Sha1, rawSha1));
664 }
665 jobPtr->addNetAction(dl);
666 archivePath = entry->getFullPath();
667
668 connect(jobPtr.get(), &NetJob::succeeded, this, [&]()
669 {
670 abortable = false;
671 jobPtr.reset();
672 extractConfigs();
673 });
674 connect(jobPtr.get(), &NetJob::failed, [&](QString reason)
675 {
676 abortable = false;
677 jobPtr.reset();
678 emitFailed(reason);
679 });
680 connect(jobPtr.get(), &NetJob::progress, [&](qint64 current, qint64 total)
681 {
682 abortable = true;
683 setProgress(current, total);
684 });
685 connect(jobPtr.get(), &NetJob::aborted, [&]{
686 abortable = false;
687 jobPtr.reset();
688 emitAborted();
689 });
690
691 jobPtr->start();
692}
693
694void PackInstallTask::extractConfigs()
695{

Callers

nothing calls this directly

Calls 12

QStringClass · 0.85
networkMethod · 0.80
resolveEntryMethod · 0.80
metacacheMethod · 0.80
isEmptyMethod · 0.80
addNetActionMethod · 0.80
getFullPathMethod · 0.80
setStaleMethod · 0.45
addValidatorMethod · 0.45
getMethod · 0.45
resetMethod · 0.45
startMethod · 0.45

Tested by

no test coverage detected