summaryrefslogtreecommitdiff
path: root/src/main/java/cuchaz/enigma/Deobfuscator.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/cuchaz/enigma/Deobfuscator.java')
-rw-r--r--src/main/java/cuchaz/enigma/Deobfuscator.java14
1 files changed, 8 insertions, 6 deletions
diff --git a/src/main/java/cuchaz/enigma/Deobfuscator.java b/src/main/java/cuchaz/enigma/Deobfuscator.java
index b4736d8..9060c1f 100644
--- a/src/main/java/cuchaz/enigma/Deobfuscator.java
+++ b/src/main/java/cuchaz/enigma/Deobfuscator.java
@@ -13,6 +13,7 @@ package cuchaz.enigma;
13 13
14import com.google.common.base.Functions; 14import com.google.common.base.Functions;
15import com.google.common.base.Stopwatch; 15import com.google.common.base.Stopwatch;
16import com.google.common.collect.Streams;
16import com.strobel.assembler.metadata.ITypeLoader; 17import com.strobel.assembler.metadata.ITypeLoader;
17import com.strobel.assembler.metadata.MetadataSystem; 18import com.strobel.assembler.metadata.MetadataSystem;
18import com.strobel.assembler.metadata.TypeDefinition; 19import com.strobel.assembler.metadata.TypeDefinition;
@@ -54,6 +55,7 @@ import java.util.jar.JarEntry;
54import java.util.jar.JarFile; 55import java.util.jar.JarFile;
55import java.util.jar.JarOutputStream; 56import java.util.jar.JarOutputStream;
56import java.util.stream.Collectors; 57import java.util.stream.Collectors;
58import java.util.stream.Stream;
57 59
58public class Deobfuscator { 60public class Deobfuscator {
59 61
@@ -73,10 +75,10 @@ public class Deobfuscator {
73 this.jarIndex = JarIndex.empty(); 75 this.jarIndex = JarIndex.empty();
74 this.jarIndex.indexJar(this.parsedJar, listener); 76 this.jarIndex.indexJar(this.parsedJar, listener);
75 77
76 listener.accept("Initializing plugins..."); 78 getPlugins().forEach(plugin -> {
77 for (EnigmaPlugin plugin : getPlugins()) { 79 listener.accept("Initializing plugin '" + plugin.getClass().getSimpleName() + "'");
78 plugin.onClassesLoaded(parsedJar.getClassDataMap(), parsedJar::getClassNode); 80 plugin.indexJar(parsedJar, jarIndex);
79 } 81 });
80 82
81 this.indexTreeBuilder = new IndexTreeBuilder(jarIndex); 83 this.indexTreeBuilder = new IndexTreeBuilder(jarIndex);
82 84
@@ -105,8 +107,8 @@ public class Deobfuscator {
105 }); 107 });
106 } 108 }
107 109
108 public ServiceLoader<EnigmaPlugin> getPlugins() { 110 public Stream<EnigmaPlugin> getPlugins() {
109 return plugins; 111 return Streams.stream(plugins);
110 } 112 }
111 113
112 public ParsedJar getJar() { 114 public ParsedJar getJar() {