runSharedPrefsCli function

Future<int> runSharedPrefsCli(
  1. List<String> args
)

CLI adapter for fdb shared-prefs.

Sub-commands: fdb shared-prefs get KEY fdb shared-prefs get-all fdb shared-prefs set KEY VALUE --type string|bool|int|double fdb shared-prefs remove KEY fdb shared-prefs clear

Implementation

Future<int> runSharedPrefsCli(List<String> args) async {
  if (args.contains('--help') || args.contains('-h')) {
    stdout.writeln(
      'Usage: fdb shared-prefs <get|get-all|set|remove|clear> [args]',
    );
    return 0;
  }

  if (args.isEmpty) {
    stderr.writeln(
      'ERROR: sub-command required.\n'
      'Usage: fdb shared-prefs <get|get-all|set|remove|clear> [args]',
    );
    return 1;
  }

  final sub = args[0];
  final rest = args.sublist(1);

  switch (sub) {
    case 'get':
      return _runGet(rest);
    case 'get-all':
      return _runGetAll();
    case 'set':
      return _runSet(rest);
    case 'remove':
      return _runRemove(rest);
    case 'clear':
      return _runClear();
    default:
      stderr.writeln('ERROR: unknown sub-command: $sub');
      return 1;
  }
}