Index: sdk/lib/_internal/pub/lib/src/command/cache_list.dart |
diff --git a/sdk/lib/_internal/pub/lib/src/command/cache.dart b/sdk/lib/_internal/pub/lib/src/command/cache_list.dart |
similarity index 51% |
copy from sdk/lib/_internal/pub/lib/src/command/cache.dart |
copy to sdk/lib/_internal/pub/lib/src/command/cache_list.dart |
index 97e5dbe7614ec99e4d209b792aab7b9eed431b82..d774a6ba7c249e5f716b6fcc9c1468b366077046 100644 |
--- a/sdk/lib/_internal/pub/lib/src/command/cache.dart |
+++ b/sdk/lib/_internal/pub/lib/src/command/cache_list.dart |
@@ -2,50 +2,32 @@ |
// for details. All rights reserved. Use of this source code is governed by a |
// BSD-style license that can be found in the LICENSE file. |
-library pub.command.cache; |
+library pub.command.cache_list; |
import 'dart:async'; |
import 'dart:convert'; |
import '../command.dart'; |
-import '../exit_codes.dart' as exit_codes; |
-import '../io.dart'; |
import '../log.dart' as log; |
-/// Handles the `cache` pub command. |
-class CacheCommand extends PubCommand { |
- String get description => "Inspect the system cache."; |
+/// Handles the `cache list` pub command. |
+class CacheListCommand extends PubCommand { |
+ String get description => "List packages in 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 |
+ // TODO(keertip): Add flag to list packages from non default sources. |
var packagesObj = <String, Map>{}; |
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 |
+ // TODO(keertip): Add support for non-JSON format and check for --format |
+ // flag. |
log.message(JSON.encode({'packages': packagesObj})); |
} |
} |
- |