28 lines
1.2 KiB
Java
28 lines
1.2 KiB
Java
package io.gitlab.jfronny.inceptum.launcher.util;
|
|
|
|
import io.gitlab.jfronny.commons.OSUtils;
|
|
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;
|
|
|
|
import java.util.LinkedHashSet;
|
|
import java.util.Set;
|
|
|
|
public class VersionInfoLibraryResolver {
|
|
public static Set<ArtifactInfo> getRelevant(VersionInfo version) {
|
|
Set<ArtifactInfo> artifacts = new LinkedHashSet<>();
|
|
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));
|
|
}
|
|
if (library.downloads().artifact() == null) {
|
|
Utils.LOGGER.info("Null library artifact @ " + library.name());
|
|
continue;
|
|
}
|
|
artifacts.add(new ArtifactInfo(library.downloads().artifact(), false));
|
|
}
|
|
return artifacts;
|
|
}
|
|
}
|