diff options
author | Ben Gruver <bgruv@google.com> | 2016-09-05 15:42:35 -0700 |
---|---|---|
committer | Ben Gruver <bgruv@google.com> | 2016-09-17 21:30:28 -0700 |
commit | 9f794030da3ca3c18d7955a78edf0257c7c5dad9 (patch) | |
tree | 33d3c50386bac093315c0b3aba9452c0ead282b5 /baksmali | |
parent | c12b7e6e00b94d399281bf7327787553a9f7d8b5 (diff) | |
download | smali-9f794030da3ca3c18d7955a78edf0257c7c5dad9.tar.gz |
Fix how parameter delegates are handled
Diffstat (limited to 'baksmali')
4 files changed, 8 insertions, 17 deletions
diff --git a/baksmali/src/main/java/org/jf/baksmali/DeodexCommand.java b/baksmali/src/main/java/org/jf/baksmali/DeodexCommand.java index 632cd99a..73cd294b 100644 --- a/baksmali/src/main/java/org/jf/baksmali/DeodexCommand.java +++ b/baksmali/src/main/java/org/jf/baksmali/DeodexCommand.java @@ -34,6 +34,7 @@ package org.jf.baksmali; import com.beust.jcommander.JCommander; import com.beust.jcommander.Parameter; import com.beust.jcommander.Parameters; +import com.beust.jcommander.ParametersDelegate; import org.jf.baksmali.AnalysisArguments.CheckPackagePrivateArgument; import org.jf.dexlib2.analysis.CustomInlineMethodResolver; import org.jf.dexlib2.analysis.InlineMethodResolver; @@ -52,6 +53,8 @@ import java.util.List; commandName = "deodex", commandAliases = { "de", "x" }) public class DeodexCommand extends DisassembleCommand { + + @ParametersDelegate protected CheckPackagePrivateArgument checkPackagePrivateArgument = new CheckPackagePrivateArgument(); @Parameter(names = {"--inline-table", "--inline", "--it"}, @@ -65,10 +68,6 @@ public class DeodexCommand extends DisassembleCommand { super(commandAncestors); } - @Override protected void setupCommand(JCommander jc) { - jc.addObject(checkPackagePrivateArgument); - } - @Override protected BaksmaliOptions getOptions(DexFile dexFile) { BaksmaliOptions options = super.getOptions(dexFile); diff --git a/baksmali/src/main/java/org/jf/baksmali/DisassembleCommand.java b/baksmali/src/main/java/org/jf/baksmali/DisassembleCommand.java index 1ed61f08..b8c9c21d 100644 --- a/baksmali/src/main/java/org/jf/baksmali/DisassembleCommand.java +++ b/baksmali/src/main/java/org/jf/baksmali/DisassembleCommand.java @@ -34,6 +34,7 @@ package org.jf.baksmali; import com.beust.jcommander.JCommander; import com.beust.jcommander.Parameter; import com.beust.jcommander.Parameters; +import com.beust.jcommander.ParametersDelegate; import com.beust.jcommander.validators.PositiveInteger; import com.google.common.collect.Lists; import com.google.common.collect.Maps; @@ -62,6 +63,7 @@ public class DisassembleCommand extends DexInputCommand { description = "Show usage information for this command.") private boolean help; + @ParametersDelegate protected AnalysisArguments analysisArguments = new AnalysisArguments(); @Parameter(names = {"--debug-info", "--di"}, arity = 1, @@ -137,10 +139,6 @@ public class DisassembleCommand extends DexInputCommand { super(commandAncestors); } - @Override protected void setupCommand(JCommander jc) { - jc.addObject(analysisArguments); - } - public void run() { if (help || inputList == null || inputList.isEmpty()) { usage(); diff --git a/baksmali/src/main/java/org/jf/baksmali/ListFieldOffsetsCommand.java b/baksmali/src/main/java/org/jf/baksmali/ListFieldOffsetsCommand.java index 61de071e..a241c51a 100644 --- a/baksmali/src/main/java/org/jf/baksmali/ListFieldOffsetsCommand.java +++ b/baksmali/src/main/java/org/jf/baksmali/ListFieldOffsetsCommand.java @@ -34,6 +34,7 @@ package org.jf.baksmali; import com.beust.jcommander.JCommander; import com.beust.jcommander.Parameter; import com.beust.jcommander.Parameters; +import com.beust.jcommander.ParametersDelegate; import org.jf.dexlib2.analysis.ClassPath; import org.jf.dexlib2.analysis.ClassProto; import org.jf.dexlib2.dexbacked.DexBackedDexFile; @@ -57,16 +58,13 @@ public class ListFieldOffsetsCommand extends DexInputCommand { description = "Show usage information") private boolean help; + @ParametersDelegate private AnalysisArguments analysisArguments = new AnalysisArguments(); public ListFieldOffsetsCommand(@Nonnull List<JCommander> commandAncestors) { super(commandAncestors); } - @Override protected void setupCommand(JCommander jc) { - jc.addObject(analysisArguments); - } - @Override public void run() { if (help || inputList == null || inputList.isEmpty()) { usage(); diff --git a/baksmali/src/main/java/org/jf/baksmali/ListVtablesCommand.java b/baksmali/src/main/java/org/jf/baksmali/ListVtablesCommand.java index 1a3787c1..f0d40fda 100644 --- a/baksmali/src/main/java/org/jf/baksmali/ListVtablesCommand.java +++ b/baksmali/src/main/java/org/jf/baksmali/ListVtablesCommand.java @@ -59,6 +59,7 @@ public class ListVtablesCommand extends DexInputCommand { description = "Show usage information") private boolean help; + @ParametersDelegate private AnalysisArguments analysisArguments = new AnalysisArguments(); @ParametersDelegate @@ -73,11 +74,6 @@ public class ListVtablesCommand extends DexInputCommand { super(commandAncestors); } - @Override protected void setupCommand(JCommander jc) { - jc.addObject(analysisArguments); - jc.addObject(checkPackagePrivateArgument); - } - @Override public void run() { if (help || inputList == null || inputList.isEmpty()) { usage(); |