1 19 20 package ca.mcgill.sable.soot.launching; 21 22 import org.eclipse.jface.action.IAction; 23 import java.util.*; 24 27 public class DavaDecompileAppFileLauncher extends SootFileLauncher { 28 29 32 public void run(IAction action) { 33 super.run(action); 34 super.handleMultipleFiles(); 35 36 if (isDoNotContinue()) return; 37 setCmd(); 38 runSootDirectly(); 39 runFinish(); 40 41 } 42 43 47 private void setCmd() { 48 49 ArrayList commands = new ArrayList(); 50 commands.add("--"+LaunchCommands.SOOT_CLASSPATH); 51 commands.add(getClasspathAppend()); 52 commands.add("--"+LaunchCommands.OUTPUT_DIR); 53 commands.add(getOutputLocation()); 54 55 getSootCommandList().addSingleOpt("--"+LaunchCommands.KEEP_LINE_NUMBER); 57 getSootCommandList().addSingleOpt("--"+LaunchCommands.XML_ATTRIBUTES); 58 if (isExtraCmd()) { 59 getSootCommandList().addSingleOpt("--"+getExtraCmd()); 60 } 61 62 if (isSrcPrec()) { 63 getSootCommandList().addDoubleOpt("--"+LaunchCommands.SRC_PREC, getSrcPrec()); 64 } 65 66 getSootCommandList().addSingleOpt("--"+LaunchCommands.APP); 67 getSootCommandList().addSingleOpt("--"+LaunchCommands.DAVA); 68 69 Iterator it = getToProcessList().iterator(); 70 while(it.hasNext()){ 71 commands.add((String )it.next()); 72 } 73 getSootCommandList().addSingleOpt(commands); 74 } 75 } 76 | Popular Tags |