Index: sdk/lib/_internal/pub/lib/src/command/cache.dart |
diff --git a/sdk/lib/_internal/pub/lib/src/command/cache.dart b/sdk/lib/_internal/pub/lib/src/command/cache.dart |
index 97e5dbe7614ec99e4d209b792aab7b9eed431b82..dbef31531b5743f95a357e5e78e780f4870b3ac8 100644 |
--- a/sdk/lib/_internal/pub/lib/src/command/cache.dart |
+++ b/sdk/lib/_internal/pub/lib/src/command/cache.dart |
@@ -4,48 +4,15 @@ |
library pub.command.cache; |
-import 'dart:async'; |
-import 'dart:convert'; |
- |
import '../command.dart'; |
-import '../exit_codes.dart' as exit_codes; |
-import '../io.dart'; |
-import '../log.dart' as log; |
+import 'cache_list.dart'; |
/// Handles the `cache` pub command. |
class CacheCommand extends PubCommand { |
- String get description => "Inspect the system cache."; |
- String get usage => "pub cache list"; |
- bool get hidden => true; |
- bool get requiresEntrypoint => false; |
- bool get takesArguments => true; |
- |
- Future onRun() { |
- // TODO(rnystrom): Use subcommand for "list". |
- if (commandOptions.rest.length != 1) { |
- log.error('The cache command expects one argument.'); |
- this.printUsage(); |
- return flushThenExit(exit_codes.USAGE); |
- } |
- |
- if ((commandOptions.rest[0] != 'list')) { |
- log.error('Unknown cache command "${commandOptions.rest[0]}".'); |
- this.printUsage(); |
- return flushThenExit(exit_codes.USAGE); |
- } |
- |
- // TODO(keertip): Add flag to list packages from non default sources |
- var packagesObj = <String, Map>{}; |
+ String get description => "Work with the system cache."; |
+ String get usage => "pub cache <subcommand>"; |
- for (var package in cache.sources.defaultSource.getCachedPackages()) { |
- |
- var packageInfo = packagesObj.putIfAbsent(package.name, () => {}); |
- packageInfo[package.version.toString()] = {'location': package.dir}; |
- } |
- |
- // TODO(keertip): Add support for non-JSON format |
- // and check for --format flag |
- log.message(JSON.encode({'packages': packagesObj})); |
- } |
+ final subcommands = { |
+ "list": new CacheListCommand() |
+ }; |
} |
- |