mirror of
https://github.com/PolyhedralDev/Terra.git
synced 2026-06-18 23:01:03 +00:00
addon dependency sorting
This commit is contained in:
+18
@@ -1,6 +1,10 @@
|
||||
package com.dfsek.terra.addons.manifest.impl;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import ca.solostudios.strata.version.Version;
|
||||
import ca.solostudios.strata.version.VersionRange;
|
||||
|
||||
import com.dfsek.terra.addons.manifest.api.AddonInitializer;
|
||||
import com.dfsek.terra.addons.manifest.impl.config.AddonManifest;
|
||||
@@ -43,4 +47,18 @@ public class ManifestAddon implements BaseAddon {
|
||||
initializer.initialize();
|
||||
});
|
||||
}
|
||||
|
||||
public AddonManifest getManifest() {
|
||||
return manifest;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Map<String, VersionRange> getDependencies() {
|
||||
return manifest.getDependencies();
|
||||
}
|
||||
|
||||
@Override
|
||||
public Version getVersion() {
|
||||
return manifest.getVersion();
|
||||
}
|
||||
}
|
||||
|
||||
+8
@@ -1,5 +1,6 @@
|
||||
package com.dfsek.terra.addons.manifest.impl;
|
||||
|
||||
import ca.solostudios.strata.Versions;
|
||||
import ca.solostudios.strata.version.Version;
|
||||
import ca.solostudios.strata.version.VersionRange;
|
||||
import com.dfsek.tectonic.exception.LoadException;
|
||||
@@ -33,6 +34,8 @@ public class ManifestAddonLoader implements BootstrapBaseAddon<ManifestAddon> {
|
||||
@Inject
|
||||
private Platform platform;
|
||||
|
||||
private static final Version VERSION = Versions.getVersion(1, 0, 0);
|
||||
|
||||
@Override
|
||||
public Iterable<ManifestAddon> loadAddons(Path addonsFolder, ClassLoader parent) {
|
||||
platform.logger().info("Loading addons...");
|
||||
@@ -98,4 +101,9 @@ public class ManifestAddonLoader implements BootstrapBaseAddon<ManifestAddon> {
|
||||
public String getID() {
|
||||
return "MANIFEST";
|
||||
}
|
||||
|
||||
@Override
|
||||
public Version getVersion() {
|
||||
return VERSION;
|
||||
}
|
||||
}
|
||||
|
||||
+1
-1
@@ -36,7 +36,7 @@ public class AddonManifest implements ConfigTemplate, StringIdentifiable {
|
||||
|
||||
@Value("depends")
|
||||
@Default
|
||||
private Map<String, VersionRange> dependencies;
|
||||
private Map<String, VersionRange> dependencies = Collections.emptyMap();
|
||||
|
||||
@Value("website")
|
||||
private WebsiteConfig website;
|
||||
|
||||
Reference in New Issue
Block a user