mirror of
https://github.com/PrismLauncher/PrismLauncher.git
synced 2025-04-29 22:24:26 +02:00
preparing java autodownload
Signed-off-by: Trial97 <alexandru.tripon97@gmail.com>
This commit is contained in:
parent
0384e652fb
commit
82b15268bc
@ -30,11 +30,11 @@ class JavaVersion {
|
||||
|
||||
QString toString() const;
|
||||
|
||||
int major() { return m_major; }
|
||||
int minor() { return m_minor; }
|
||||
int security() { return m_security; }
|
||||
QString build() { return m_prerelease; }
|
||||
QString name() { return m_name; }
|
||||
int major() const { return m_major; }
|
||||
int minor() const { return m_minor; }
|
||||
int security() const { return m_security; }
|
||||
QString build() const { return m_prerelease; }
|
||||
QString name() const { return m_name; }
|
||||
|
||||
private:
|
||||
QString m_string;
|
||||
|
@ -164,6 +164,10 @@ void LaunchProfile::applyCompatibleJavaMajors(QList<int>& javaMajor)
|
||||
{
|
||||
m_compatibleJavaMajors.append(javaMajor);
|
||||
}
|
||||
void LaunchProfile::applyCompatibleJavaName(QString javaName)
|
||||
{
|
||||
m_compatibleJavaName = javaName;
|
||||
}
|
||||
|
||||
void LaunchProfile::applyLibrary(LibraryPtr library, const RuntimeContext& runtimeContext)
|
||||
{
|
||||
@ -334,6 +338,11 @@ const QList<int>& LaunchProfile::getCompatibleJavaMajors() const
|
||||
return m_compatibleJavaMajors;
|
||||
}
|
||||
|
||||
const QString LaunchProfile::getCompatibleJavaName() const
|
||||
{
|
||||
return m_compatibleJavaName;
|
||||
}
|
||||
|
||||
void LaunchProfile::getLibraryFiles(const RuntimeContext& runtimeContext,
|
||||
QStringList& jars,
|
||||
QStringList& nativeJars,
|
||||
|
@ -59,6 +59,7 @@ class LaunchProfile : public ProblemProvider {
|
||||
void applyMavenFile(LibraryPtr library, const RuntimeContext& runtimeContext);
|
||||
void applyAgent(AgentPtr agent, const RuntimeContext& runtimeContext);
|
||||
void applyCompatibleJavaMajors(QList<int>& javaMajor);
|
||||
void applyCompatibleJavaName(QString javaName);
|
||||
void applyMainJar(LibraryPtr jar);
|
||||
void applyProblemSeverity(ProblemSeverity severity);
|
||||
/// clear the profile
|
||||
@ -80,6 +81,7 @@ class LaunchProfile : public ProblemProvider {
|
||||
const QList<LibraryPtr>& getMavenFiles() const;
|
||||
const QList<AgentPtr>& getAgents() const;
|
||||
const QList<int>& getCompatibleJavaMajors() const;
|
||||
const QString getCompatibleJavaName() const;
|
||||
const LibraryPtr getMainJar() const;
|
||||
void getLibraryFiles(const RuntimeContext& runtimeContext,
|
||||
QStringList& jars,
|
||||
@ -150,5 +152,7 @@ class LaunchProfile : public ProblemProvider {
|
||||
/// compatible java major versions
|
||||
QList<int> m_compatibleJavaMajors;
|
||||
|
||||
QString m_compatibleJavaName;
|
||||
|
||||
ProblemSeverity m_problemSeverity = ProblemSeverity::None;
|
||||
};
|
||||
|
@ -73,6 +73,7 @@ void VersionFile::applyTo(LaunchProfile* profile, const RuntimeContext& runtimeC
|
||||
profile->applyMods(mods);
|
||||
profile->applyTraits(traits);
|
||||
profile->applyCompatibleJavaMajors(compatibleJavaMajors);
|
||||
profile->applyCompatibleJavaName(compatibleJavaName);
|
||||
|
||||
for (auto library : libraries) {
|
||||
profile->applyLibrary(library, runtimeContext);
|
||||
|
@ -45,9 +45,9 @@ namespace Java {
|
||||
Downloader::Downloader(QWidget* parent) : QDialog(parent), ui(new Ui::JavaDownloader)
|
||||
{
|
||||
ui->setupUi(this);
|
||||
auto versionList = new Meta::VersionList("net.minecraft.java", this);
|
||||
auto versionList = APPLICATION->metadataIndex()->get("net.minecraft.java");
|
||||
versionList->setProvidedRoles({ BaseVersionList::VersionRole, BaseVersionList::RecommendedRole, BaseVersionList::VersionPointerRole });
|
||||
ui->majorVersionSelect->initialize(versionList);
|
||||
ui->majorVersionSelect->initialize(versionList.get());
|
||||
ui->majorVersionSelect->selectCurrent();
|
||||
ui->majorVersionSelect->setEmptyString(tr("No java versions are currently available in the meta"));
|
||||
ui->majorVersionSelect->setEmptyErrorString(tr("Couldn't load or download the java version lists!"));
|
||||
@ -85,7 +85,7 @@ void Downloader::accept()
|
||||
return;
|
||||
}
|
||||
Task::Ptr task;
|
||||
auto final_path = FS::PathCombine(APPLICATION->dataRoot(), "java", meta->m_name);
|
||||
auto final_path = FS::PathCombine(APPLICATION->dataRoot(), "java", meta->vendor, meta->m_name);
|
||||
switch (meta->downloadType) {
|
||||
case Java::DownloadType::Manifest:
|
||||
task = makeShared<ManifestDownloadTask>(meta->url, final_path, meta->checksumType, meta->checksumHash);
|
||||
|
Loading…
x
Reference in New Issue
Block a user