Tag | Date | Blame | Line | Source |
---|---|---|---|---|
COMMONS_EXEC_1_1_RC1 | Fri Mar 05 03:03:14 JST 2010 | 58fa0e | 478 | /** |
COMMONS_EXEC_1_1_RC1 | Fri Mar 05 03:03:14 JST 2010 | 58fa0e | 479 | * A generic test case to print the command line arguments to 'printargs' script to solve |
COMMONS_EXEC_1_1_RC1 | Fri Mar 05 03:03:14 JST 2010 | 58fa0e | 480 | * even more command line puzzles. |
COMMONS_EXEC_1_1_RC1 | Fri Mar 05 03:03:14 JST 2010 | 58fa0e | 481 | */ |
COMMONS_EXEC_1_1_RC1 | Fri Mar 05 03:03:14 JST 2010 | 58fa0e | 482 | public void testExecuteWithComplexArguments() throws Exception { |
COMMONS_EXEC_1_1_RC1 | Fri Mar 05 03:03:14 JST 2010 | 58fa0e | 483 | CommandLine cl = new CommandLine(printArgsScript); |
COMMONS_EXEC_1_1_RC1 | Fri Mar 05 03:03:14 JST 2010 | 58fa0e | 484 | cl.addArgument("gdal_translate"); |
COMMONS_EXEC_1_1_RC1 | Fri Mar 05 03:03:14 JST 2010 | 58fa0e | 485 | cl.addArgument("HDF5:\"/home/kk/grass/data/4404.he5\"://HDFEOS/GRIDS/OMI_Column_Amount_O3/Data_Fields/ColumnAmountO3/home/kk/4.tif", false); |
COMMONS_EXEC_1_1_RC1 | Fri Mar 05 03:03:14 JST 2010 | 58fa0e | 486 | DefaultExecutor executor = new DefaultExecutor(); |
COMMONS_EXEC_1_1_RC1 | Fri Mar 05 03:03:14 JST 2010 | 58fa0e | 487 | int exitValue = executor.execute(cl); |
COMMONS_EXEC_1_1_RC1 | Fri Mar 05 03:03:14 JST 2010 | 58fa0e | 488 | assertFalse(exec.isFailure(exitValue)); |
COMMONS_EXEC_1_1_RC1 | Fri Mar 05 03:03:14 JST 2010 | 58fa0e | 489 | } |
Tag | Date | Blame | Line | Source |
---|---|---|---|---|
EXEC_1_0_0_RC1 | Sat Jul 19 04:39:05 JST 2008 | dcbad9 | 59 | StringBuffer argBuf = new StringBuffer(); |
EXEC_1_0_0_RC1 | Sat Jul 19 04:39:05 JST 2008 | dcbad9 | 61 | if (argStr == null || argStr.length() == 0) { |
EXEC_1_0_0_RC1 | Sat Jul 19 04:39:05 JST 2008 | dcbad9 | 65 | if (vars == null || vars.size() == 0) { |
EXEC_1_0_0_RC1 | Sat Jul 19 04:39:05 JST 2008 | dcbad9 | 66 | return argBuf.append(argStr); |
EXEC_1_0_0_RC1 | Sat Jul 19 05:25:50 JST 2008 | 963a84 | 163 | return arg.replace(SLASH_CHAR, File.separatorChar).replace( |
EXEC_1_0_0_RC1 | Sat Jul 19 05:25:50 JST 2008 | 963a84 | 199 | String cleanedArgument = argument.trim(); |
EXEC_1_0_0_RC1 | Sat Jul 19 05:25:50 JST 2008 | 963a84 | 201 | while(cleanedArgument.startsWith(SINGLE_QUOTE) || cleanedArgument.startsWith(DOUBLE_QUOTE)) { |
EXEC_1_0_0_RC1 | Sat Jul 19 05:25:50 JST 2008 | 963a84 | 204 | while(cleanedArgument.endsWith(SINGLE_QUOTE) || cleanedArgument.endsWith(DOUBLE_QUOTE)) { |
EXEC_1_0_0_RC1 | Sat Jul 19 05:25:50 JST 2008 | 963a84 | 208 | final StringBuffer buf = new StringBuffer(); |
EXEC_1_0_0_RC1 | Sat Jul 19 05:25:50 JST 2008 | 963a84 | 209 | if (cleanedArgument.indexOf(DOUBLE_QUOTE) > -1) { |
EXEC_1_0_0_RC1 | Sat Jul 19 05:25:50 JST 2008 | 963a84 | 217 | } else if (cleanedArgument.indexOf(SINGLE_QUOTE) > -1 |
EXEC_1_0_0_RC1 | Sat Jul 19 05:25:50 JST 2008 | 963a84 | 218 | || cleanedArgument.indexOf(" ") > -1) { |
EXEC_1_0_0_RC1 | Sat Jul 19 05:25:50 JST 2008 | 963a84 | 222 | return cleanedArgument; |
Tag | Date | Blame | Line | Source |
---|---|---|---|---|
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 49 | private static final String OS_NAME = System.getProperty("os.name") |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 50 | .toLowerCase(Locale.US); |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 52 | private static final String OS_ARCH = System.getProperty("os.arch") |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 53 | .toLowerCase(Locale.US); |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 55 | private static final String OS_VERSION = System.getProperty("os.version") |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 56 | .toLowerCase(Locale.US); |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 58 | private static final String PATH_SEP = System.getProperty("path.separator"); |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 87 | return isOs(family, null, null, null); |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 111 | return isFamily(FAMILY_UNIX); |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 115 | return isFamily(FAMILY_WINDOWS); |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 131 | return isFamily(FAMILY_OPENVMS); |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 185 | boolean retValue = false; |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 187 | if (family != null || name != null || arch != null || version != null) { |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 189 | boolean isFamily = true; |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 190 | boolean isName = true; |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 191 | boolean isArch = true; |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 192 | boolean isVersion = true; |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 194 | if (family != null) { |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 195 | if (family.equals(FAMILY_WINDOWS)) { |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 196 | isFamily = OS_NAME.indexOf(FAMILY_WINDOWS) > -1; |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 197 | } else if (family.equals(FAMILY_OS_2)) { |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 199 | } else if (family.equals(FAMILY_NETWARE)) { |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 201 | } else if (family.equals(FAMILY_DOS)) { |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 204 | } else if (family.equals(FAMILY_MAC)) { |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 205 | isFamily = OS_NAME.indexOf(FAMILY_MAC) > -1; |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 206 | } else if (family.equals(FAMILY_TANDEM)) { |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 208 | } else if (family.equals(FAMILY_UNIX)) { |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 209 | isFamily = PATH_SEP.equals(":") |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 210 | && !isFamily(FAMILY_OPENVMS) |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 211 | && (!isFamily(FAMILY_MAC) || OS_NAME.endsWith("x")); |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 212 | } else if (family.equals(FAMILY_WIN9X)) { |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 218 | } else if (family.equals(FAMILY_Z_OS)) { |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 221 | } else if (family.equals(FAMILY_OS_400)) { |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 223 | } else if (family.equals(FAMILY_OPENVMS)) { |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 224 | isFamily = OS_NAME.indexOf(FAMILY_OPENVMS) > -1; |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 231 | if (name != null) { |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 234 | if (arch != null) { |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 237 | if (version != null) { |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 240 | retValue = isFamily && isName && isArch && isVersion; |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 242 | return retValue; |
Tag | Date | Blame | Line | Source |
---|---|---|---|---|
sandbox | Fri Aug 19 13:07:50 JST 2005 | 1ef5f9 | 33 | public abstract class CommandLauncherImpl implements CommandLauncher { |
sandbox | Tue Apr 22 05:32:43 JST 2008 | 223467 | 48 | return exitValue != 0; |
Tag | Date | Blame | Line | Source |
---|---|---|---|---|
EXEC_1_0_0 | Tue Feb 24 01:03:17 JST 2009 | 7c5d81 | 37 | private final Vector arguments = new Vector(); |
sandbox | Mon Jul 10 05:32:36 JST 2006 | 13fdc8 | 107 | public CommandLine(File executable) { |
sandbox | Sat Apr 12 01:37:11 JST 2008 | 7aa110 | 108 | this.isFile=true; |
EXEC_1_0_0 | Tue Feb 24 01:03:17 JST 2009 | 7c5d81 | 109 | this.executable=getExecutable(executable.getAbsolutePath()); |
sandbox | Mon Jul 10 05:32:36 JST 2006 | 13fdc8 | 110 | } |
EXEC_1_0_0_RC1 | Sat Jul 19 05:40:44 JST 2008 | b95e06 | 121 | return StringUtils.fixFileSeparatorChar(expandArgument(executable)); |
sandbox | Wed Dec 05 07:15:42 JST 2007 | 0b6989 | 194 | return this.addArgument(argument, true); |
sandbox | Wed Dec 05 07:15:42 JST 2007 | 0b6989 | 205 | if (argument == null) { |
sandbox | Wed Dec 05 07:15:42 JST 2007 | 0b6989 | 209 | if(handleQuoting) { |
EXEC_1_0_0_RC1 | Sat Jul 19 05:23:35 JST 2008 | 43d166 | 210 | arguments.add(StringUtils.quoteArgument(argument)); |
sandbox | Wed Dec 05 07:15:42 JST 2007 | 0b6989 | 213 | arguments.add(argument); |
sandbox | Wed Dec 05 07:15:42 JST 2007 | 0b6989 | 216 | return this; |
sandbox | Sat Dec 08 01:38:27 JST 2007 | 29abee | 225 | String[] result = new String[arguments.size()]; |
sandbox | Sat Dec 08 01:38:27 JST 2007 | 29abee | 226 | result = (String[]) arguments.toArray(result); |
sandbox | Sat Dec 08 01:38:27 JST 2007 | 29abee | 227 | return this.expandArguments(result); |
sandbox | Sat Dec 08 01:38:27 JST 2007 | 29abee | 234 | return substitutionMap; |
EXEC_1_0_0_RC1 | Sat Jul 19 05:23:35 JST 2008 | 43d166 | 253 | final String[] result = new String[arguments.size() + 1]; |
EXEC_1_0_0_RC1 | Sat Jul 19 05:23:35 JST 2008 | 43d166 | 254 | result[0] = this.getExecutable(); |
EXEC_1_0_0_RC1 | Sat Jul 19 05:23:35 JST 2008 | 43d166 | 255 | System.arraycopy(getArguments(), 0, result, 1, result.length-1); |
EXEC_1_0_0_RC1 | Sat Jul 19 05:23:35 JST 2008 | 43d166 | 256 | return result; |
sandbox | Sat Dec 08 01:38:27 JST 2007 | 29abee | 298 | StringBuffer stringBuffer = StringUtils.stringSubstitution(argument, this.getSubstitutionMap(), true); |
sandbox | Sat Dec 08 01:38:27 JST 2007 | 29abee | 299 | return stringBuffer.toString(); |
sandbox | Sat Dec 08 01:38:27 JST 2007 | 29abee | 309 | String[] result = new String[arguments.length]; |
sandbox | Sat Dec 08 01:38:27 JST 2007 | 29abee | 310 | for(int i=0; i |
sandbox | Sat Dec 08 01:38:27 JST 2007 | 29abee | 311 | result[i] = this.expandArgument(arguments[i]); |
sandbox | Sat Dec 08 01:38:27 JST 2007 | 29abee | 313 | return result; |
sandbox | Wed Dec 05 07:15:42 JST 2007 | 0b6989 | 401 | if (executable == null) { |
sandbox | Wed Dec 05 07:15:42 JST 2007 | 0b6989 | 403 | } else if(executable.trim().length() == 0) { |
EXEC_1_0_0 | Tue Feb 24 01:03:17 JST 2009 | 7c5d81 | 406 | return StringUtils.fixFileSeparatorChar(executable); |
Tag | Date | Blame | Line | Source |
---|---|---|---|---|
sandbox | Fri Sep 23 23:09:14 JST 2005 | 245019 | 40 | if (OS.isFamilyOpenVms()) { |
sandbox | Fri Sep 23 23:09:14 JST 2005 | 245019 | 43 | launcher = new Java13CommandLauncher(); |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 46 | return launcher; |
Tag | Date | Blame | Line | Source |
---|---|---|---|---|
sandbox | Sun Jan 07 00:42:23 JST 2007 | d4c6f1 | 45 | public class DefaultProcessingEnvironment { |
sandbox | Sun Jan 07 00:42:23 JST 2007 | d4c6f1 | 48 | private static final String LINE_SEPARATOR = System.getProperty("line.separator"); |
Tag | Date | Blame | Line | Source |
---|---|---|---|---|
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 59 | final InputStream input) { |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 61 | this.out = out; |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 62 | this.err = err; |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 63 | this.input = input; |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 64 | } |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 75 | this(out, err, null); |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 76 | } |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 92 | this(System.out, System.err); |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 93 | } |
EXEC_1_0_0 | Mon Feb 02 06:18:31 JST 2009 | 6ad70c | 103 | if (out != null) { |
EXEC_1_0_0 | Mon Feb 02 06:18:31 JST 2009 | 6ad70c | 104 | createProcessOutputPump(is, out); |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 106 | } |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 116 | if (err != null) { |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 117 | createProcessErrorPump(is, err); |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 119 | } |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 129 | if (input != null) { |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 136 | os.close(); |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 140 | } |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 142 | } |
EXEC_1_0_0 | Mon Feb 02 06:18:31 JST 2009 | 6ad70c | 148 | if (outputThread != null) { |
EXEC_1_0_0 | Mon Feb 02 06:18:31 JST 2009 | 6ad70c | 149 | outputThread.start(); |
EXEC_1_0_0 | Mon Feb 02 06:18:31 JST 2009 | 6ad70c | 151 | if (errorThread != null) { |
EXEC_1_0_0 | Mon Feb 02 06:18:31 JST 2009 | 6ad70c | 152 | errorThread.start(); |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 154 | if (inputThread != null) { |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 157 | } |
EXEC_1_0_0 | Mon Feb 02 06:18:31 JST 2009 | 6ad70c | 164 | if (outputThread != null) { |
EXEC_1_0_0 | Mon Feb 02 06:18:31 JST 2009 | 6ad70c | 166 | outputThread.join(); |
EXEC_1_0_0 | Mon Feb 02 06:18:31 JST 2009 | 6ad70c | 167 | outputThread = null; |
EXEC_1_0_0 | Mon Feb 02 06:18:31 JST 2009 | 6ad70c | 170 | } |
EXEC_1_0_0 | Mon Feb 02 06:18:31 JST 2009 | 6ad70c | 173 | if (errorThread != null) { |
EXEC_1_0_0 | Mon Feb 02 06:18:31 JST 2009 | 6ad70c | 175 | errorThread.join(); |
EXEC_1_0_0 | Mon Feb 02 06:18:31 JST 2009 | 6ad70c | 176 | errorThread = null; |
EXEC_1_0_0 | Mon Feb 02 06:18:31 JST 2009 | 6ad70c | 179 | } |
EXEC_1_0_1_RC1 | Fri May 01 06:57:03 JST 2009 | ebbbf4 | 182 | if (inputStreamPumper != null) { |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 186 | if (inputThread != null) { |
EXEC_1_0_0 | Mon Feb 02 06:18:31 JST 2009 | 6ad70c | 195 | if (err != null && err != out) { |
EXEC_1_0_0 | Mon Feb 02 06:18:31 JST 2009 | 6ad70c | 197 | err.flush(); |
EXEC_1_0_0 | Mon Feb 02 06:18:31 JST 2009 | 6ad70c | 201 | } |
EXEC_1_0_0 | Mon Feb 02 06:18:31 JST 2009 | 6ad70c | 204 | if (out != null) { |
EXEC_1_0_0 | Mon Feb 02 06:18:31 JST 2009 | 6ad70c | 206 | out.flush(); |
EXEC_1_0_0 | Mon Feb 02 06:18:31 JST 2009 | 6ad70c | 210 | } |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 212 | } |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 242 | outputThread = createPump(is, os); |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 243 | } |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 255 | errorThread = createPump(is, os); |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 256 | } |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 267 | return createPump(is, os, false); |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 281 | final Thread result = new Thread(new StreamPumper(is, os, |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 283 | result.setDaemon(true); |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 284 | return result; |
Tag | Date | Blame | Line | Source |
---|---|---|---|---|
sandbox | Fri Nov 30 08:20:34 JST 2007 | a9c1a6 | 69 | public DefaultExecutor() { |
sandbox | Fri Nov 30 08:20:34 JST 2007 | a9c1a6 | 70 | this.streamHandler = new PumpStreamHandler(); |
sandbox | Fri Nov 30 08:20:34 JST 2007 | a9c1a6 | 71 | this.launcher = CommandLauncherFactory.createVMLauncher(); |
sandbox | Fri Nov 30 08:20:34 JST 2007 | a9c1a6 | 72 | this.exitValues = new int[0]; |
sandbox | Fri Nov 30 08:20:34 JST 2007 | a9c1a6 | 73 | } |
sandbox | Thu May 25 05:29:38 JST 2006 | 33fe5d | 86 | this.streamHandler = streamHandler; |
sandbox | Thu May 25 05:29:38 JST 2006 | 33fe5d | 87 | } |
sandbox | Wed Jan 02 07:50:59 JST 2008 | aa0cd6 | 107 | return this.processDestroyer; |
sandbox | Thu May 25 05:29:38 JST 2006 | 33fe5d | 136 | return execute(command, (Map) null); |
sandbox | Mon Jul 10 05:32:36 JST 2006 | 13fdc8 | 145 | if (workingDirectory != null && !workingDirectory.exists()) { |
sandbox | Mon Jul 10 05:32:36 JST 2006 | 13fdc8 | 149 | return executeInternal(command, environment, workingDirectory, streamHandler); |
sandbox | Tue Apr 22 05:32:43 JST 2008 | 223467 | 207 | if(this.exitValues == null) { |
sandbox | Tue Apr 22 05:32:43 JST 2008 | 223467 | 210 | else if(this.exitValues.length == 0) { |
sandbox | Tue Apr 22 05:32:43 JST 2008 | 223467 | 211 | return this.launcher.isFailure(exitValue); |
sandbox | Thu Apr 24 05:42:39 JST 2008 | 5e9951 | 239 | if (this.launcher == null) { |
sandbox | Fri Nov 30 08:20:34 JST 2007 | a9c1a6 | 243 | if (dir != null && !dir.exists()) { |
sandbox | Thu Apr 24 05:42:39 JST 2008 | 5e9951 | 246 | return this.launcher.exec(command, env, dir); |
sandbox | Thu Jan 24 06:22:59 JST 2008 | c9e47e | 261 | IOException caught = null; |
sandbox | Thu Jan 03 03:20:58 JST 2008 | 6f2747 | 264 | process.getInputStream().close(); |
sandbox | Thu Jan 24 06:22:59 JST 2008 | c9e47e | 268 | } |
sandbox | Thu Jan 03 03:20:58 JST 2008 | 6f2747 | 271 | process.getOutputStream().close(); |
sandbox | Thu Jan 24 06:22:59 JST 2008 | c9e47e | 275 | } |
sandbox | Thu Jan 03 03:20:58 JST 2008 | 6f2747 | 278 | process.getErrorStream().close(); |
sandbox | Thu Jan 24 06:22:59 JST 2008 | c9e47e | 282 | } |
sandbox | Thu Jan 24 06:22:59 JST 2008 | c9e47e | 284 | if(caught != null) { |
sandbox | Thu Jan 03 03:20:58 JST 2008 | 6f2747 | 287 | } |
sandbox | Thu Jan 03 03:20:58 JST 2008 | 6f2747 | 302 | final Process process = this.launch(command, environment, dir); |
sandbox | Fri Nov 30 08:20:34 JST 2007 | a9c1a6 | 305 | streams.setProcessInputStream(process.getOutputStream()); |
sandbox | Fri Nov 30 08:20:34 JST 2007 | a9c1a6 | 306 | streams.setProcessOutputStream(process.getInputStream()); |
sandbox | Fri Nov 30 08:20:34 JST 2007 | a9c1a6 | 307 | streams.setProcessErrorStream(process.getErrorStream()); |
sandbox | Fri Nov 30 08:20:34 JST 2007 | a9c1a6 | 311 | } |
sandbox | Fri Nov 30 08:20:34 JST 2007 | a9c1a6 | 313 | streams.start(); |
sandbox | Wed Jan 02 07:50:59 JST 2008 | aa0cd6 | 317 | if(this.getProcessDestroyer() != null) { |
sandbox | Fri Nov 30 08:20:34 JST 2007 | a9c1a6 | 321 | if (watchdog != null) { |
sandbox | Fri Nov 30 08:20:34 JST 2007 | a9c1a6 | 324 | int exitValue = Executor.INVALID_EXITVALUE; |
sandbox | Fri Nov 30 08:20:34 JST 2007 | a9c1a6 | 326 | exitValue = process.waitFor(); |
sandbox | Fri Nov 30 08:20:34 JST 2007 | a9c1a6 | 329 | } |
sandbox | Fri Nov 30 08:20:34 JST 2007 | a9c1a6 | 331 | if (watchdog != null) { |
sandbox | Fri Nov 30 08:20:34 JST 2007 | a9c1a6 | 334 | streams.stop(); |
sandbox | Fri Nov 30 08:20:34 JST 2007 | a9c1a6 | 335 | closeStreams(process); |
sandbox | Fri Nov 30 08:20:34 JST 2007 | a9c1a6 | 337 | if (watchdog != null) { |
sandbox | Tue Apr 22 05:32:43 JST 2008 | 223467 | 345 | if(this.isFailure(exitValue)) { |
sandbox | Fri Nov 30 08:20:34 JST 2007 | a9c1a6 | 349 | return exitValue; |
sandbox | Wed Jan 02 07:50:59 JST 2008 | aa0cd6 | 352 | if(this.getProcessDestroyer() != null) { |
sandbox | Wed Jan 02 07:50:59 JST 2008 | aa0cd6 | 353 | this.getProcessDestroyer().remove(process); |
Tag | Date | Blame | Line | Source |
---|---|---|---|---|
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 58 | final boolean closeWhenExhausted) { |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 59 | this.is = is; |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 60 | this.os = os; |
sandbox | Sat Feb 09 02:02:37 JST 2008 | 76aa29 | 61 | this.size = DEFAULT_SIZE; |
sandbox | Sat Feb 09 02:02:37 JST 2008 | 76aa29 | 62 | this.closeWhenExhausted = closeWhenExhausted; |
sandbox | Sat Feb 09 02:02:37 JST 2008 | 76aa29 | 63 | } |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 96 | synchronized (this) { |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 98 | finished = false; |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 99 | } |
sandbox | Sat Feb 09 02:02:37 JST 2008 | 76aa29 | 101 | final byte[] buf = new byte[this.size]; |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 105 | while ((length = is.read(buf)) > 0) { |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 106 | os.write(buf, 0, length); |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 112 | if (closeWhenExhausted) { |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 120 | synchronized (this) { |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 121 | finished = true; |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 122 | notifyAll(); |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 123 | } |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 124 | } |
sandbox | Fri Aug 05 21:21:46 JST 2005 | 94b6fa | 125 | } |
Tag | Date | Blame | Line | Source |
---|---|---|---|---|
sandbox | Sun Jan 29 08:15:24 JST 2006 | 0d1dbf | 36 | if (OS.isFamilyOpenVms()) { |
sandbox | Sun Jan 29 08:15:24 JST 2006 | 0d1dbf | 39 | procEnvironment = new DefaultProcessingEnvironment(); |
sandbox | Sun Jan 29 08:15:24 JST 2006 | 0d1dbf | 41 | } |
EXEC_1_0_0_RC1 | Mon Nov 17 08:07:06 JST 2008 | 765387 | 58 | if (environment == null) { |
sandbox | Sun Jan 29 08:15:24 JST 2006 | 0d1dbf | 59 | return null; |
Tag | Date | Blame | Line | Source |
---|---|---|---|---|
sandbox | Fri Dec 07 07:32:34 JST 2007 | a9f0f5 | 37 | public Java13CommandLauncher() { |
sandbox | Fri Aug 19 13:07:50 JST 2005 | 1ef5f9 | 38 | } |
EXEC_1_0_0_RC1 | Sun Dec 14 05:48:35 JST 2008 | 5b6a2a | 56 | String[] envVars = EnvironmentUtils.toStrings(env); |
sandbox | Sun Mar 12 21:07:59 JST 2006 | a3538e | 58 | return Runtime.getRuntime().exec(cmd.toStrings(), |