Class PythonStatusService
java.lang.Object
ai.nervemind.app.service.PythonStatusService
- All Implemented Interfaces:
ai.nervemind.common.service.PythonStatusServiceInterface
@Service
public class PythonStatusService
extends Object
implements ai.nervemind.common.service.PythonStatusServiceInterface
Service for providing Python environment status information to the UI.
Aggregates status from all Python execution strategies and provides formatted information for display in the status bar and settings panels.
Status Bar Display
- 🐍 GraalPy 24.1 - embedded mode active
- 🐍 Python 3.12 - external mode active
- 🐍 Python 3.12 (venv) - external with virtual environment
- ⚠️ Python N/A - no Python available
- Since:
- 1.0.0
-
Constructor Summary
ConstructorsConstructorDescriptionPythonStatusService(SettingsService settingsService, List<ScriptExecutionStrategy> strategies) Creates a new Python status service. -
Method Summary
Modifier and TypeMethodDescriptionbooleanbooleanbooleanbooleanvoidboolean
-
Constructor Details
-
PythonStatusService
public PythonStatusService(SettingsService settingsService, List<ScriptExecutionStrategy> strategies) Creates a new Python status service.- Parameters:
settingsService- the settings service for configuration accessstrategies- the list of available Python execution strategies
-
-
Method Details
-
getExecutionMode
- Specified by:
getExecutionModein interfaceai.nervemind.common.service.PythonStatusServiceInterface
-
getActiveEnvironmentName
- Specified by:
getActiveEnvironmentNamein interfaceai.nervemind.common.service.PythonStatusServiceInterface
-
getStatusBarText
- Specified by:
getStatusBarTextin interfaceai.nervemind.common.service.PythonStatusServiceInterface
-
isPythonAvailable
public boolean isPythonAvailable()- Specified by:
isPythonAvailablein interfaceai.nervemind.common.service.PythonStatusServiceInterface
-
isEmbeddedAvailable
public boolean isEmbeddedAvailable()- Specified by:
isEmbeddedAvailablein interfaceai.nervemind.common.service.PythonStatusServiceInterface
-
isExternalAvailable
public boolean isExternalAvailable()- Specified by:
isExternalAvailablein interfaceai.nervemind.common.service.PythonStatusServiceInterface
-
isVenvActive
public boolean isVenvActive()- Specified by:
isVenvActivein interfaceai.nervemind.common.service.PythonStatusServiceInterface
-
getDetailedInfo
- Specified by:
getDetailedInfoin interfaceai.nervemind.common.service.PythonStatusServiceInterface
-
getExternalPythonPath
- Specified by:
getExternalPythonPathin interfaceai.nervemind.common.service.PythonStatusServiceInterface
-
getGraalPyVersion
- Specified by:
getGraalPyVersionin interfaceai.nervemind.common.service.PythonStatusServiceInterface
-
getExternalPythonVersion
- Specified by:
getExternalPythonVersionin interfaceai.nervemind.common.service.PythonStatusServiceInterface
-
runHealthCheck
public boolean runHealthCheck()- Specified by:
runHealthCheckin interfaceai.nervemind.common.service.PythonStatusServiceInterface
-
getLastHealthCheckResult
- Specified by:
getLastHealthCheckResultin interfaceai.nervemind.common.service.PythonStatusServiceInterface
-
refreshStatus
public void refreshStatus()- Specified by:
refreshStatusin interfaceai.nervemind.common.service.PythonStatusServiceInterface
-