Fix (don't use extension methods for now)
ci/woodpecker/push/docs Pipeline was successful Details
ci/woodpecker/push/woodpecker Pipeline was successful Details

This commit is contained in:
Johannes Frohnmeyer 2022-11-24 21:11:07 +01:00
parent 18810b255b
commit fb56c9e922
Signed by: Johannes
GPG Key ID: E76429612C2929F4
47 changed files with 105 additions and 234 deletions

View File

@ -13,7 +13,7 @@ val lwjglVersion by extra("3.3.1")
val imguiVersion by extra("1.86.4") val imguiVersion by extra("1.86.4")
val jfCommonsVersion by extra("1.0-SNAPSHOT") val jfCommonsVersion by extra("1.0-SNAPSHOT")
val gsonCompileVersion by extra("1.1-SNAPSHOT") val gsonCompileVersion by extra("1.1-SNAPSHOT")
val manifoldVersion by extra("2022.1.25") val manifoldVersion by extra("2022.1.27")
val jlhttpVersion by extra("2.6") val jlhttpVersion by extra("2.6")
val flavorProp: String by extra(prop("flavor", "custom")) val flavorProp: String by extra(prop("flavor", "custom"))

View File

@ -4,9 +4,11 @@ plugins {
repositories { repositories {
gradlePluginPortal() gradlePluginPortal()
maven("https://maven.frohnmeyer-wds.de/artifacts")
} }
dependencies { dependencies {
implementation("gradle.plugin.com.github.johnrengelman:shadow:7.1.2") implementation("gradle.plugin.com.github.johnrengelman:shadow:7.1.2")
implementation("de.undercouch:gradle-download-task:5.1.2") implementation("de.undercouch:gradle-download-task:5.1.2")
implementation("io.gitlab.jfronny:convention:1.2-SNAPSHOT")
} }

View File

@ -1,22 +1,10 @@
plugins { plugins {
id("inceptum.java-conventions") id("inceptum.java-conventions")
id("jf.manifold")
} }
dependencies { dependencies {
val manifoldVersion: String by rootProject.extra val jfCommonsVersion: String by rootProject.extra
implementation("systems.manifold:manifold-props-rt:$manifoldVersion") implementation("io.gitlab.jfronny:commons-manifold:$jfCommonsVersion")
testAnnotationProcessor(annotationProcessor("systems.manifold:manifold-ext:$manifoldVersion")!!)
testAnnotationProcessor(annotationProcessor("systems.manifold:manifold-props:$manifoldVersion")!!)
} }
if (sourceSets.main.get().allJava.files.any {it.name == "module-info.java"}) {
tasks.withType<JavaCompile> {
options.compilerArgs.addAll(arrayOf("-Xplugin:Manifold no-bootstrap", "--module-path", classpath.asPath))
}
} else {
tasks.withType<JavaCompile> {
options.compilerArgs.addAll(arrayOf("-Xplugin:Manifold no-bootstrap"))
}
}

View File

@ -1,9 +0,0 @@
package extensions.java.lang.Iterable;
import manifold.ext.rt.api.Extension;
import manifold.ext.rt.api.Structural;
@Extension
@Structural
public class StructuralIterable {
}

View File

@ -1,19 +0,0 @@
package extensions.java.util.Map;
import manifold.ext.rt.api.Extension;
import manifold.ext.rt.api.This;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;
@Extension
public abstract class MapExt<K, V> implements Iterable<Map.Entry<K, V>> {
public static <K, V> Iterator<Map.Entry<K,V>> iterator(@This Map<K, V> thiz) {
return thiz.entrySet().iterator();
}
public static <K, V> V set(@This Map<K, V> thiz, K key, V value) {
return thiz.put(key, value);
}
}

View File

@ -1,7 +0,0 @@
package extensions.java.util.stream.BaseStream;
import manifold.ext.rt.api.Extension;
@Extension
public abstract class BaseStreamExt<T> implements Iterable<T> {
}

View File

@ -1,44 +0,0 @@
package extensions.java.util.stream.Stream;
import manifold.ext.rt.api.Extension;
import manifold.ext.rt.api.This;
import java.util.*;
import java.util.function.Function;
import java.util.stream.Collectors;
import java.util.stream.Stream;
@Extension
public abstract class StreamExt<T> {
public static <T> Set<T> toSet(@This Stream<T> thiz) {
return thiz.collect(LinkedHashSet::new, Set::add, Set::addAll);
}
public static <T, K, V> Map<K, V> toMap(@This Stream<T> thiz, Function<? super T, K> keyMapper, Function<? super T, V> valueMapper) {
return thiz.collect(Collectors.toMap(keyMapper, valueMapper));
}
public static <T, K> Map<K, T> toMap(@This Stream<T> thiz, Function<? super T, K> keyMapper) {
return thiz.toMap(keyMapper, Function.identity());
}
public static <T, V> Map<V, List<T>> groupingBy(@This Stream<T> thiz, Function<? super T, V> valueMapper) {
return thiz.collect(Collectors.groupingBy(valueMapper));
}
public static String join(@This Stream<String> thiz) {
return thiz.collect(Collectors.joining());
}
public static String join(@This Stream<String> thiz, String delimiter) {
return thiz.collect(Collectors.joining(delimiter));
}
public static String join(@This Stream<String> thiz, char delimiter) {
return thiz.join("" + delimiter);
}
public static <T> Stream<T> concat(@This Stream<T> thiz, Stream<T> other) {
return Stream.concat(thiz, other);
}
}

View File

@ -1,14 +0,0 @@
package extensions.org.w3c.dom.Node;
import manifold.ext.rt.api.Extension;
import manifold.ext.rt.api.This;
import org.w3c.dom.Node;
@Extension
public class NodeExt {
public static boolean isWhitespace(@This Node thiz) {
if (thiz.nodeType == Node.TEXT_NODE && thiz.textContent.isBlank()) return true;
if (thiz.nodeType == Node.COMMENT_NODE) return true;
return false;
}
}

View File

@ -1,33 +0,0 @@
package extensions.org.w3c.dom.NodeList;
import manifold.ext.rt.api.*;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
import java.util.*;
@Extension
public abstract class NodeListExt implements Iterable<Node> {
public static Iterator<Node> iterator(@This NodeList thiz) {
return new Iterator<>() {
private int index = 0;
@Override
public boolean hasNext() {
while (index < thiz.length && thiz[index].isWhitespace()) {
index++;
}
return index < thiz.length;
}
@Override
public Node next() {
if (!hasNext()) throw new NoSuchElementException();
return thiz[index++];
}
};
}
public static Node get(@This NodeList thiz, int index) {
return thiz.item(index);
}
}

View File

@ -1,18 +0,0 @@
package io.gitlab.jfronny.inceptum.common;
/**
* Class containing methods for nop lambdas. Use these instead of () -> {}
*/
public class R {
public static void nop() {
// No-Op
}
public static void nop(Object a1) {
// No-Op
}
public static void nop(Object a1, Object a2) {
// No-Op
}
}

View File

@ -1,5 +1,7 @@
package io.gitlab.jfronny.inceptum.common; package io.gitlab.jfronny.inceptum.common;
import gsoncompile.extensions.io.gitlab.jfronny.inceptum.common.model.inceptum.UpdateMetadata.GC_UpdateMetadata;
import gsoncompile.extensions.io.gitlab.jfronny.inceptum.common.model.inceptum.WrapperConfig.GC_WrapperConfig;
import io.gitlab.jfronny.commons.OSUtils; import io.gitlab.jfronny.commons.OSUtils;
import io.gitlab.jfronny.inceptum.common.api.MavenApi; import io.gitlab.jfronny.inceptum.common.api.MavenApi;
import io.gitlab.jfronny.inceptum.common.model.inceptum.*; import io.gitlab.jfronny.inceptum.common.model.inceptum.*;
@ -52,7 +54,7 @@ public class Updater {
config.natives[Utils.currentFlavor] = natives; config.natives[Utils.currentFlavor] = natives;
} }
GC_WrapperConfig.write(MetaHolder.WRAPPER_CONFIG_PATH, config); GC_WrapperConfig.write(config, MetaHolder.WRAPPER_CONFIG_PATH);
if (relaunch) { if (relaunch) {
Runtime.runtime.addShutdownHook(new Thread(() -> { Runtime.runtime.addShutdownHook(new Thread(() -> {
@ -93,7 +95,7 @@ public class Updater {
} }
} }
if (configChanged) GC_WrapperConfig.write(MetaHolder.WRAPPER_CONFIG_PATH, wrapperConfig); if (configChanged) GC_WrapperConfig.write(wrapperConfig, MetaHolder.WRAPPER_CONFIG_PATH);
return buildClasspath(libs.stream().concat(natives.stream())).toList(); return buildClasspath(libs.stream().concat(natives.stream())).toList();
} }
@ -140,10 +142,10 @@ public class Updater {
public static @Nullable UpdateMetadata check(UpdateChannel channel, boolean versionCompare, boolean checkEnv, Consumer<UpdateChannel> channelInvalid) throws UpdateCheckException { public static @Nullable UpdateMetadata check(UpdateChannel channel, boolean versionCompare, boolean checkEnv, Consumer<UpdateChannel> channelInvalid) throws UpdateCheckException {
try { try {
UpdateMetadata experimental = Net.downloadObject(ARTIFACTS_URL + "version.json", GC_UpdateMetadata::read); UpdateMetadata experimental = Net.downloadObject(ARTIFACTS_URL + "version.json", json -> GC_UpdateMetadata.read(json));
UpdateMetadata stable = null; UpdateMetadata stable = null;
try { try {
stable = Net.downloadObject(STABLE_URL + "version.json", GC_UpdateMetadata::read); stable = Net.downloadObject(STABLE_URL + "version.json", json -> GC_UpdateMetadata.read(json));
} catch (Throwable ignored) {} } catch (Throwable ignored) {}
if (stable == null && channel == UpdateChannel.Stable) { if (stable == null && channel == UpdateChannel.Stable) {
channel = UpdateChannel.CI; channel = UpdateChannel.CI;

View File

@ -56,12 +56,12 @@ public class MavenApi {
switch (child.nodeName) { switch (child.nodeName) {
case "groupId" -> { case "groupId" -> {
if (groupId == null) { if (groupId == null) {
groupId = node.textContent; groupId = child.textContent;
} }
} }
case "version" -> { case "version" -> {
if (version == null) { if (version == null) {
version = node.textContent; version = child.textContent;
} }
} }
} }

View File

@ -1,7 +1,7 @@
package io.gitlab.jfronny.inceptum.gtk; package io.gitlab.jfronny.inceptum.gtk;
import ch.bailu.gtk.gtk.Application; import ch.bailu.gtk.gtk.Application;
import io.gitlab.jfronny.inceptum.common.R; import io.gitlab.jfronny.commons.ref.R;
import io.gitlab.jfronny.inceptum.common.Utils; import io.gitlab.jfronny.inceptum.common.Utils;
import io.gitlab.jfronny.inceptum.gtk.menu.MenuBuilder; import io.gitlab.jfronny.inceptum.gtk.menu.MenuBuilder;
import io.gitlab.jfronny.inceptum.gtk.util.I18n; import io.gitlab.jfronny.inceptum.gtk.util.I18n;

View File

@ -5,7 +5,7 @@ import ch.bailu.gtk.gio.ApplicationFlags;
import ch.bailu.gtk.gtk.*; import ch.bailu.gtk.gtk.*;
import ch.bailu.gtk.type.Str; import ch.bailu.gtk.type.Str;
import ch.bailu.gtk.type.Strs; import ch.bailu.gtk.type.Strs;
import io.gitlab.jfronny.inceptum.common.R; import io.gitlab.jfronny.commons.ref.R;
public class TestStart { public class TestStart {
public static void main(String[] args) { public static void main(String[] args) {

View File

@ -1,7 +1,7 @@
package io.gitlab.jfronny.inceptum.imgui.window; package io.gitlab.jfronny.inceptum.imgui.window;
import imgui.ImGui; import imgui.ImGui;
import io.gitlab.jfronny.inceptum.common.R; import io.gitlab.jfronny.commons.ref.R;
import io.gitlab.jfronny.inceptum.common.Utils; import io.gitlab.jfronny.inceptum.common.Utils;
import io.gitlab.jfronny.inceptum.imgui.GuiMain; import io.gitlab.jfronny.inceptum.imgui.GuiMain;
import io.gitlab.jfronny.inceptum.imgui.control.InstanceManageControls; import io.gitlab.jfronny.inceptum.imgui.control.InstanceManageControls;

View File

@ -1,7 +1,7 @@
package io.gitlab.jfronny.inceptum.imgui.window.edit; package io.gitlab.jfronny.inceptum.imgui.window.edit;
import imgui.ImGui; import imgui.ImGui;
import io.gitlab.jfronny.inceptum.common.R; import io.gitlab.jfronny.commons.ref.R;
import io.gitlab.jfronny.inceptum.imgui.GuiMain; import io.gitlab.jfronny.inceptum.imgui.GuiMain;
import io.gitlab.jfronny.inceptum.imgui.control.Tab; import io.gitlab.jfronny.inceptum.imgui.control.Tab;
import io.gitlab.jfronny.inceptum.imgui.window.dialog.ProcessStateWatcherWindow; import io.gitlab.jfronny.inceptum.imgui.window.dialog.ProcessStateWatcherWindow;

View File

@ -5,6 +5,7 @@ import imgui.type.ImBoolean;
import imgui.type.ImString; import imgui.type.ImString;
import io.gitlab.jfronny.commons.OSUtils; import io.gitlab.jfronny.commons.OSUtils;
import io.gitlab.jfronny.commons.io.JFiles; import io.gitlab.jfronny.commons.io.JFiles;
import io.gitlab.jfronny.commons.ref.R;
import io.gitlab.jfronny.inceptum.common.*; import io.gitlab.jfronny.inceptum.common.*;
import io.gitlab.jfronny.inceptum.imgui.GuiMain; import io.gitlab.jfronny.inceptum.imgui.GuiMain;
import io.gitlab.jfronny.inceptum.imgui.control.InstanceManageControls; import io.gitlab.jfronny.inceptum.imgui.control.InstanceManageControls;

View File

@ -1,5 +1,9 @@
package io.gitlab.jfronny.inceptum.launcher.api; package io.gitlab.jfronny.inceptum.launcher.api;
import gsoncompile.extensions.io.gitlab.jfronny.inceptum.launcher.model.curseforge.response.FingerprintMatchesResponse.GC_FingerprintMatchesResponse;
import gsoncompile.extensions.io.gitlab.jfronny.inceptum.launcher.model.curseforge.response.GetModFileResponse.GC_GetModFileResponse;
import gsoncompile.extensions.io.gitlab.jfronny.inceptum.launcher.model.curseforge.response.GetModResponse.GC_GetModResponse;
import gsoncompile.extensions.io.gitlab.jfronny.inceptum.launcher.model.curseforge.response.SearchResponse.GC_SearchResponse;
import io.gitlab.jfronny.commons.HttpUtils; import io.gitlab.jfronny.commons.HttpUtils;
import io.gitlab.jfronny.inceptum.common.Net; import io.gitlab.jfronny.inceptum.common.Net;
import io.gitlab.jfronny.inceptum.launcher.model.curseforge.CurseforgeFile; import io.gitlab.jfronny.inceptum.launcher.model.curseforge.CurseforgeFile;

View File

@ -1,5 +1,6 @@
package io.gitlab.jfronny.inceptum.launcher.api; package io.gitlab.jfronny.inceptum.launcher.api;
import gsoncompile.extensions.io.gitlab.jfronny.inceptum.launcher.model.fabric.FabricVersionLoaderInfo.GC_FabricVersionLoaderInfo;
import io.gitlab.jfronny.gson.compile.util.GList; import io.gitlab.jfronny.gson.compile.util.GList;
import io.gitlab.jfronny.gson.stream.JsonReader; import io.gitlab.jfronny.gson.stream.JsonReader;
import io.gitlab.jfronny.inceptum.common.Net; import io.gitlab.jfronny.inceptum.common.Net;
@ -29,7 +30,7 @@ public class FabricMetaApi {
} }
public static FabricVersionLoaderInfo getLoaderVersion(String gameVersion, String fabricVersion) throws IOException { public static FabricVersionLoaderInfo getLoaderVersion(String gameVersion, String fabricVersion) throws IOException {
return Net.downloadObject(META_URL + "v2/versions/loader/" + gameVersion + "/" + fabricVersion, GC_FabricVersionLoaderInfo_WithMeta::read); return Net.downloadObject(META_URL + "v2/versions/loader/" + gameVersion + "/" + fabricVersion, GC_FabricVersionLoaderInfo.WithMeta::read);
} }
public static VersionInfo addFabric(VersionInfo version, String fabricVersion, FabricVersionInfoType type) throws IOException { public static VersionInfo addFabric(VersionInfo version, String fabricVersion, FabricVersionInfoType type) throws IOException {

View File

@ -1,5 +1,10 @@
package io.gitlab.jfronny.inceptum.launcher.api; package io.gitlab.jfronny.inceptum.launcher.api;
import gsoncompile.extensions.io.gitlab.jfronny.inceptum.launcher.model.mojang.AssetIndex.GC_AssetIndex;
import gsoncompile.extensions.io.gitlab.jfronny.inceptum.launcher.model.mojang.JvmFileInfo.GC_JvmFileInfo;
import gsoncompile.extensions.io.gitlab.jfronny.inceptum.launcher.model.mojang.JvmInfo.GC_JvmInfo;
import gsoncompile.extensions.io.gitlab.jfronny.inceptum.launcher.model.mojang.VersionInfo.GC_VersionInfo;
import gsoncompile.extensions.io.gitlab.jfronny.inceptum.launcher.model.mojang.VersionsList.GC_VersionsList;
import io.gitlab.jfronny.commons.OSUtils; import io.gitlab.jfronny.commons.OSUtils;
import io.gitlab.jfronny.inceptum.common.MetaHolder; import io.gitlab.jfronny.inceptum.common.MetaHolder;
import io.gitlab.jfronny.inceptum.common.Net; import io.gitlab.jfronny.inceptum.common.Net;

View File

@ -1,5 +1,8 @@
package io.gitlab.jfronny.inceptum.launcher.api; package io.gitlab.jfronny.inceptum.launcher.api;
import gsoncompile.extensions.io.gitlab.jfronny.inceptum.launcher.model.modrinth.ModrinthProject.GC_ModrinthProject;
import gsoncompile.extensions.io.gitlab.jfronny.inceptum.launcher.model.modrinth.ModrinthSearchResult.GC_ModrinthSearchResult;
import gsoncompile.extensions.io.gitlab.jfronny.inceptum.launcher.model.modrinth.ModrinthVersion.GC_ModrinthVersion;
import io.gitlab.jfronny.gson.compile.util.GList; import io.gitlab.jfronny.gson.compile.util.GList;
import io.gitlab.jfronny.gson.stream.JsonReader; import io.gitlab.jfronny.gson.stream.JsonReader;
import io.gitlab.jfronny.inceptum.common.Net; import io.gitlab.jfronny.inceptum.common.Net;

View File

@ -1,5 +1,7 @@
package io.gitlab.jfronny.inceptum.launcher.api.account; package io.gitlab.jfronny.inceptum.launcher.api.account;
import gsoncompile.extensions.io.gitlab.jfronny.inceptum.launcher.api.account.MicrosoftAccount.GC_MicrosoftAccount;
import io.gitlab.jfronny.commons.ref.R;
import io.gitlab.jfronny.gson.compile.util.GList; import io.gitlab.jfronny.gson.compile.util.GList;
import io.gitlab.jfronny.gson.stream.JsonReader; import io.gitlab.jfronny.gson.stream.JsonReader;
import io.gitlab.jfronny.gson.stream.JsonWriter; import io.gitlab.jfronny.gson.stream.JsonWriter;

View File

@ -1,8 +1,10 @@
package io.gitlab.jfronny.inceptum.launcher.api.account; package io.gitlab.jfronny.inceptum.launcher.api.account;
import io.gitlab.jfronny.commons.ref.R;
import io.gitlab.jfronny.gson.compile.annotations.GSerializable; import io.gitlab.jfronny.gson.compile.annotations.GSerializable;
import io.gitlab.jfronny.inceptum.common.*; import io.gitlab.jfronny.inceptum.common.*;
import io.gitlab.jfronny.inceptum.launcher.LauncherEnv; import io.gitlab.jfronny.inceptum.launcher.LauncherEnv;
import io.gitlab.jfronny.inceptum.launcher.gson.MicrosoftAccountAdapter;
import io.gitlab.jfronny.inceptum.launcher.model.microsoft.response.*; import io.gitlab.jfronny.inceptum.launcher.model.microsoft.response.*;
import io.gitlab.jfronny.inceptum.launcher.gson.MicrosoftAccountMeta; import io.gitlab.jfronny.inceptum.launcher.gson.MicrosoftAccountMeta;
import io.gitlab.jfronny.inceptum.launcher.model.microsoft.*; import io.gitlab.jfronny.inceptum.launcher.model.microsoft.*;
@ -11,7 +13,7 @@ import java.io.IOException;
import java.net.URISyntaxException; import java.net.URISyntaxException;
import java.util.*; import java.util.*;
@GSerializable(with = MicrosoftAccountMeta.class, configure = GsonPreset.Config.class) @GSerializable(with = MicrosoftAccountAdapter.class, configure = GsonPreset.Config.class)
public class MicrosoftAccount { public class MicrosoftAccount {
/** /**
* The username/email/id of the account. * The username/email/id of the account.

View File

@ -1,5 +1,13 @@
package io.gitlab.jfronny.inceptum.launcher.api.account; package io.gitlab.jfronny.inceptum.launcher.api.account;
import gsoncompile.extensions.io.gitlab.jfronny.inceptum.launcher.model.microsoft.Entitlements.GC_Entitlements;
import gsoncompile.extensions.io.gitlab.jfronny.inceptum.launcher.model.microsoft.Profile.GC_Profile;
import gsoncompile.extensions.io.gitlab.jfronny.inceptum.launcher.model.microsoft.request.LoginRequest.GC_LoginRequest;
import gsoncompile.extensions.io.gitlab.jfronny.inceptum.launcher.model.microsoft.request.XblTokenRequest.GC_XblTokenRequest;
import gsoncompile.extensions.io.gitlab.jfronny.inceptum.launcher.model.microsoft.request.XstsTokenRequest.GC_XstsTokenRequest;
import gsoncompile.extensions.io.gitlab.jfronny.inceptum.launcher.model.microsoft.response.LoginResponse.GC_LoginResponse;
import gsoncompile.extensions.io.gitlab.jfronny.inceptum.launcher.model.microsoft.response.OauthTokenResponse.GC_OauthTokenResponse;
import gsoncompile.extensions.io.gitlab.jfronny.inceptum.launcher.model.microsoft.response.XboxLiveAuthResponse.GC_XboxLiveAuthResponse;
import io.gitlab.jfronny.commons.HttpUtils; import io.gitlab.jfronny.commons.HttpUtils;
import io.gitlab.jfronny.inceptum.launcher.model.microsoft.*; import io.gitlab.jfronny.inceptum.launcher.model.microsoft.*;
import io.gitlab.jfronny.inceptum.launcher.model.microsoft.request.*; import io.gitlab.jfronny.inceptum.launcher.model.microsoft.request.*;

View File

@ -0,0 +1,19 @@
package io.gitlab.jfronny.inceptum.launcher.gson;
import gsoncompile.extensions.io.gitlab.jfronny.inceptum.launcher.gson.MicrosoftAccountMeta.GC_MicrosoftAccountMeta;
import io.gitlab.jfronny.gson.stream.JsonReader;
import io.gitlab.jfronny.gson.stream.JsonWriter;
import io.gitlab.jfronny.inceptum.launcher.api.account.MicrosoftAccount;
import java.io.IOException;
public class MicrosoftAccountAdapter {
public static void write(JsonWriter writer, MicrosoftAccount value) throws IOException {
GC_MicrosoftAccountMeta.write(value == null ? null : value.toMeta(), writer);
}
public static MicrosoftAccount read(JsonReader reader) throws IOException {
MicrosoftAccountMeta meta = GC_MicrosoftAccountMeta.read(reader);
return meta == null ? null : new MicrosoftAccount(meta);
}
}

View File

@ -1,24 +1,12 @@
package io.gitlab.jfronny.inceptum.launcher.gson; package io.gitlab.jfronny.inceptum.launcher.gson;
import io.gitlab.jfronny.gson.compile.annotations.GSerializable; import io.gitlab.jfronny.gson.compile.annotations.GSerializable;
import io.gitlab.jfronny.gson.stream.JsonReader;
import io.gitlab.jfronny.gson.stream.JsonWriter;
import io.gitlab.jfronny.inceptum.common.GsonPreset; import io.gitlab.jfronny.inceptum.common.GsonPreset;
import io.gitlab.jfronny.inceptum.launcher.api.account.MicrosoftAccount;
import io.gitlab.jfronny.inceptum.launcher.model.microsoft.response.OauthTokenResponse; import io.gitlab.jfronny.inceptum.launcher.model.microsoft.response.OauthTokenResponse;
import io.gitlab.jfronny.inceptum.launcher.model.microsoft.response.XboxLiveAuthResponse; import io.gitlab.jfronny.inceptum.launcher.model.microsoft.response.XboxLiveAuthResponse;
import java.io.IOException;
import java.util.Date; import java.util.Date;
@GSerializable(configure = GsonPreset.Api.class) @GSerializable(configure = GsonPreset.Api.class)
public record MicrosoftAccountMeta(String accountId, String minecraftUsername, String uuid, String accessToken, OauthTokenResponse oauthToken, XboxLiveAuthResponse xstsAuth, Date accessTokenExpiresAt, boolean mustLogin) { public record MicrosoftAccountMeta(String accountId, String minecraftUsername, String uuid, String accessToken, OauthTokenResponse oauthToken, XboxLiveAuthResponse xstsAuth, Date accessTokenExpiresAt, boolean mustLogin) {
public static void write(JsonWriter writer, MicrosoftAccount value) throws IOException {
GC_MicrosoftAccountMeta.write(writer, value == null ? null : value.toMeta());
}
public static MicrosoftAccount read(JsonReader reader) throws IOException {
MicrosoftAccountMeta meta = GC_MicrosoftAccountMeta.read(reader);
return meta == null ? null : new MicrosoftAccount(meta);
}
} }

View File

@ -1,5 +1,6 @@
package io.gitlab.jfronny.inceptum.launcher.gson; package io.gitlab.jfronny.inceptum.launcher.gson;
import gsoncompile.extensions.io.gitlab.jfronny.inceptum.launcher.model.mojang.Rules.GC_Rules;
import io.gitlab.jfronny.gson.JsonParseException; import io.gitlab.jfronny.gson.JsonParseException;
import io.gitlab.jfronny.gson.compile.util.GList; import io.gitlab.jfronny.gson.compile.util.GList;
import io.gitlab.jfronny.gson.stream.*; import io.gitlab.jfronny.gson.stream.*;

View File

@ -1,9 +1,9 @@
package io.gitlab.jfronny.inceptum.launcher.gson; package io.gitlab.jfronny.inceptum.launcher.gson;
import gsoncompile.extensions.io.gitlab.jfronny.inceptum.launcher.system.source.ModSource.GC_ModSource;
import io.gitlab.jfronny.gson.stream.JsonReader; import io.gitlab.jfronny.gson.stream.JsonReader;
import io.gitlab.jfronny.gson.stream.JsonWriter; import io.gitlab.jfronny.gson.stream.JsonWriter;
import io.gitlab.jfronny.inceptum.launcher.model.inceptum.ModMeta$Sources; import io.gitlab.jfronny.inceptum.launcher.model.inceptum.ModMeta$Sources;
import io.gitlab.jfronny.inceptum.launcher.system.source.GC_ModSource;
import io.gitlab.jfronny.inceptum.launcher.system.source.ModSource; import io.gitlab.jfronny.inceptum.launcher.system.source.ModSource;
import java.io.IOException; import java.io.IOException;
@ -12,7 +12,7 @@ import java.util.Optional;
public class ModMetaSourcesAdapter { public class ModMetaSourcesAdapter {
public static void write(JsonWriter writer, ModMeta$Sources value) throws IOException { public static void write(JsonWriter writer, ModMeta$Sources value) throws IOException {
writer.beginArray(); writer.beginArray();
for (ModSource source : value.keySet()) GC_ModSource.write(writer, source); for (ModSource source : value.keySet()) GC_ModSource.write(source, writer);
writer.endArray(); writer.endArray();
} }

View File

@ -87,8 +87,7 @@ public record ModMeta(
try { try {
FingerprintMatchesResponse.Result cf = CurseforgeApi.checkFingerprint(murmur2); FingerprintMatchesResponse.Result cf = CurseforgeApi.checkFingerprint(murmur2);
if (!cf.exactMatches.isEmpty) { if (!cf.exactMatches.isEmpty) {
// TODO use array access once fixed FingerprintMatchesResponse.Result.Match f = cf.exactMatches[0];
FingerprintMatchesResponse.Result.Match f = cf.exactMatches.get(0);
addSource(new CurseforgeModSource(f.id, f.file.id), gameVersion); addSource(new CurseforgeModSource(f.id, f.file.id), gameVersion);
changed = true; changed = true;
} }
@ -101,8 +100,7 @@ public record ModMeta(
public void addSource(ModSource source, String gameVersion) { public void addSource(ModSource source, String gameVersion) {
try { try {
// TODO use array access once fixed sources[source] = source.getUpdate(gameVersion);
sources.put(source, source.getUpdate(gameVersion));
} catch (IOException e) { } catch (IOException e) {
Utils.LOGGER.error("Could not check " + source.name + " for updates", e); Utils.LOGGER.error("Could not check " + source.name + " for updates", e);
} }

View File

@ -1,8 +1,8 @@
package io.gitlab.jfronny.inceptum.launcher.system.exporter; package io.gitlab.jfronny.inceptum.launcher.system.exporter;
import gsoncompile.extensions.io.gitlab.jfronny.inceptum.launcher.model.curseforge.CurseforgeModpackManifest.GC_CurseforgeModpackManifest;
import io.gitlab.jfronny.inceptum.common.InceptumConfig; import io.gitlab.jfronny.inceptum.common.InceptumConfig;
import io.gitlab.jfronny.inceptum.launcher.model.curseforge.CurseforgeModpackManifest; import io.gitlab.jfronny.inceptum.launcher.model.curseforge.CurseforgeModpackManifest;
import io.gitlab.jfronny.inceptum.launcher.model.curseforge.GC_CurseforgeModpackManifest;
import io.gitlab.jfronny.inceptum.launcher.system.instance.Instance; import io.gitlab.jfronny.inceptum.launcher.system.instance.Instance;
import io.gitlab.jfronny.inceptum.launcher.system.instance.Mod; import io.gitlab.jfronny.inceptum.launcher.system.instance.Mod;
import io.gitlab.jfronny.inceptum.launcher.system.source.CurseforgeModSource; import io.gitlab.jfronny.inceptum.launcher.system.source.CurseforgeModSource;
@ -41,7 +41,7 @@ public class CurseForgeExporter extends Exporter<CurseforgeModpackManifest> {
true true
)); ));
} }
GC_CurseforgeModpackManifest.write(root.resolve("manifest.json"), manifest); GC_CurseforgeModpackManifest.write(manifest, root.resolve("manifest.json"));
return manifest; return manifest;
} }
@ -60,6 +60,6 @@ public class CurseForgeExporter extends Exporter<CurseforgeModpackManifest> {
Files.createDirectories(modsOverrides); Files.createDirectories(modsOverrides);
Files.copy(mod.jarPath, modsOverrides.resolve(mod.jarPath.fileName.toString())); Files.copy(mod.jarPath, modsOverrides.resolve(mod.jarPath.fileName.toString()));
} }
GC_CurseforgeModpackManifest.write(root.resolve("manifest.json"), manifest); GC_CurseforgeModpackManifest.write(manifest, root.resolve("manifest.json"));
} }
} }

View File

@ -1,6 +1,6 @@
package io.gitlab.jfronny.inceptum.launcher.system.exporter; package io.gitlab.jfronny.inceptum.launcher.system.exporter;
import io.gitlab.jfronny.inceptum.launcher.model.modrinth.GC_ModrinthModpackManifest; import gsoncompile.extensions.io.gitlab.jfronny.inceptum.launcher.model.modrinth.ModrinthModpackManifest.GC_ModrinthModpackManifest;
import io.gitlab.jfronny.inceptum.launcher.model.modrinth.ModrinthModpackManifest; import io.gitlab.jfronny.inceptum.launcher.model.modrinth.ModrinthModpackManifest;
import io.gitlab.jfronny.inceptum.launcher.system.instance.Instance; import io.gitlab.jfronny.inceptum.launcher.system.instance.Instance;
import io.gitlab.jfronny.inceptum.launcher.system.instance.Mod; import io.gitlab.jfronny.inceptum.launcher.system.instance.Mod;
@ -34,7 +34,7 @@ public class ModrinthExporter extends Exporter<ModrinthModpackManifest> {
null null
) )
); );
GC_ModrinthModpackManifest.write(root.resolve("modrinth.index.json"), manifest); GC_ModrinthModpackManifest.write(manifest, root.resolve("modrinth.index.json"));
return manifest; return manifest;
} }
@ -53,6 +53,6 @@ public class ModrinthExporter extends Exporter<ModrinthModpackManifest> {
Files.createDirectories(modsOverrides); Files.createDirectories(modsOverrides);
Files.copy(mod.jarPath, modsOverrides.resolve(mod.jarPath.fileName.toString())); Files.copy(mod.jarPath, modsOverrides.resolve(mod.jarPath.fileName.toString()));
} }
GC_ModrinthModpackManifest.write(root.resolve("modrinth.index.json"), manifest); GC_ModrinthModpackManifest.write(manifest, root.resolve("modrinth.index.json"));
} }
} }

View File

@ -1,6 +1,6 @@
package io.gitlab.jfronny.inceptum.launcher.system.exporter; package io.gitlab.jfronny.inceptum.launcher.system.exporter;
import io.gitlab.jfronny.inceptum.launcher.model.multimc.GC_MMCPackMeta; import gsoncompile.extensions.io.gitlab.jfronny.inceptum.launcher.model.multimc.MMCPackMeta.GC_MMCPackMeta;
import io.gitlab.jfronny.inceptum.launcher.model.multimc.MMCPackMeta; import io.gitlab.jfronny.inceptum.launcher.model.multimc.MMCPackMeta;
import io.gitlab.jfronny.inceptum.launcher.system.instance.Instance; import io.gitlab.jfronny.inceptum.launcher.system.instance.Instance;
import io.gitlab.jfronny.inceptum.launcher.system.instance.Mod; import io.gitlab.jfronny.inceptum.launcher.system.instance.Mod;
@ -54,7 +54,7 @@ public class MultiMCExporter extends Exporter<MMCPackMeta> {
manifest.components.add(new MMCPackMeta.Component(true, false, "net.fabricmc.intermediary", instance.gameVersion)); manifest.components.add(new MMCPackMeta.Component(true, false, "net.fabricmc.intermediary", instance.gameVersion));
manifest.components.add(new MMCPackMeta.Component(false, false, "net.fabricmc.fabric-loader", instance.loaderVersion)); manifest.components.add(new MMCPackMeta.Component(false, false, "net.fabricmc.fabric-loader", instance.loaderVersion));
} }
GC_MMCPackMeta.write(root.resolve("mmc-pack.json"), manifest); GC_MMCPackMeta.write(manifest, root.resolve("mmc-pack.json"));
return manifest; return manifest;
} }
} }

View File

@ -1,8 +1,8 @@
package io.gitlab.jfronny.inceptum.launcher.system.importer; package io.gitlab.jfronny.inceptum.launcher.system.importer;
import gsoncompile.extensions.io.gitlab.jfronny.inceptum.launcher.model.curseforge.CurseforgeModpackManifest.GC_CurseforgeModpackManifest;
import gsoncompile.extensions.io.gitlab.jfronny.inceptum.launcher.model.inceptum.ModMeta.GC_ModMeta;
import io.gitlab.jfronny.inceptum.launcher.model.curseforge.CurseforgeModpackManifest; import io.gitlab.jfronny.inceptum.launcher.model.curseforge.CurseforgeModpackManifest;
import io.gitlab.jfronny.inceptum.launcher.model.curseforge.GC_CurseforgeModpackManifest;
import io.gitlab.jfronny.inceptum.launcher.model.inceptum.GC_ModMeta;
import io.gitlab.jfronny.inceptum.launcher.model.inceptum.ModMeta; import io.gitlab.jfronny.inceptum.launcher.model.inceptum.ModMeta;
import io.gitlab.jfronny.inceptum.launcher.system.instance.ModPath; import io.gitlab.jfronny.inceptum.launcher.system.instance.ModPath;
import io.gitlab.jfronny.inceptum.launcher.system.source.CurseforgeModSource; import io.gitlab.jfronny.inceptum.launcher.system.source.CurseforgeModSource;
@ -48,7 +48,7 @@ public class CurseForgeImporter extends Importer<CurseforgeModpackManifest> {
ModDownload download = source.download(); ModDownload download = source.download();
ModMeta imod = ModMeta.of(download.sha1, download.murmur2, source, manifest.minecraft.version); ModMeta imod = ModMeta.of(download.sha1, download.murmur2, source, manifest.minecraft.version);
Files.createDirectories(modsPath); Files.createDirectories(modsPath);
GC_ModMeta.write(modsPath.resolve(source.shortName + ModPath.EXT_IMOD), imod); GC_ModMeta.write(imod, modsPath.resolve(source.shortName + ModPath.EXT_IMOD));
} }
} }
} }

View File

@ -1,12 +1,12 @@
package io.gitlab.jfronny.inceptum.launcher.system.importer; package io.gitlab.jfronny.inceptum.launcher.system.importer;
import gsoncompile.extensions.io.gitlab.jfronny.inceptum.launcher.model.inceptum.InstanceMeta.GC_InstanceMeta;
import io.gitlab.jfronny.commons.io.JFiles; import io.gitlab.jfronny.commons.io.JFiles;
import io.gitlab.jfronny.commons.throwable.ThrowingFunction; import io.gitlab.jfronny.commons.throwable.ThrowingFunction;
import io.gitlab.jfronny.inceptum.common.MetaHolder; import io.gitlab.jfronny.inceptum.common.MetaHolder;
import io.gitlab.jfronny.inceptum.common.Utils; import io.gitlab.jfronny.inceptum.common.Utils;
import io.gitlab.jfronny.inceptum.launcher.api.FabricMetaApi; import io.gitlab.jfronny.inceptum.launcher.api.FabricMetaApi;
import io.gitlab.jfronny.inceptum.launcher.api.McApi; import io.gitlab.jfronny.inceptum.launcher.api.McApi;
import io.gitlab.jfronny.inceptum.launcher.model.inceptum.GC_InstanceMeta;
import io.gitlab.jfronny.inceptum.launcher.model.inceptum.InstanceMeta; import io.gitlab.jfronny.inceptum.launcher.model.inceptum.InstanceMeta;
import io.gitlab.jfronny.inceptum.launcher.system.instance.*; import io.gitlab.jfronny.inceptum.launcher.system.instance.*;
import io.gitlab.jfronny.inceptum.launcher.system.setup.Steps; import io.gitlab.jfronny.inceptum.launcher.system.setup.Steps;
@ -60,7 +60,7 @@ public abstract class Importer<T> {
Instance.setSetupLock(iDir, true); Instance.setSetupLock(iDir, true);
InstanceMeta meta = new InstanceMeta(); InstanceMeta meta = new InstanceMeta();
meta.version = createVersionString(man.gameVersion, man.fabricVersion); meta.version = createVersionString(man.gameVersion, man.fabricVersion);
GC_InstanceMeta.write(iDir.resolve("instance.json"), meta); GC_InstanceMeta.write(meta, iDir.resolve("instance.json"));
state.incrementStep("Downloading mods"); state.incrementStep("Downloading mods");
downloadMods(manifest, iDir, state); downloadMods(manifest, iDir, state);

View File

@ -1,7 +1,7 @@
package io.gitlab.jfronny.inceptum.launcher.system.importer; package io.gitlab.jfronny.inceptum.launcher.system.importer;
import gsoncompile.extensions.io.gitlab.jfronny.inceptum.launcher.model.modrinth.ModrinthModpackManifest.GC_ModrinthModpackManifest;
import io.gitlab.jfronny.inceptum.common.Net; import io.gitlab.jfronny.inceptum.common.Net;
import io.gitlab.jfronny.inceptum.launcher.model.modrinth.GC_ModrinthModpackManifest;
import io.gitlab.jfronny.inceptum.launcher.model.modrinth.ModrinthModpackManifest; import io.gitlab.jfronny.inceptum.launcher.model.modrinth.ModrinthModpackManifest;
import io.gitlab.jfronny.inceptum.launcher.util.ProcessState; import io.gitlab.jfronny.inceptum.launcher.util.ProcessState;

View File

@ -1,6 +1,6 @@
package io.gitlab.jfronny.inceptum.launcher.system.importer; package io.gitlab.jfronny.inceptum.launcher.system.importer;
import io.gitlab.jfronny.inceptum.launcher.model.multimc.GC_MMCPackMeta; import gsoncompile.extensions.io.gitlab.jfronny.inceptum.launcher.model.multimc.MMCPackMeta.GC_MMCPackMeta;
import io.gitlab.jfronny.inceptum.launcher.model.multimc.MMCPackMeta; import io.gitlab.jfronny.inceptum.launcher.model.multimc.MMCPackMeta;
import io.gitlab.jfronny.inceptum.launcher.util.ProcessState; import io.gitlab.jfronny.inceptum.launcher.util.ProcessState;

View File

@ -1,8 +1,8 @@
package io.gitlab.jfronny.inceptum.launcher.system.instance; package io.gitlab.jfronny.inceptum.launcher.system.instance;
import io.gitlab.jfronny.inceptum.common.R; import gsoncompile.extensions.io.gitlab.jfronny.inceptum.launcher.model.inceptum.InstanceMeta.GC_InstanceMeta;
import io.gitlab.jfronny.commons.ref.R;
import io.gitlab.jfronny.inceptum.common.Utils; import io.gitlab.jfronny.inceptum.common.Utils;
import io.gitlab.jfronny.inceptum.launcher.model.inceptum.GC_InstanceMeta;
import io.gitlab.jfronny.inceptum.launcher.model.inceptum.InstanceMeta; import io.gitlab.jfronny.inceptum.launcher.model.inceptum.InstanceMeta;
import io.gitlab.jfronny.inceptum.launcher.system.mds.ModsDirScanner; import io.gitlab.jfronny.inceptum.launcher.system.mds.ModsDirScanner;
import io.gitlab.jfronny.inceptum.launcher.util.GameVersionParser; import io.gitlab.jfronny.inceptum.launcher.util.GameVersionParser;
@ -132,7 +132,7 @@ public record Instance(String id, Path path, InstanceMeta meta, ModsDirScanner m
public void writeMeta() { public void writeMeta() {
try { try {
GC_InstanceMeta.write(path.resolve("instance.json"), meta); GC_InstanceMeta.write(meta, path.resolve("instance.json"));
} catch (IOException e) { } catch (IOException e) {
Utils.LOGGER.error("Could not write instance config", e); Utils.LOGGER.error("Could not write instance config", e);
} }

View File

@ -1,10 +1,10 @@
package io.gitlab.jfronny.inceptum.launcher.system.instance; package io.gitlab.jfronny.inceptum.launcher.system.instance;
import gsoncompile.extensions.io.gitlab.jfronny.inceptum.launcher.model.inceptum.InstanceMeta.GC_InstanceMeta;
import io.gitlab.jfronny.commons.io.JFiles; import io.gitlab.jfronny.commons.io.JFiles;
import io.gitlab.jfronny.commons.throwable.ThrowingConsumer; import io.gitlab.jfronny.commons.throwable.ThrowingConsumer;
import io.gitlab.jfronny.inceptum.common.MetaHolder; import io.gitlab.jfronny.inceptum.common.MetaHolder;
import io.gitlab.jfronny.inceptum.common.Utils; import io.gitlab.jfronny.inceptum.common.Utils;
import io.gitlab.jfronny.inceptum.launcher.model.inceptum.GC_InstanceMeta;
import io.gitlab.jfronny.inceptum.launcher.model.inceptum.InstanceMeta; import io.gitlab.jfronny.inceptum.launcher.model.inceptum.InstanceMeta;
import io.gitlab.jfronny.inceptum.launcher.util.FileBackedRef; import io.gitlab.jfronny.inceptum.launcher.util.FileBackedRef;

View File

@ -1,6 +1,6 @@
package io.gitlab.jfronny.inceptum.launcher.system.instance; package io.gitlab.jfronny.inceptum.launcher.system.instance;
import io.gitlab.jfronny.inceptum.launcher.model.inceptum.GC_ModMeta; import gsoncompile.extensions.io.gitlab.jfronny.inceptum.launcher.model.inceptum.ModMeta.GC_ModMeta;
import io.gitlab.jfronny.inceptum.launcher.model.inceptum.ModMeta; import io.gitlab.jfronny.inceptum.launcher.model.inceptum.ModMeta;
import io.gitlab.jfronny.inceptum.launcher.system.mds.ModsDirScanner; import io.gitlab.jfronny.inceptum.launcher.system.mds.ModsDirScanner;
import io.gitlab.jfronny.inceptum.launcher.system.source.ModDownload; import io.gitlab.jfronny.inceptum.launcher.system.source.ModDownload;
@ -31,7 +31,7 @@ public class ModManager {
public record DownloadMeta(ModDownload download, ModMeta meta, ModSource source, Path metaFile) { public record DownloadMeta(ModDownload download, ModMeta meta, ModSource source, Path metaFile) {
public void write() throws IOException { public void write() throws IOException {
GC_ModMeta.write(metaFile, meta); GC_ModMeta.write(meta, metaFile);
} }
} }
} }

View File

@ -1,6 +1,7 @@
package io.gitlab.jfronny.inceptum.launcher.system.launch; package io.gitlab.jfronny.inceptum.launcher.system.launch;
import io.gitlab.jfronny.commons.OSUtils; import io.gitlab.jfronny.commons.OSUtils;
import io.gitlab.jfronny.commons.ref.R;
import io.gitlab.jfronny.inceptum.common.*; import io.gitlab.jfronny.inceptum.common.*;
import io.gitlab.jfronny.inceptum.launcher.LauncherEnv; import io.gitlab.jfronny.inceptum.launcher.LauncherEnv;
import io.gitlab.jfronny.inceptum.launcher.api.FabricMetaApi; import io.gitlab.jfronny.inceptum.launcher.api.FabricMetaApi;

View File

@ -1,10 +1,10 @@
package io.gitlab.jfronny.inceptum.launcher.system.mds; package io.gitlab.jfronny.inceptum.launcher.system.mds;
import gsoncompile.extensions.io.gitlab.jfronny.inceptum.launcher.model.fabric.FabricModJson.GC_FabricModJson;
import gsoncompile.extensions.io.gitlab.jfronny.inceptum.launcher.model.inceptum.ModMeta.GC_ModMeta;
import io.gitlab.jfronny.gson.JsonParseException; import io.gitlab.jfronny.gson.JsonParseException;
import io.gitlab.jfronny.inceptum.common.Utils; import io.gitlab.jfronny.inceptum.common.Utils;
import io.gitlab.jfronny.inceptum.launcher.model.fabric.FabricModJson; import io.gitlab.jfronny.inceptum.launcher.model.fabric.FabricModJson;
import io.gitlab.jfronny.inceptum.launcher.model.fabric.GC_FabricModJson;
import io.gitlab.jfronny.inceptum.launcher.model.inceptum.GC_ModMeta;
import io.gitlab.jfronny.inceptum.launcher.model.inceptum.ModMeta; import io.gitlab.jfronny.inceptum.launcher.model.inceptum.ModMeta;
import io.gitlab.jfronny.inceptum.launcher.system.instance.Mod; import io.gitlab.jfronny.inceptum.launcher.system.instance.Mod;
import io.gitlab.jfronny.inceptum.launcher.system.instance.ModPath; import io.gitlab.jfronny.inceptum.launcher.system.instance.ModPath;
@ -46,7 +46,7 @@ public record FileScanTask(ProtoInstance instance, Path file, BiConsumer<Path, M
private <TEx extends Throwable> void evaluateSources(Path modFile, MetadataRef ref) throws IOException, TEx { private <TEx extends Throwable> void evaluateSources(Path modFile, MetadataRef ref) throws IOException, TEx {
boolean modified = false; boolean modified = false;
if (ref.meta.initialize(gameVersion)) { if (ref.meta.initialize(gameVersion)) {
GC_ModMeta.write(ref.imodPath, ref.meta); GC_ModMeta.write(ref.meta, ref.imodPath);
modified = true; modified = true;
} }
ModSource selectedSource = null; ModSource selectedSource = null;
@ -73,8 +73,7 @@ public record FileScanTask(ProtoInstance instance, Path file, BiConsumer<Path, M
if (md.sources.isEmpty()) { if (md.sources.isEmpty()) {
throw new FileNotFoundException("Mod " + modJarDefault.fileName.toString() + " doesn't specify a source and has no file"); throw new FileNotFoundException("Mod " + modJarDefault.fileName.toString() + " doesn't specify a source and has no file");
} }
// TODO use array access once fixed modJarDefault = List.copyOf(md.sources.keySet())[0].jarPath;
modJarDefault = List.copyOf(md.sources.keySet()).get(0).jarPath;
} }
try (FileSystem fs = Utils.openZipFile(modJarDefault, false)) { try (FileSystem fs = Utils.openZipFile(modJarDefault, false)) {
Path fmjPath = fs.getPath("fabric.mod.json"); Path fmjPath = fs.getPath("fabric.mod.json");
@ -86,7 +85,7 @@ public record FileScanTask(ProtoInstance instance, Path file, BiConsumer<Path, M
private static class MetadataRef { private static class MetadataRef {
public MetadataRef(Path imodPath, @Nullable Function<Path, ModMeta> defaultMeta) throws IOException { public MetadataRef(Path imodPath, @Nullable Function<Path, ModMeta> defaultMeta) throws IOException {
this.imodPath = imodPath; this.imodPath = imodPath;
if (!Files.exists(imodPath) && defaultMeta != null) GC_ModMeta.write(imodPath, defaultMeta.apply(imodPath)); if (!Files.exists(imodPath) && defaultMeta != null) GC_ModMeta.write(defaultMeta.apply(imodPath), imodPath);
if (Files.exists(imodPath)) update(); if (Files.exists(imodPath)) update();
} }

View File

@ -1,7 +1,7 @@
package io.gitlab.jfronny.inceptum.launcher.system.mds; package io.gitlab.jfronny.inceptum.launcher.system.mds;
import gsoncompile.extensions.io.gitlab.jfronny.inceptum.launcher.model.inceptum.ModMeta.GC_ModMeta;
import io.gitlab.jfronny.inceptum.launcher.model.fabric.FabricModJson; import io.gitlab.jfronny.inceptum.launcher.model.fabric.FabricModJson;
import io.gitlab.jfronny.inceptum.launcher.model.inceptum.GC_ModMeta;
import io.gitlab.jfronny.inceptum.launcher.model.inceptum.ModMeta; import io.gitlab.jfronny.inceptum.launcher.model.inceptum.ModMeta;
import io.gitlab.jfronny.inceptum.launcher.system.instance.*; import io.gitlab.jfronny.inceptum.launcher.system.instance.*;
import io.gitlab.jfronny.inceptum.launcher.system.source.ModSource; import io.gitlab.jfronny.inceptum.launcher.system.source.ModSource;
@ -131,6 +131,6 @@ public class MdsMod extends Mod {
} }
private void write() throws IOException { private void write() throws IOException {
GC_ModMeta.write(imodPath, meta); GC_ModMeta.write(meta, imodPath);
} }
} }

View File

@ -1,7 +1,7 @@
package io.gitlab.jfronny.inceptum.launcher.system.mds; package io.gitlab.jfronny.inceptum.launcher.system.mds;
import io.gitlab.jfronny.commons.io.JFiles; import io.gitlab.jfronny.commons.io.JFiles;
import io.gitlab.jfronny.inceptum.common.R; import io.gitlab.jfronny.commons.ref.R;
import io.gitlab.jfronny.inceptum.common.Utils; import io.gitlab.jfronny.inceptum.common.Utils;
import io.gitlab.jfronny.inceptum.launcher.model.inceptum.InstanceMeta; import io.gitlab.jfronny.inceptum.launcher.model.inceptum.InstanceMeta;
import io.gitlab.jfronny.inceptum.launcher.system.instance.Mod; import io.gitlab.jfronny.inceptum.launcher.system.instance.Mod;

View File

@ -1,7 +1,7 @@
package io.gitlab.jfronny.inceptum.launcher.system.setup.steps; package io.gitlab.jfronny.inceptum.launcher.system.setup.steps;
import gsoncompile.extensions.io.gitlab.jfronny.inceptum.launcher.model.inceptum.InstanceMeta.GC_InstanceMeta;
import io.gitlab.jfronny.inceptum.common.MetaHolder; import io.gitlab.jfronny.inceptum.common.MetaHolder;
import io.gitlab.jfronny.inceptum.launcher.model.inceptum.GC_InstanceMeta;
import io.gitlab.jfronny.inceptum.launcher.system.mds.ModsDirScanner; import io.gitlab.jfronny.inceptum.launcher.system.mds.ModsDirScanner;
import io.gitlab.jfronny.inceptum.launcher.system.setup.SetupStepInfo; import io.gitlab.jfronny.inceptum.launcher.system.setup.SetupStepInfo;
import io.gitlab.jfronny.inceptum.launcher.system.setup.Step; import io.gitlab.jfronny.inceptum.launcher.system.setup.Step;

View File

@ -1,7 +1,7 @@
package io.gitlab.jfronny.inceptum.launcher.system.setup.steps; package io.gitlab.jfronny.inceptum.launcher.system.setup.steps;
import gsoncompile.extensions.io.gitlab.jfronny.inceptum.launcher.model.inceptum.InstanceMeta.GC_InstanceMeta;
import io.gitlab.jfronny.inceptum.common.MetaHolder; import io.gitlab.jfronny.inceptum.common.MetaHolder;
import io.gitlab.jfronny.inceptum.launcher.model.inceptum.GC_InstanceMeta;
import io.gitlab.jfronny.inceptum.launcher.model.inceptum.InstanceMeta; import io.gitlab.jfronny.inceptum.launcher.model.inceptum.InstanceMeta;
import io.gitlab.jfronny.inceptum.launcher.system.instance.Instance; import io.gitlab.jfronny.inceptum.launcher.system.instance.Instance;
import io.gitlab.jfronny.inceptum.launcher.system.setup.SetupStepInfo; import io.gitlab.jfronny.inceptum.launcher.system.setup.SetupStepInfo;
@ -21,7 +21,7 @@ public class WriteMetadataStep implements Step {
if (!Files.exists(metaPath)) { if (!Files.exists(metaPath)) {
InstanceMeta meta = new InstanceMeta(); InstanceMeta meta = new InstanceMeta();
meta.version = info.version.id; meta.version = info.version.id;
GC_InstanceMeta.write(metaPath, meta); GC_InstanceMeta.write(meta, metaPath);
} }
Instance.setSetupLock(instance, false); Instance.setSetupLock(instance, false);
if (!Files.exists(instance.resolve(".gitignore"))) { if (!Files.exists(instance.resolve(".gitignore"))) {

View File

@ -1,14 +1,3 @@
pluginManagement {
repositories {
maven("https://maven.frohnmeyer-wds.de/artifacts")
gradlePluginPortal()
}
plugins {
id("jf.codegen") version "1.2-SNAPSHOT"
id("jf.autoversion") version "1.2-SNAPSHOT"
}
}
rootProject.name = "Inceptum" rootProject.name = "Inceptum"
include("common") include("common")

View File

@ -1,5 +1,7 @@
package io.gitlab.jfronny.inceptum.wrapper; package io.gitlab.jfronny.inceptum.wrapper;
import gsoncompile.extensions.io.gitlab.jfronny.inceptum.common.model.inceptum.WrapperConfig.GC_WrapperConfig;
import io.gitlab.jfronny.commons.ref.R;
import io.gitlab.jfronny.inceptum.common.*; import io.gitlab.jfronny.inceptum.common.*;
import io.gitlab.jfronny.inceptum.common.model.inceptum.*; import io.gitlab.jfronny.inceptum.common.model.inceptum.*;