Skip to content

Commit 48644ee

Browse files
committed
Fixed vCompat init
1 parent c46dc3c commit 48644ee

File tree

3 files changed

+6
-15
lines changed

3 files changed

+6
-15
lines changed

vcompat-api/src/main/java/net/sourcewriters/minecraft/vcompat/VersionCompatProvider.java

Lines changed: 2 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,10 @@
11
package net.sourcewriters.minecraft.vcompat;
22

3-
import com.syntaxphoenix.syntaxapi.utils.java.Exceptions;
43
import com.syntaxphoenix.syntaxapi.utils.java.tools.Container;
54

65
import net.sourcewriters.minecraft.vcompat.provider.VersionControl;
76
import net.sourcewriters.minecraft.vcompat.provider.lookup.ClassLookupProvider;
8-
import net.sourcewriters.minecraft.vcompat.util.java.tools.ReflectionTools;
7+
import net.sourcewriters.minecraft.vcompat.provider.lookup.handle.ClassLookup;
98

109
public abstract class VersionCompatProvider {
1110

@@ -16,19 +15,11 @@ public static VersionCompatProvider get() {
1615
if (PROVIDER.isPresent()) {
1716
return PROVIDER.get();
1817
}
19-
try {
20-
Class<?> clazz = ReflectionTools.getClass(IMPLEMENTATION_PATH);
21-
System.out.println("Class: " + (clazz == null));
22-
System.out.println("Class: " + IMPLEMENTATION_PATH);
23-
Object object = clazz.getConstructor().newInstance();
18+
Object object = ClassLookup.of(IMPLEMENTATION_PATH).init();
2419
if (object == null || !(object instanceof VersionCompatProvider)) {
2520
throw new IllegalStateException("Can't initialize VersionCompatProvider!");
2621
}
2722
return PROVIDER.replace((VersionCompatProvider) object).lock().get();
28-
} catch (Exception exp) {
29-
System.out.println(Exceptions.stackTraceToString(exp));
30-
throw new IllegalStateException("Can't initialize VersionCompatProvider!");
31-
}
3223
}
3324

3425
protected final ClassLookupProvider lookupProvider = new ClassLookupProvider();

vcompat-api/src/main/java/net/sourcewriters/minecraft/vcompat/util/java/tools/ReflectionTools.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ public static Class<?> arrayclass(Class<?> clazz) {
4343

4444
public static Class<?> getClass(String classPath) {
4545
try {
46-
return Class.forName(classPath, true, null);
46+
return Class.forName(classPath);
4747
} catch (ClassNotFoundException ignored) {
4848
return null;
4949
}

vcompat-core/src/main/java/net/sourcewriters/minecraft/vcompat/VersionCompat.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
package net.sourcewriters.minecraft.vcompat;
22

33
import net.sourcewriters.minecraft.vcompat.provider.VersionControl;
4+
import net.sourcewriters.minecraft.vcompat.provider.lookup.handle.ClassLookup;
45
import net.sourcewriters.minecraft.vcompat.version.Versions;
5-
import net.sourcewriters.minecraft.vcompat.util.java.tools.ReflectionTools;
66

77
public final class VersionCompat extends VersionCompatProvider {
88

9-
private static final String VERSION_PATH = String.format("%s.provider.impl.v%s.VersionControl%s", VersionCompat.class.getPackageName(), Versions.getServerAsString(), Versions.getServerAsString());
9+
private static final String VERSION_PATH = String.format("%s.provider.impl.%s.VersionControl%s", VersionCompat.class.getPackageName(), Versions.getServerAsString(), Versions.getServerAsString().substring(1));
1010

1111
private final VersionControl control;
1212

@@ -16,7 +16,7 @@ public VersionCompat() {
1616
}
1717

1818
private final VersionControl initControl() {
19-
Object object = ReflectionTools.createInstance(ReflectionTools.getClass(VERSION_PATH));
19+
Object object = ClassLookup.of(VERSION_PATH).searchMethod("init", "init").run("init");
2020
if (object == null || !(object instanceof VersionControl)) {
2121
throw new IllegalStateException("Can't initialize VersionControl");
2222
}

0 commit comments

Comments
 (0)