run method

  1. @override
void run()
override

Runs this command.

The return value is wrapped in a Future if necessary and returned by CommandRunner.runCommand.

Implementation

@override
void run() async {
  try {
    // Step 1: Validate inputs and configuration
    if (!_validateInputs()) return;

    // Step 2: Prepare configuration
    final config = _prepareConfiguration();

    // Step 3: Execute the run process
    await _executeRun(config);

    // Step 4: Report success
    _reportSuccess();
  } catch (e) {
    StatusHelper.failed('Run command failed: ${e.toString()}',
        suggestion:
            'Check your configuration and ensure Flutter is available',
        examples: ['morpheme doctor', 'flutter doctor']);
  }
}