Skip to content

Commit 99e148f

Browse files
committed
Implemented sweeping changes/fixes
1 parent f0f9b8a commit 99e148f

2 files changed

Lines changed: 20 additions & 32 deletions

File tree

build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,7 @@ repositories {
6060
}
6161

6262
dependencies {
63-
compileOnly("org.mangorage:mangobotbootstrap:1.0.83")
63+
compileOnly("org.mangorage:mangobotbootstrap:1.0.84")
6464
}
6565

6666
test {

src/main/java/org/mangorage/mangobotlaunch/launch/ClassTransformers.java

Lines changed: 19 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -5,55 +5,43 @@
55
import org.mangorage.bootstrap.api.transformer.TransformerFlag;
66

77
import java.util.List;
8-
import java.util.Map;
9-
import java.util.concurrent.ConcurrentHashMap;
108
import java.util.concurrent.CopyOnWriteArrayList;
11-
import java.util.concurrent.atomic.AtomicReference;
129

1310
public final class ClassTransformers {
14-
private final Map<String, Class<?>> classes = new ConcurrentHashMap<>();
11+
12+
private static final boolean DEBUG_CLASS_TRANSFORMING = Boolean.getBoolean("DEBUG_CLASS_TRANSFORMING");
13+
14+
1515
private final List<IClassTransformer> transformers = new CopyOnWriteArrayList<>();
1616

17-
ClassTransformers() {}
1817

19-
void add(String name, Class<?> clz) {
20-
classes.put(name, clz);
21-
}
18+
ClassTransformers() {}
2219

2320
void add(IClassTransformer transformer) {
2421
transformers.add(transformer);
2522
}
2623

27-
boolean isEmpty() {
28-
return transformers.isEmpty();
29-
}
30-
3124
byte[] transform(String name, byte[] classData) {
3225

33-
AtomicReference<TransformResult> result = new AtomicReference<>(TransformerFlag.NO_REWRITE.of(classData));
34-
AtomicReference<IClassTransformer> _transformer = new AtomicReference<>();
35-
3626
for (IClassTransformer transformer : transformers) {
37-
result.set(transformer.transform(name, classData));
38-
if (result.get().flag() != TransformerFlag.NO_REWRITE) {
39-
_transformer.set(transformer);
40-
break;
27+
28+
TransformResult result = transformer.transform(name, classData);
29+
30+
if (DEBUG_CLASS_TRANSFORMING) {
31+
// TODO: Implement this
4132
}
42-
}
4333

44-
if (result.get().flag() != TransformerFlag.NO_REWRITE && _transformer.get() != null) {
45-
System.out.println("%s Transformed %s".formatted(_transformer.get().getName(), name));
46-
return result.get().classData();
34+
if (result.flag() != TransformerFlag.NO_REWRITE) {
35+
System.out.println(
36+
"%s Transformed %s"
37+
.formatted(transformer.getName(), name)
38+
);
39+
40+
return result.classData();
41+
}
4742
}
4843

4944
return null;
5045
}
5146

52-
boolean containsClass(String name) {
53-
return classes.containsKey(name);
54-
}
55-
56-
Class<?> getClazz(String string) {
57-
return classes.get(string);
58-
}
59-
}
47+
}

0 commit comments

Comments
 (0)