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 --- .../java/cuchaz/enigma/command/DecompileCommand.java | 20 +++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) (limited to 'src/main/java/cuchaz/enigma/command/DecompileCommand.java') diff --git a/src/main/java/cuchaz/enigma/command/DecompileCommand.java b/src/main/java/cuchaz/enigma/command/DecompileCommand.java index a58d908..bc23d01 100644 --- a/src/main/java/cuchaz/enigma/command/DecompileCommand.java +++ b/src/main/java/cuchaz/enigma/command/DecompileCommand.java @@ -1,10 +1,9 @@ package cuchaz.enigma.command; -import cuchaz.enigma.Deobfuscator; +import cuchaz.enigma.EnigmaProject; +import cuchaz.enigma.ProgressListener; -import java.io.File; import java.nio.file.Path; -import java.util.jar.JarFile; public class DecompileCommand extends Command { @@ -24,10 +23,17 @@ public class DecompileCommand extends Command { @Override public void run(String... args) throws Exception { - File fileJarIn = getReadableFile(getArg(args, 0, "in jar", true)); - File fileJarOut = getWritableFolder(getArg(args, 1, "out folder", true)); + Path fileJarIn = getReadableFile(getArg(args, 0, "in jar", true)).toPath(); + Path fileJarOut = getWritableFolder(getArg(args, 1, "out folder", true)).toPath(); Path fileMappings = getReadablePath(getArg(args, 2, "mappings file", false)); - Deobfuscator deobfuscator = getDeobfuscator(fileMappings, new JarFile(fileJarIn)); - deobfuscator.writeSources(fileJarOut.toPath(), new Command.ConsoleProgressListener()); + + EnigmaProject project = openProject(fileJarIn, fileMappings); + + ProgressListener progress = new ConsoleProgressListener(); + + EnigmaProject.JarExport jar = project.exportRemappedJar(progress); + EnigmaProject.SourceExport source = jar.decompile(progress); + + source.write(fileJarOut, progress); } } -- cgit v1.2.3