Test Blame

src/test/java/org/apache/commons/exec/DefaultExecutorTest.java
TagDateBlameLineSource
  latest    Wed Jan 06 18:37:15 JST 2016    42eb77  403
    /**
  latest    Wed Jan 06 18:37:15 JST 2016    42eb77  404
     * Try to start an non-existing application where the exception is caught/processed
  latest    Wed Jan 06 18:37:15 JST 2016    42eb77  405
     * by the result handler. The watchdog in notified to avoid waiting for the
  latest    Wed Jan 06 18:37:15 JST 2016    42eb77  406
     * process infinitely.
  COMMONS_EXEC_1_1_RC1    Tue Jun 01 06:33:22 JST 2010    616599  407
     *
  latest    Wed Jan 06 18:37:15 JST 2016    42eb77  408
     * @see EXEC-71
  sandbox    Fri Nov 30 08:24:30 JST 2007    b9993b  409
     */
  1.3-RC1    Fri Jan 10 02:54:51 JST 2014    2b1e18  410
    @Test
  latest    Wed Jan 06 18:37:15 JST 2016    42eb77  411
    public void testExecuteAsyncNonExistingApplicationWithWatchdog() throws Exception {
  1.2-RC1    Sat Dec 28 23:20:34 JST 2013    c1410e  412
        final CommandLine cl = new CommandLine(nonExistingTestScript);
  latest    Wed Jan 06 18:37:15 JST 2016    42eb77  413
        final DefaultExecuteResultHandler resultHandler = new DefaultExecuteResultHandler() {
  latest    Wed Jan 06 18:37:15 JST 2016    42eb77  414
            @Override
  latest    Wed Jan 06 18:37:15 JST 2016    42eb77  415
            public void onProcessFailed(ExecuteException e) {
  latest    Wed Jan 06 18:37:15 JST 2016    42eb77  416
                System.out.println("Process did not stop gracefully, had exception '" + e.getMessage() + "' while executing process");
  latest    Wed Jan 06 18:37:15 JST 2016    42eb77  417
                super.onProcessFailed(e);
  latest    Wed Jan 06 18:37:15 JST 2016    42eb77  418
            }
  latest    Wed Jan 06 18:37:15 JST 2016    42eb77  419
        };
  latest    Wed Jan 06 18:37:15 JST 2016    42eb77  420
        final DefaultExecutor executor = new DefaultExecutor();
  latest    Wed Jan 06 18:37:15 JST 2016    42eb77  421
        executor.setWatchdog(new ExecuteWatchdog(ExecuteWatchdog.INFINITE_TIMEOUT));
  latest    Wed Jan 06 18:37:15 JST 2016    42eb77  422
  latest    Wed Jan 06 18:37:15 JST 2016    42eb77  423
        executor.execute(cl, resultHandler);
  latest    Wed Jan 06 18:37:15 JST 2016    42eb77  424
        resultHandler.waitFor();
  latest    Wed Jan 06 18:37:15 JST 2016    42eb77  425
  latest    Wed Jan 06 18:37:15 JST 2016    42eb77  426
        assertTrue(executor.isFailure(resultHandler.getExitValue()));
  latest    Wed Jan 06 18:37:15 JST 2016    42eb77  427
        assertNotNull(resultHandler.getException());
  latest    Wed Jan 06 18:37:15 JST 2016    42eb77  428
        assertFalse(executor.getWatchdog().isWatching());
  latest    Wed Jan 06 18:37:15 JST 2016    42eb77  429
        assertFalse(executor.getWatchdog().killedProcess());
  latest    Wed Jan 06 18:37:15 JST 2016    42eb77  430
        executor.getWatchdog().destroyProcess();
  sandbox    Fri Nov 30 08:24:30 JST 2007    b9993b  431
    }

Found Source Blame

src/main/java/org/apache/commons/exec/util/StringUtils.java
TagDateBlameLineSource
  1.2-RC1    Sat Dec 28 23:20:34 JST 2013    c1410e  72
        final StringBuffer argBuf = new StringBuffer();
  EXEC_1_0_0_RC1    Sat Jul 19 04:39:05 JST 2008    dcbad9  74
        if (argStr == null || argStr.length() == 0) {
  EXEC_1_0_0_RC1    Sat Jul 19 04:39:05 JST 2008    dcbad9  78
        if (vars == null || vars.size() == 0) {
  EXEC_1_0_0_RC1    Sat Jul 19 04:39:05 JST 2008    dcbad9  79
            return argBuf.append(argStr);
  EXEC_1_0_0_RC1    Sat Jul 19 05:25:50 JST 2008    963a84  188
        return arg.replace(SLASH_CHAR, File.separatorChar).replace(
src/main/java/org/apache/commons/exec/DefaultExecutor.java
TagDateBlameLineSource
  1.2-RC1    Mon Feb 21 16:30:50 JST 2011    c266aa  195
        {
  sandbox    Mon Jul 10 05:32:36 JST 2006    13fdc8  198
                int exitValue = Executor.INVALID_EXITVALUE;
  1.2-RC1    Sat Dec 28 23:35:41 JST 2013    7fc828  204
                } catch (final Exception e) {
  sandbox    Mon Jul 10 05:32:36 JST 2006    13fdc8  205
                    handler.onProcessFailed(new ExecuteException("Execution failed", exitValue, e));
  sandbox    Mon Jul 10 05:32:36 JST 2006    13fdc8  207
            }
src/main/java/org/apache/commons/exec/ExecuteWatchdog.java
TagDateBlameLineSource
  sandbox    Fri Aug 05 21:21:46 JST 2005    94b6fa  83
    public ExecuteWatchdog(final long timeout) {
  sandbox    Tue Dec 04 21:11:05 JST 2007    e90575  84
        this.killedProcess = false;
  sandbox    Tue Dec 04 21:11:05 JST 2007    e90575  85
        this.watch = false;
  1.2-RC1    Sat Dec 28 23:18:57 JST 2013    01bfe9  86
        this.hasWatchdog = timeout != INFINITE_TIMEOUT;
  1.2-RC1    Wed Nov 30 16:57:29 JST 2011    5166ed  87
        this.processStarted = false;
  1.2-RC1    Sat Dec 28 23:35:41 JST 2013    7fc828  88
        if (this.hasWatchdog) {
  COMMONS_EXEC_1_1_RC1    Tue Jun 01 06:33:22 JST 2010    616599  93
            this.watchdog = null;
  sandbox    Fri Aug 05 21:21:46 JST 2005    94b6fa  95
    }
  1.2-RC1    Sat Dec 28 23:35:41 JST 2013    7fc828  141
        if (hasWatchdog) {
  sandbox    Fri Aug 05 21:21:46 JST 2005    94b6fa  144
        watch = false;
  sandbox    Fri Aug 05 21:21:46 JST 2005    94b6fa  145
        process = null;
  sandbox    Fri Aug 05 21:21:46 JST 2005    94b6fa  146
    }
  1.2-RC1    Wed Nov 30 16:57:29 JST 2011    5166ed  152
        ensureStarted();
  COMMONS_EXEC_1_1_RC1    Tue Jun 01 06:33:22 JST 2010    616599  153
        this.timeoutOccured(null);
  sandbox    Tue Dec 04 21:11:05 JST 2007    e90575  154
        this.stop();
  sandbox    Tue Dec 04 21:11:05 JST 2007    e90575  155
    }
  1.2-RC1    Sat Dec 28 23:35:41 JST 2013    7fc828  165
                if (process != null) {
  sandbox    Fri Aug 05 21:21:46 JST 2005    94b6fa  175
            }
  sandbox    Fri Aug 05 21:21:46 JST 2005    94b6fa  180
            cleanUp();
  sandbox    Fri Aug 05 21:21:46 JST 2005    94b6fa  181
        }
  sandbox    Fri Aug 05 21:21:46 JST 2005    94b6fa  182
    }
  1.2-RC1    Wed Nov 30 16:57:29 JST 2011    5166ed  208
        ensureStarted();
  sandbox    Fri Aug 05 21:21:46 JST 2005    94b6fa  209
        return watch;
  sandbox    Fri Aug 05 21:21:46 JST 2005    94b6fa  219
        return killedProcess;
  sandbox    Tue Dec 04 21:11:05 JST 2007    e90575  226
        watch = false;
  sandbox    Tue Dec 04 21:11:05 JST 2007    e90575  227
        process = null;
  1.2-RC1    Wed Nov 30 16:57:29 JST 2011    5166ed  228
    }
  1.2-RC1    Wed Nov 30 16:57:29 JST 2011    5166ed  231
        processStarted = false;
  1.2-RC1    Wed Nov 30 16:57:29 JST 2011    5166ed  232
    }
  1.2-RC1    Wed Nov 30 16:57:29 JST 2011    5166ed  247
    }
src/main/java/org/apache/commons/exec/launcher/CommandLauncherImpl.java
TagDateBlameLineSource
  sandbox    Fri Aug 19 13:07:50 JST 2005    1ef5f9  35
public abstract class CommandLauncherImpl implements CommandLauncher {
  sandbox    Tue Apr 22 05:32:43 JST 2008    223467  50
        return exitValue != 0;
src/main/java/org/apache/commons/exec/environment/DefaultProcessingEnvironment.java
TagDateBlameLineSource
  sandbox    Sun Jan 07 00:42:23 JST 2007    d4c6f1  39
public class DefaultProcessingEnvironment {
src/main/java/org/apache/commons/exec/DefaultExecutor.java
TagDateBlameLineSource
  sandbox    Fri Nov 30 08:20:34 JST 2007    a9c1a6  84
    public DefaultExecutor() {
  sandbox    Fri Nov 30 08:20:34 JST 2007    a9c1a6  85
        this.streamHandler = new PumpStreamHandler();
  sandbox    Fri Nov 30 08:20:34 JST 2007    a9c1a6  86
        this.launcher = CommandLauncherFactory.createVMLauncher();
  sandbox    Fri Nov 30 08:20:34 JST 2007    a9c1a6  87
        this.exitValues = new int[0];
  COMMONS_EXEC_1_1_RC1    Fri Aug 13 20:08:38 JST 2010    189459  88
        this.workingDirectory = new File(".");
  1.2-RC1    Tue Oct 11 06:33:07 JST 2011    6e795c  89
        this.exceptionCaught = null;
  sandbox    Fri Nov 30 08:20:34 JST 2007    a9c1a6  90
    }
  sandbox    Thu May 25 05:29:38 JST 2006    33fe5d  103
        this.streamHandler = streamHandler;
  sandbox    Thu May 25 05:29:38 JST 2006    33fe5d  104
    }
  sandbox    Thu May 25 05:29:38 JST 2006    33fe5d  110
        return watchdog;
  sandbox    Thu Mar 15 20:56:12 JST 2007    45264b  117
        this.watchdog = watchDog;
  sandbox    Thu May 25 05:29:38 JST 2006    33fe5d  118
    }
  sandbox    Mon Jul 10 05:32:36 JST 2006    13fdc8  162
        if (workingDirectory != null && !workingDirectory.exists()) {
  sandbox    Mon Jul 10 05:32:36 JST 2006    13fdc8  176
        execute(command, null, handler);
  sandbox    Thu May 25 05:29:38 JST 2006    33fe5d  177
    }
  sandbox    Mon Jul 10 05:32:36 JST 2006    13fdc8  186
        if (workingDirectory != null && !workingDirectory.exists()) {
  1.2-RC1    Wed Nov 30 16:57:29 JST 2011    5166ed  190
        if (watchdog != null) {
  1.2-RC1    Wed Nov 30 16:57:29 JST 2011    5166ed  191
            watchdog.setProcessNotStarted();
  1.2-RC1    Sat Dec 28 23:20:34 JST 2013    c1410e  194
        final Runnable runnable = new Runnable()
  1.2-RC1    Mon Feb 21 16:30:50 JST 2011    c266aa  210
        this.executorThread = createThread(runnable, "Exec Default Executor");
  COMMONS_EXEC_1_1_RC1    Sun Aug 15 04:31:45 JST 2010    e33d95  211
        getExecutorThread().start();
  COMMONS_EXEC_1_1_RC1    Sun Aug 15 04:31:45 JST 2010    e33d95  212
    }
  1.2-RC1    Sat Dec 28 23:35:41 JST 2013    7fc828  228
        if (this.exitValues == null) {
  1.2-RC1    Sat Dec 28 23:35:41 JST 2013    7fc828  231
        else if (this.exitValues.length == 0) {
  sandbox    Tue Apr 22 05:32:43 JST 2008    223467  232
            return this.launcher.isFailure(exitValue);
  1.2-RC1    Mon Feb 21 16:30:50 JST 2011    c266aa  253
        return new Thread(runnable, name);
  sandbox    Thu Apr 24 05:42:39 JST 2008    5e9951  272
        if (this.launcher == null) {
  sandbox    Fri Nov 30 08:20:34 JST 2007    a9c1a6  276
        if (dir != null && !dir.exists()) {
  COMMONS_EXEC_1_1_RC1    Sun Aug 15 04:31:45 JST 2010    e33d95  288
        return executorThread;
src/main/java/org/apache/commons/exec/environment/EnvironmentUtils.java
TagDateBlameLineSource
  1.3-RC1    Sat Jan 11 01:11:40 JST 2014    c01912  41
            PROCESSING_ENVIRONMENT_IMPLEMENTATION = new DefaultProcessingEnvironment();
  1.3-RC1    Sat Jan 11 01:11:40 JST 2014    c01912  43
    }
  EXEC_1_0_0_RC1    Mon Nov 17 08:07:06 JST 2008    765387  60
        if (environment == null) {
  sandbox    Sun Jan 29 08:15:24 JST 2006    0d1dbf  61
            return null;
src/main/java/org/apache/commons/exec/PumpStreamHandler.java
TagDateBlameLineSource
  1.2-RC1    Tue Oct 11 06:33:07 JST 2011    6e795c  57
    private IOException caught = null;
  COMMONS_EXEC_1_1_RC1    Fri Aug 13 03:08:25 JST 2010    527529  63
        this(System.out, System.err);
  sandbox    Fri Aug 05 21:21:46 JST 2005    94b6fa  64
    }
  sandbox    Fri Aug 05 21:21:46 JST 2005    94b6fa  82
        this(out, err, null);
  sandbox    Fri Aug 05 21:21:46 JST 2005    94b6fa  83
    }
  1.2-RC1    Tue Oct 11 06:33:07 JST 2011    6e795c  92
    public PumpStreamHandler(final OutputStream out, final OutputStream err, final InputStream input) {
  COMMONS_EXEC_1_1_RC1    Fri Aug 13 03:08:25 JST 2010    527529  93
        this.out = out;
  COMMONS_EXEC_1_1_RC1    Fri Aug 13 03:08:25 JST 2010    527529  94
        this.err = err;
  COMMONS_EXEC_1_1_RC1    Fri Aug 13 03:08:25 JST 2010    527529  95
        this.input = input;
  sandbox    Fri Aug 05 21:21:46 JST 2005    94b6fa  96
    }
src/main/java/org/apache/commons/exec/ExecuteException.java
TagDateBlameLineSource
  sandbox    Sun Jan 29 09:15:04 JST 2006    801c0e  68
        super(message + " (Exit value: " + exitValue + ". Caused by " + cause + ")");
  sandbox    Fri Aug 05 21:21:46 JST 2005    94b6fa  69
        this.cause = cause; // Two-argument version requires JDK 1.4 or later
  sandbox    Sun Jan 29 09:15:04 JST 2006    801c0e  70
        this.exitValue = exitValue;
  sandbox    Fri Aug 05 21:21:46 JST 2005    94b6fa  71
    }
  1.3-RC1    Fri Jan 10 23:35:24 JST 2014    658a54  86
        return exitValue;
src/main/java/org/apache/commons/exec/launcher/CommandLauncherFactory.java
TagDateBlameLineSource
  sandbox    Fri Sep 23 23:09:14 JST 2005    245019  42
        if (OS.isFamilyOpenVms()) {
  sandbox    Fri Sep 23 23:09:14 JST 2005    245019  45
            launcher = new Java13CommandLauncher();
  sandbox    Fri Aug 05 21:21:46 JST 2005    94b6fa  48
        return launcher;
src/main/java/org/apache/commons/exec/CommandLine.java
TagDateBlameLineSource
  1.3-RC1    Sat Jan 11 20:49:27 JST 2014    594812  42
    private final Vector arguments = new Vector();
  1.2-RC1    Sat Dec 28 23:20:34 JST 2013    c1410e  112
    public CommandLine(final File executable) {
  sandbox    Sat Apr 12 01:37:11 JST 2008    7aa110  113
        this.isFile=true;
  1.3-RC1    Thu Jul 24 20:52:06 JST 2014    0bf316  114
        this.executable=toCleanExecutable(executable.getAbsolutePath());
  sandbox    Mon Jul 10 05:32:36 JST 2006    13fdc8  115
    }
  EXEC_1_0_0_RC1    Sat Jul 19 05:40:44 JST 2008    b95e06  150
        return StringUtils.fixFileSeparatorChar(expandArgument(executable));
  1.2-RC1    Sat Dec 28 23:20:34 JST 2013    c1410e  264
        final String[] result = new String[arguments.size()];
  1.2-RC1    Sat Dec 28 23:35:41 JST 2013    7fc828  266
        for (int i=0; i
  COMMONS_EXEC_1_1_RC1    Wed Sep 22 04:11:01 JST 2010    351ae2  272
        return result;
  sandbox    Sat Dec 08 01:38:27 JST 2007    29abee  279
        return substitutionMap;
  EXEC_1_0_0_RC1    Sat Jul 19 05:23:35 JST 2008    43d166  298
        final String[] result = new String[arguments.size() + 1];
  EXEC_1_0_0_RC1    Sat Jul 19 05:23:35 JST 2008    43d166  299
        result[0] = this.getExecutable();
  EXEC_1_0_0_RC1    Sat Jul 19 05:23:35 JST 2008    43d166  300
        System.arraycopy(getArguments(), 0, result, 1, result.length-1);
  EXEC_1_0_0_RC1    Sat Jul 19 05:23:35 JST 2008    43d166  301
        return result;
  1.2-RC1    Sat Dec 28 23:20:34 JST 2013    c1410e  325
        final StringBuffer stringBuffer = StringUtils.stringSubstitution(argument, this.getSubstitutionMap(), true);
  sandbox    Sat Dec 08 01:38:27 JST 2007    29abee  326
        return stringBuffer.toString();
  1.3-RC1    Thu Jul 24 20:52:06 JST 2014    0bf316  412
        if (dirtyExecutable == null) {
  1.3-RC1    Thu Jul 24 20:52:06 JST 2014    0bf316  414
        } else if (dirtyExecutable.trim().length() == 0) {
  1.3-RC1    Thu Jul 24 20:52:06 JST 2014    0bf316  417
            return StringUtils.fixFileSeparatorChar(dirtyExecutable);
src/main/java/org/apache/commons/exec/DefaultExecuteResultHandler.java
TagDateBlameLineSource
  COMMONS_EXEC_1_1_RC1    Tue Sep 21 04:19:18 JST 2010    024ea3  44
    public DefaultExecuteResultHandler() {
  COMMONS_EXEC_1_1_RC1    Tue Sep 21 04:19:18 JST 2010    024ea3  45
        this.hasResult = false;
  COMMONS_EXEC_1_1_RC1    Tue Sep 21 04:19:18 JST 2010    024ea3  46
        this.exitValue = Executor.INVALID_EXITVALUE;
  COMMONS_EXEC_1_1_RC1    Tue Sep 21 04:19:18 JST 2010    024ea3  47
    }
  COMMONS_EXEC_1_1_RC1    Tue Sep 21 04:19:18 JST 2010    024ea3  62
        this.exitValue = e.getExitValue();            
  sandbox    Thu May 25 05:29:38 JST 2006    33fe5d  63
        this.exception = e;
  COMMONS_EXEC_1_1_RC1    Fri Jun 04 17:53:38 JST 2010    bc7ca7  64
        this.hasResult = true;
  sandbox    Thu May 25 05:29:38 JST 2006    33fe5d  65
    }
  1.2-RC1    Sat Dec 28 23:35:41 JST 2013    7fc828  75
        if (!hasResult) {
  sandbox    Thu May 25 05:29:38 JST 2006    33fe5d  79
        return exception;
  1.2-RC1    Sat Dec 28 23:35:41 JST 2013    7fc828  90
        if (!hasResult) {
  sandbox    Thu May 25 05:29:38 JST 2006    33fe5d  94
        return exitValue;
  COMMONS_EXEC_1_1_RC1    Fri Jun 04 17:53:38 JST 2010    bc7ca7  103
        return hasResult;
  COMMONS_EXEC_1_1_RC1    Tue Sep 21 04:19:18 JST 2010    024ea3  120
        while (!hasResult()) {
  COMMONS_EXEC_1_1_RC1    Fri Aug 13 01:18:02 JST 2010    5e11af  121
            Thread.sleep(SLEEP_TIME_MS);
  COMMONS_EXEC_1_1_RC1    Tue Sep 21 04:19:18 JST 2010    024ea3  123
    }
src/main/java/org/apache/commons/exec/launcher/Java13CommandLauncher.java
TagDateBlameLineSource
  sandbox    Fri Dec 07 07:32:34 JST 2007    a9f0f5  39
    public Java13CommandLauncher() {
  1.3-RC1    Fri Jan 10 01:22:43 JST 2014    434ab3  40
    }
  1.3-RC1    Fri Jan 10 01:22:43 JST 2014    434ab3  59
        final String[] envVars = EnvironmentUtils.toStrings(env);
src/main/java/org/apache/commons/exec/OS.java
TagDateBlameLineSource
  sandbox    Fri Aug 05 21:21:46 JST 2005    94b6fa  51
    private static final String OS_NAME = System.getProperty("os.name")
  sandbox    Fri Aug 05 21:21:46 JST 2005    94b6fa  52
            .toLowerCase(Locale.US);
  sandbox    Fri Aug 05 21:21:46 JST 2005    94b6fa  54
    private static final String OS_ARCH = System.getProperty("os.arch")
  sandbox    Fri Aug 05 21:21:46 JST 2005    94b6fa  55
            .toLowerCase(Locale.US);
  sandbox    Fri Aug 05 21:21:46 JST 2005    94b6fa  57
    private static final String OS_VERSION = System.getProperty("os.version")
  sandbox    Fri Aug 05 21:21:46 JST 2005    94b6fa  58
            .toLowerCase(Locale.US);
  sandbox    Fri Aug 05 21:21:46 JST 2005    94b6fa  60
    private static final String PATH_SEP = System.getProperty("path.separator");
  sandbox    Fri Aug 05 21:21:46 JST 2005    94b6fa  89
        return isOs(family, null, null, null);
  sandbox    Fri Aug 05 21:21:46 JST 2005    94b6fa  113
        return isFamily(FAMILY_UNIX);
  sandbox    Fri Aug 05 21:21:46 JST 2005    94b6fa  117
        return isFamily(FAMILY_WINDOWS);
  sandbox    Fri Aug 05 21:21:46 JST 2005    94b6fa  133
        return isFamily(FAMILY_OPENVMS);
  sandbox    Fri Aug 05 21:21:46 JST 2005    94b6fa  187
        boolean retValue = false;
  sandbox    Fri Aug 05 21:21:46 JST 2005    94b6fa  189
        if (family != null || name != null || arch != null || version != null) {
  sandbox    Fri Aug 05 21:21:46 JST 2005    94b6fa  191
            boolean isFamily = true;
  sandbox    Fri Aug 05 21:21:46 JST 2005    94b6fa  192
            boolean isName = true;
  sandbox    Fri Aug 05 21:21:46 JST 2005    94b6fa  193
            boolean isArch = true;
  sandbox    Fri Aug 05 21:21:46 JST 2005    94b6fa  194
            boolean isVersion = true;
  sandbox    Fri Aug 05 21:21:46 JST 2005    94b6fa  196
            if (family != null) {
  sandbox    Fri Aug 05 21:21:46 JST 2005    94b6fa  197
                if (family.equals(FAMILY_WINDOWS)) {
  sandbox    Fri Aug 05 21:21:46 JST 2005    94b6fa  198
                    isFamily = OS_NAME.indexOf(FAMILY_WINDOWS) > -1;
  sandbox    Fri Aug 05 21:21:46 JST 2005    94b6fa  199
                } else if (family.equals(FAMILY_OS_2)) {
  sandbox    Fri Aug 05 21:21:46 JST 2005    94b6fa  201
                } else if (family.equals(FAMILY_NETWARE)) {
  sandbox    Fri Aug 05 21:21:46 JST 2005    94b6fa  203
                } else if (family.equals(FAMILY_DOS)) {
  sandbox    Fri Aug 05 21:21:46 JST 2005    94b6fa  206
                } else if (family.equals(FAMILY_MAC)) {
  sandbox    Fri Aug 05 21:21:46 JST 2005    94b6fa  207
                    isFamily = OS_NAME.indexOf(FAMILY_MAC) > -1;
  sandbox    Fri Aug 05 21:21:46 JST 2005    94b6fa  208
                } else if (family.equals(FAMILY_TANDEM)) {
  sandbox    Fri Aug 05 21:21:46 JST 2005    94b6fa  210
                } else if (family.equals(FAMILY_UNIX)) {
  sandbox    Fri Aug 05 21:21:46 JST 2005    94b6fa  211
                    isFamily = PATH_SEP.equals(":")
  sandbox    Fri Aug 05 21:21:46 JST 2005    94b6fa  212
                            && !isFamily(FAMILY_OPENVMS)
  sandbox    Fri Aug 05 21:21:46 JST 2005    94b6fa  213
                            && (!isFamily(FAMILY_MAC) || OS_NAME.endsWith("x"));
  sandbox    Fri Aug 05 21:21:46 JST 2005    94b6fa  214
                } else if (family.equals(FAMILY_WIN9X)) {
  sandbox    Fri Aug 05 21:21:46 JST 2005    94b6fa  220
                } else if (family.equals(FAMILY_Z_OS)) {
  sandbox    Fri Aug 05 21:21:46 JST 2005    94b6fa  223
                } else if (family.equals(FAMILY_OS_400)) {
  sandbox    Fri Aug 05 21:21:46 JST 2005    94b6fa  225
                } else if (family.equals(FAMILY_OPENVMS)) {
  sandbox    Fri Aug 05 21:21:46 JST 2005    94b6fa  226
                    isFamily = OS_NAME.indexOf(FAMILY_OPENVMS) > -1;
  sandbox    Fri Aug 05 21:21:46 JST 2005    94b6fa  233
            if (name != null) {
  sandbox    Fri Aug 05 21:21:46 JST 2005    94b6fa  236
            if (arch != null) {
  sandbox    Fri Aug 05 21:21:46 JST 2005    94b6fa  239
            if (version != null) {
  sandbox    Fri Aug 05 21:21:46 JST 2005    94b6fa  242
            retValue = isFamily && isName && isArch && isVersion;
  sandbox    Fri Aug 05 21:21:46 JST 2005    94b6fa  244
        return retValue;