1 19 20 package org.netbeans.lib.cvsclient.commandLine.command; 21 22 import java.io.File ; 23 24 import org.netbeans.lib.cvsclient.command.*; 25 import org.netbeans.lib.cvsclient.command.tag.*; 26 import org.netbeans.lib.cvsclient.commandLine.*; 27 28 33 public class rtag extends AbstractCommandProvider { 34 35 public String getName() { 36 return "rtag"; } 38 39 public String [] getSynonyms() { 40 return new String [] { "rt" }; } 42 43 public Command createCommand(String [] args, int index, GlobalOptions gopt, String workDir) { 44 RtagCommand command = new RtagCommand(); 45 command.setBuilder(null); 46 final String getOptString = command.getOptString(); 47 GetOpt go = new GetOpt(args, getOptString); 48 int ch = -1; 49 go.optIndexSet(index); 50 boolean usagePrint = false; 51 String arg; 52 while ((ch = go.getopt()) != go.optEOF) { 53 boolean ok = command.setCVSCommand((char)ch, go.optArgGet()); 54 if (!ok) { 55 usagePrint = true; 56 } 57 } 58 if (usagePrint) { 59 throw new IllegalArgumentException (getUsage()); 60 } 61 int argIndex = go.optIndexGet(); 62 if (argIndex < args.length) { 64 command.setTag(args[argIndex]); 65 } else { 66 throw new IllegalArgumentException (getUsage()); 67 } 68 int modulesArgsIndex = argIndex + 1; 69 if (modulesArgsIndex < args.length) { 71 String [] modulesArgs = new String [args.length - modulesArgsIndex]; 72 for (int i = modulesArgsIndex; i < args.length; i++) { 74 modulesArgs[i - modulesArgsIndex] = args[i]; 75 } 76 command.setModules(modulesArgs); 77 } 78 return command; 79 80 } 81 82 } 83 | Popular Tags |