run method

  1. @override
Future<void> run()
override

Runs this command.

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

Implementation

@override
Future<void> run() async {
  final flavorName = argResults!['flavorName'] as String;
  final packageName = argResults?['packageName'] as String?;
  final packageNameIos = argResults?['packageNameIos'] as String? ?? packageName;
  final packageNameAndroid = argResults?['packageNameAndroid'] as String? ?? packageName;
  final displayName = argResults?['displayName'] as String?;
  final displayNameIos = argResults?['displayNameIos'] as String? ?? displayName;
  final displayNameAndroid = argResults?['displayNameAndroid'] as String? ?? displayName;

  if ([packageNameIos, packageNameAndroid, displayNameIos, displayNameAndroid].every((e) => e == null)) {
    print('Nothing to update. Provide at least one of: --packageName, --displayName, etc.\n$usage');
    exit(1);
  }

  await updateFlavor(
    flavorName: flavorName,
    packageNameIos: packageNameIos,
    packageNameAndroid: packageNameAndroid,
    displayNameIos: displayNameIos,
    displayNameAndroid: displayNameAndroid,
  );
}