fix(coat-bridge, fabric-helper): Fix various issues
This commit is contained in:
@@ -94,12 +94,14 @@ public class TweedCoatMappersImpl {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public TweedCoatEntryMappingResult<T, String> mapEntry(ConfigEntry<T> entry, TweedCoatEntryMappingContext context) {
|
public TweedCoatEntryMappingResult<T, String> mapEntry(ConfigEntry<T> entry, TweedCoatEntryMappingContext context) {
|
||||||
boolean applicable = anyClassMatches(entry.valueClass(), valueClasses);
|
if (!anyClassMatches(entry.valueClass(), valueClasses)) {
|
||||||
|
return TweedCoatEntryMappingResult.notApplicable();
|
||||||
|
}
|
||||||
|
|
||||||
return new TweedCoatEntryMappingResult<T, String>() {
|
return new TweedCoatEntryMappingResult<T, String>() {
|
||||||
@Override
|
@Override
|
||||||
public boolean isApplicable() {
|
public boolean isApplicable() {
|
||||||
return applicable;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -198,12 +200,7 @@ public class TweedCoatMappersImpl {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public TweedCoatEntryMappingResult<T, T> mapEntry(ConfigEntry<T> entry, TweedCoatEntryMappingContext context) {
|
public TweedCoatEntryMappingResult<T, T> mapEntry(ConfigEntry<T> entry, TweedCoatEntryMappingContext context) {
|
||||||
matchingClass: {
|
if (!anyClassMatches(entry.valueClass(), valueClasses)) {
|
||||||
for (Class<T> valueClass : valueClasses) {
|
|
||||||
if (entry.valueClass() == valueClass) {
|
|
||||||
break matchingClass;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return TweedCoatEntryMappingResult.notApplicable();
|
return TweedCoatEntryMappingResult.notApplicable();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -359,9 +356,9 @@ public class TweedCoatMappersImpl {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private static boolean anyClassMatches(Object value, Class<?>... classes) {
|
private static boolean anyClassMatches(Class<?> valueClass, Class<?>... classes) {
|
||||||
for (Class<?> clazz : classes) {
|
for (Class<?> clazz : classes) {
|
||||||
if (clazz.isInstance(value)) {
|
if (clazz.isAssignableFrom(valueClass)) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -54,7 +54,7 @@ public class TweedCoatBridgeTestMod implements ClientModInitializer {
|
|||||||
|
|
||||||
KeyBindingHelper.registerKeyBinding(new ScreenKeyBinding(MOD_ID + ".config", 84, KeyMapping.Category.MISC));
|
KeyBindingHelper.registerKeyBinding(new ScreenKeyBinding(MOD_ID + ".config", 84, KeyMapping.Category.MISC));
|
||||||
|
|
||||||
log.info("current config");
|
log.info("Current config: " + config);
|
||||||
}
|
}
|
||||||
|
|
||||||
private class ScreenKeyBinding extends KeyMapping implements PriorityKeyBinding {
|
private class ScreenKeyBinding extends KeyMapping implements PriorityKeyBinding {
|
||||||
|
|||||||
@@ -1,18 +1,17 @@
|
|||||||
package de.siphalor.tweed5.coat.bridge.testmod;
|
package de.siphalor.tweed5.coat.bridge.testmod;
|
||||||
|
|
||||||
import de.siphalor.tweed5.coat.bridge.api.TweedCoatAttributes;
|
import de.siphalor.tweed5.coat.bridge.api.TweedCoatAttributes;
|
||||||
|
import de.siphalor.tweed5.coat.bridge.api.TweedCoatBridgeExtension;
|
||||||
import de.siphalor.tweed5.fabric.helper.api.DefaultTweedMinecraftWeaving;
|
import de.siphalor.tweed5.fabric.helper.api.DefaultTweedMinecraftWeaving;
|
||||||
import de.siphalor.tweed5.weaver.pojo.api.annotation.CompoundWeaving;
|
import de.siphalor.tweed5.weaver.pojo.api.annotation.CompoundWeaving;
|
||||||
import de.siphalor.tweed5.weaver.pojo.api.annotation.PojoWeaving;
|
import de.siphalor.tweed5.weaver.pojo.api.annotation.TweedExtension;
|
||||||
import de.siphalor.tweed5.weaver.pojoext.attributes.api.Attribute;
|
import de.siphalor.tweed5.weaver.pojoext.attributes.api.Attribute;
|
||||||
import de.siphalor.tweed5.weaver.pojoext.validation.api.Validator;
|
import de.siphalor.tweed5.weaver.pojoext.validation.api.Validator;
|
||||||
import de.siphalor.tweed5.weaver.pojoext.validation.api.validators.WeavableNumberRangeValidator;
|
import de.siphalor.tweed5.weaver.pojoext.validation.api.validators.WeavableNumberRangeValidator;
|
||||||
import lombok.AllArgsConstructor;
|
import lombok.*;
|
||||||
import lombok.Data;
|
|
||||||
import lombok.NoArgsConstructor;
|
|
||||||
|
|
||||||
@PojoWeaving
|
|
||||||
@DefaultTweedMinecraftWeaving
|
@DefaultTweedMinecraftWeaving
|
||||||
|
@TweedExtension(TweedCoatBridgeExtension.class)
|
||||||
@CompoundWeaving(namingFormat = "kebab_case")
|
@CompoundWeaving(namingFormat = "kebab_case")
|
||||||
@Data
|
@Data
|
||||||
public class TweedCoatBridgeTestModConfig {
|
public class TweedCoatBridgeTestModConfig {
|
||||||
@@ -26,9 +25,11 @@ public class TweedCoatBridgeTestModConfig {
|
|||||||
@Attribute(key = TweedCoatAttributes.BACKGROUND_TEXTURE, values = "textures/block/red_terracotta.png")
|
@Attribute(key = TweedCoatAttributes.BACKGROUND_TEXTURE, values = "textures/block/red_terracotta.png")
|
||||||
private Greeting clientGreeting = new Greeting("Hello client!", "Client");
|
private Greeting clientGreeting = new Greeting("Hello client!", "Client");
|
||||||
|
|
||||||
|
@CompoundWeaving
|
||||||
@NoArgsConstructor
|
@NoArgsConstructor
|
||||||
@AllArgsConstructor
|
@AllArgsConstructor
|
||||||
@CompoundWeaving
|
@EqualsAndHashCode
|
||||||
|
@ToString
|
||||||
public static class Greeting {
|
public static class Greeting {
|
||||||
public String greeting;
|
public String greeting;
|
||||||
public String greeter;
|
public String greeter;
|
||||||
|
|||||||
@@ -7,16 +7,19 @@ import de.siphalor.tweed5.data.extension.api.ReadWriteExtension;
|
|||||||
import de.siphalor.tweed5.defaultextensions.presets.api.PresetsExtension;
|
import de.siphalor.tweed5.defaultextensions.presets.api.PresetsExtension;
|
||||||
import de.siphalor.tweed5.defaultextensions.validation.api.ValidationExtension;
|
import de.siphalor.tweed5.defaultextensions.validation.api.ValidationExtension;
|
||||||
import de.siphalor.tweed5.defaultextensions.validationfallback.api.ValidationFallbackExtension;
|
import de.siphalor.tweed5.defaultextensions.validationfallback.api.ValidationFallbackExtension;
|
||||||
import de.siphalor.tweed5.weaver.pojo.api.annotation.CompoundWeaving;
|
import de.siphalor.tweed5.weaver.pojo.api.annotation.*;
|
||||||
import de.siphalor.tweed5.weaver.pojo.api.annotation.DefaultWeavingExtensions;
|
|
||||||
import de.siphalor.tweed5.weaver.pojo.api.annotation.PojoWeavingExtension;
|
|
||||||
import de.siphalor.tweed5.weaver.pojo.api.annotation.TweedExtension;
|
|
||||||
import de.siphalor.tweed5.weaver.pojoext.attributes.api.AttributesPojoWeavingProcessor;
|
import de.siphalor.tweed5.weaver.pojoext.attributes.api.AttributesPojoWeavingProcessor;
|
||||||
import de.siphalor.tweed5.weaver.pojoext.serde.api.auto.AutoReadWritePojoWeavingProcessor;
|
import de.siphalor.tweed5.weaver.pojoext.serde.api.auto.AutoReadWritePojoWeavingProcessor;
|
||||||
import de.siphalor.tweed5.weaver.pojoext.serde.api.auto.DefaultReadWriteMappings;
|
import de.siphalor.tweed5.weaver.pojoext.serde.api.auto.DefaultReadWriteMappings;
|
||||||
import de.siphalor.tweed5.weaver.pojoext.validation.api.ValidatorsPojoWeavingProcessor;
|
import de.siphalor.tweed5.weaver.pojoext.validation.api.ValidatorsPojoWeavingProcessor;
|
||||||
|
|
||||||
|
import java.lang.annotation.ElementType;
|
||||||
|
import java.lang.annotation.Retention;
|
||||||
|
import java.lang.annotation.RetentionPolicy;
|
||||||
|
import java.lang.annotation.Target;
|
||||||
|
|
||||||
@AnnotationInheritance(passOn = {
|
@AnnotationInheritance(passOn = {
|
||||||
|
PojoWeaving.class,
|
||||||
TweedExtension.class,
|
TweedExtension.class,
|
||||||
PojoWeavingExtension.class,
|
PojoWeavingExtension.class,
|
||||||
DefaultWeavingExtensions.class,
|
DefaultWeavingExtensions.class,
|
||||||
@@ -34,5 +37,7 @@ import de.siphalor.tweed5.weaver.pojoext.validation.api.ValidatorsPojoWeavingPro
|
|||||||
@DefaultWeavingExtensions
|
@DefaultWeavingExtensions
|
||||||
@DefaultReadWriteMappings
|
@DefaultReadWriteMappings
|
||||||
@CompoundWeaving
|
@CompoundWeaving
|
||||||
|
@Retention(RetentionPolicy.RUNTIME)
|
||||||
|
@Target({ElementType.TYPE, ElementType.ANNOTATION_TYPE})
|
||||||
public @interface DefaultTweedMinecraftWeaving {
|
public @interface DefaultTweedMinecraftWeaving {
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2,11 +2,9 @@ package de.siphalor.tweed5.fabric.helper.testmod;
|
|||||||
|
|
||||||
import de.siphalor.tweed5.fabric.helper.api.DefaultTweedMinecraftWeaving;
|
import de.siphalor.tweed5.fabric.helper.api.DefaultTweedMinecraftWeaving;
|
||||||
import de.siphalor.tweed5.weaver.pojo.api.annotation.CompoundWeaving;
|
import de.siphalor.tweed5.weaver.pojo.api.annotation.CompoundWeaving;
|
||||||
import de.siphalor.tweed5.weaver.pojo.api.annotation.PojoWeaving;
|
|
||||||
import de.siphalor.tweed5.weaver.pojoext.attributes.api.Attribute;
|
import de.siphalor.tweed5.weaver.pojoext.attributes.api.Attribute;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
|
||||||
@PojoWeaving
|
|
||||||
@DefaultTweedMinecraftWeaving
|
@DefaultTweedMinecraftWeaving
|
||||||
@CompoundWeaving(namingFormat = "kebab_case")
|
@CompoundWeaving(namingFormat = "kebab_case")
|
||||||
@Data
|
@Data
|
||||||
|
|||||||
Reference in New Issue
Block a user