RunDashboardRunConfigurationStatus (RunDashboardRunConfigurationNode node) { RunContentDescriptor descriptor = node.getDescriptor(); if (descriptor == null) { return CONFIGURED; } ProcessHandler processHandler = descriptor.getProcessHandler(); if (processHandler == null) { return STOPPED; } Integer exitCode = processHandler.getExitCode(); if (exitCode == null) { return STARTED; } Boolean terminationRequested = processHandler.getUserData(ProcessHandler.TERMINATION_REQUESTED); if (exitCode == 0 || (terminationRequested != null && terminationRequested)) { return STOPPED; } return FAILED; }