MCPcopy Create free account
hub / github.com/FreesmTeam/FreesmLauncher / onMetadataFailed

Method onMetadataFailed

launcher/ui/dialogs/ModUpdateDialog.cpp:397–420  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

395}
396
397void ModUpdateDialog::onMetadataFailed(Mod* mod, bool try_others, ModPlatform::ResourceProvider first_choice)
398{
399 if (try_others) {
400 auto index_dir = indexDir();
401
402 auto task = makeShared<EnsureMetadataTask>(mod, index_dir, next(first_choice));
403 connect(task.get(), &EnsureMetadataTask::metadataReady, [this](Mod* candidate) { onMetadataEnsured(candidate); });
404 connect(task.get(), &EnsureMetadataTask::metadataFailed, [this](Mod* candidate) { onMetadataFailed(candidate, false); });
405 connect(task.get(), &EnsureMetadataTask::failed,
406 [this](const QString& reason) { CustomMessageBox::selectable(this, tr("Error"), reason, QMessageBox::Critical)->exec(); });
407 if (task->getHashingTask()) {
408 auto seq = makeShared<SequentialTask>();
409 seq->addTask(task->getHashingTask());
410 seq->addTask(task);
411 m_second_try_metadata->addTask(seq);
412 } else {
413 m_second_try_metadata->addTask(task);
414 }
415 } else {
416 QString reason{ tr("Couldn't find a valid version on the selected mod provider(s)") };
417
418 m_failed_metadata.append({ mod, reason });
419 }
420}
421
422void ModUpdateDialog::appendMod(CheckUpdateTask::UpdatableMod const& info, QStringList requiredBy)
423{

Callers

nothing calls this directly

Calls 7

nextFunction · 0.85
selectableFunction · 0.85
getHashingTaskMethod · 0.80
addTaskMethod · 0.80
appendMethod · 0.80
getMethod · 0.45
execMethod · 0.45

Tested by

no test coverage detected