execute method
Implementation
@override
Future<int> execute(List<String> arguments) async {
final config = await getDartToolVaniaConfig(
workingDirectory: workingDirectory,
);
final recordedPid = config?['process']?['pid'];
final pid = recordedPid is int ? recordedPid : int.tryParse('$recordedPid');
if (config == null || pid == null) {
Console.info('No running server was recorded.');
return ExitCode.success;
}
if (!Process.killPid(pid, ProcessSignal.sigterm)) {
Console.warn('Process $pid is not running; clearing its record.');
}
config.remove('process');
await updateDartToolVaniaConfig(config, workingDirectory: workingDirectory);
Console.success('Server stopped');
return ExitCode.success;
}