Inceptum/launcher/src/main/java/io/gitlab/jfronny/inceptum/launcher/util/VersionInfoLibraryResolver....

28 lines
1.2 KiB
Java
Raw Normal View History

2022-09-04 21:21:24 +02:00
package io.gitlab.jfronny.inceptum.launcher.util;
2021-10-28 23:27:47 +02:00
2022-04-28 23:13:37 +02:00
import io.gitlab.jfronny.commons.OSUtils;
2022-09-04 21:21:24 +02:00
import io.gitlab.jfronny.inceptum.common.Utils;
import io.gitlab.jfronny.inceptum.launcher.model.inceptum.ArtifactInfo;
import io.gitlab.jfronny.inceptum.launcher.model.mojang.VersionInfo;
2021-10-28 23:27:47 +02:00
import java.util.LinkedHashSet;
import java.util.Set;
public class VersionInfoLibraryResolver {
2021-10-30 16:12:39 +02:00
public static Set<ArtifactInfo> getRelevant(VersionInfo version) {
Set<ArtifactInfo> artifacts = new LinkedHashSet<>();
2021-10-28 23:27:47 +02:00
for (VersionInfo.Library library : version.libraries) {
if (library.rules() != null && !library.rules().allow()) continue;
if (library.downloads().classifiers() != null && library.natives() != null && library.natives().containsKey(OSUtils.TYPE.getMojName())) {
artifacts.add(new ArtifactInfo(library.downloads().classifiers().get(library.natives().get(OSUtils.TYPE.getMojName())), true));
2021-10-28 23:27:47 +02:00
}
if (library.downloads().artifact() == null) {
Utils.LOGGER.info("Null library artifact @ " + library.name());
2021-10-28 23:27:47 +02:00
continue;
}
artifacts.add(new ArtifactInfo(library.downloads().artifact(), false));
2021-10-28 23:27:47 +02:00
}
return artifacts;
}
}