From e27d5967029f4f3da8889dd673ba516dcd9f3ac8 Mon Sep 17 00:00:00 2001 From: gegy1000 Date: Sun, 16 Jun 2019 23:49:25 +0200 Subject: Plugin rework along with API rework: Enigma split from EnigmaProject; plugins now provide services configurable via a profile --- src/main/java/cuchaz/enigma/command/Command.java | 20 +++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) (limited to 'src/main/java/cuchaz/enigma/command/Command.java') diff --git a/src/main/java/cuchaz/enigma/command/Command.java b/src/main/java/cuchaz/enigma/command/Command.java index b107fb6..41d7bfa 100644 --- a/src/main/java/cuchaz/enigma/command/Command.java +++ b/src/main/java/cuchaz/enigma/command/Command.java @@ -1,6 +1,7 @@ package cuchaz.enigma.command; -import cuchaz.enigma.Deobfuscator; +import cuchaz.enigma.Enigma; +import cuchaz.enigma.EnigmaProject; import cuchaz.enigma.ProgressListener; import cuchaz.enigma.translation.mapping.EntryMapping; import cuchaz.enigma.translation.mapping.serde.MappingFormat; @@ -10,7 +11,6 @@ import java.io.File; import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.Paths; -import java.util.jar.JarFile; public abstract class Command { public final String name; @@ -25,15 +25,21 @@ public abstract class Command { public abstract void run(String... args) throws Exception; - protected static Deobfuscator getDeobfuscator(Path fileMappings, JarFile jar) throws Exception { + protected static EnigmaProject openProject(Path fileJarIn, Path fileMappings) throws Exception { + ProgressListener progress = new ConsoleProgressListener(); + + Enigma enigma = Enigma.create(); + System.out.println("Reading jar..."); - Deobfuscator deobfuscator = new Deobfuscator(jar); + EnigmaProject project = enigma.openJar(fileJarIn, progress); + if (fileMappings != null) { System.out.println("Reading mappings..."); - EntryTree mappings = chooseEnigmaFormat(fileMappings).read(fileMappings, new ConsoleProgressListener()); - deobfuscator.setMappings(mappings); + EntryTree mappings = chooseEnigmaFormat(fileMappings).read(fileMappings, progress); + project.setMappings(mappings); } - return deobfuscator; + + return project; } protected static MappingFormat chooseEnigmaFormat(Path path) { -- cgit v1.2.3