resume method

Future<void> resume()
inherited

Resumes a suspended module, making it active again.

Override onResume to perform custom resume logic.

Throws:

  • ModuleException if resume fails
  • StateError if the module is not in suspended state

Implementation

Future<void> resume() async {
  if (_state != ModuleLifecycleState.suspended) {
    throw StateError(
      'Cannot resume module $name: not suspended (state: $_state)',
    );
  }

  try {
    info('Resuming module $name');
    await onResume();
    await _transitionTo(ModuleLifecycleState.active);
    info('Module $name resumed');
  } catch (e) {
    error('Failed to resume module $name: $e');
    await _transitionTo(ModuleLifecycleState.error, error: e);
    rethrow;
  }
}