Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(495)

Unified Diff: pkg/analyzer_cli/lib/src/driver.dart

Issue 2214613003: Convert server and cli and deprecate the old implementation (Closed) Base URL: https://github.com/dart-lang/sdk.git@master
Patch Set: Created 4 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « pkg/analyzer/test/src/dart/sdk/sdk_test.dart ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: pkg/analyzer_cli/lib/src/driver.dart
diff --git a/pkg/analyzer_cli/lib/src/driver.dart b/pkg/analyzer_cli/lib/src/driver.dart
index da1142607c98be6dc6463b0a4841c263e0d3530f..fe69d9db98378ace6e4cc6f3299fb15a9aed115d 100644
--- a/pkg/analyzer_cli/lib/src/driver.dart
+++ b/pkg/analyzer_cli/lib/src/driver.dart
@@ -13,11 +13,12 @@ import 'package:analyzer/file_system/physical_file_system.dart';
import 'package:analyzer/plugin/options.dart';
import 'package:analyzer/plugin/resolver_provider.dart';
import 'package:analyzer/source/analysis_options_provider.dart';
-import 'package:analyzer/source/embedder.dart';
import 'package:analyzer/source/package_map_provider.dart';
import 'package:analyzer/source/package_map_resolver.dart';
import 'package:analyzer/source/pub_package_map_provider.dart';
import 'package:analyzer/source/sdk_ext.dart';
+import 'package:analyzer/src/context/builder.dart';
+import 'package:analyzer/src/dart/sdk/sdk.dart';
import 'package:analyzer/src/generated/constant.dart';
import 'package:analyzer/src/generated/engine.dart';
import 'package:analyzer/src/generated/error.dart';
@@ -94,6 +95,12 @@ class Driver implements CommandLineStarter {
/// SDK instance.
DartSdk sdk;
+ /**
+ * The resource provider used to access the file system.
+ */
+ file_system.ResourceProvider resourceProvider =
+ PhysicalResourceProvider.INSTANCE;
+
/// Collected analysis statistics.
final AnalysisStats stats = new AnalysisStats();
@@ -338,8 +345,7 @@ class Driver implements CommandLineStarter {
Map<file_system.Folder, YamlMap> embedderMap, _PackageInfo packageInfo) {
// Create a custom package resolver if one has been specified.
if (packageResolverProvider != null) {
- file_system.Folder folder =
- PhysicalResourceProvider.INSTANCE.getResource('.');
+ file_system.Folder folder = resourceProvider.getResource('.');
UriResolver resolver = packageResolverProvider(folder);
if (resolver != null) {
UriResolver sdkResolver = new DartUriResolver(sdk);
@@ -348,7 +354,7 @@ class Driver implements CommandLineStarter {
List<UriResolver> resolvers = <UriResolver>[
sdkResolver,
resolver,
- new file_system.ResourceUriResolver(PhysicalResourceProvider.INSTANCE)
+ new file_system.ResourceUriResolver(resourceProvider)
];
return new SourceFactory(resolvers);
}
@@ -364,9 +370,8 @@ class Driver implements CommandLineStarter {
if (packageInfo.packageMap == null) {
// Fall back to pub list-package-dirs.
PubPackageMapProvider pubPackageMapProvider =
- new PubPackageMapProvider(PhysicalResourceProvider.INSTANCE, sdk);
- file_system.Resource cwd =
- PhysicalResourceProvider.INSTANCE.getResource('.');
+ new PubPackageMapProvider(resourceProvider, sdk);
+ file_system.Resource cwd = resourceProvider.getResource('.');
PackageMapInfo packageMapInfo =
pubPackageMapProvider.computePackageMap(cwd);
Map<String, List<file_system.Folder>> packageMap =
@@ -376,8 +381,8 @@ class Driver implements CommandLineStarter {
// If it failed, that's not a problem; it simply means we have no way
// to resolve packages.
if (packageMapInfo.packageMap != null) {
- packageUriResolver = new PackageMapUriResolver(
- PhysicalResourceProvider.INSTANCE, packageMap);
+ packageUriResolver =
+ new PackageMapUriResolver(resourceProvider, packageMap);
}
}
}
@@ -388,7 +393,7 @@ class Driver implements CommandLineStarter {
// 'dart:' URIs come first.
// Setup embedding.
- EmbedderSdk embedderSdk = new EmbedderSdk(embedderMap);
+ EmbedderSdk embedderSdk = new EmbedderSdk(resourceProvider, embedderMap);
if (embedderSdk.libraryMap.size() == 0) {
// The embedder uri resolver has no mappings. Use the default Dart SDK
// uri resolver.
@@ -410,8 +415,7 @@ class Driver implements CommandLineStarter {
}
// Finally files.
- resolvers.add(
- new file_system.ResourceUriResolver(PhysicalResourceProvider.INSTANCE));
+ resolvers.add(new file_system.ResourceUriResolver(resourceProvider));
return new SourceFactory(resolvers, packageInfo.packages);
}
@@ -546,8 +550,7 @@ class Driver implements CommandLineStarter {
packageMap = _PackageRootPackageMapBuilder
.buildPackageMap(options.packageRootPath);
} else {
- file_system.Resource cwd =
- PhysicalResourceProvider.INSTANCE.getResource('.');
+ file_system.Resource cwd = resourceProvider.getResource('.');
// Look for .packages.
packages = _discoverPackagespec(new Uri.directory(cwd.path));
packageMap = _getPackageMap(packages);
@@ -564,9 +567,7 @@ class Driver implements CommandLineStarter {
Map<String, List<file_system.Folder>> folderMap =
new Map<String, List<file_system.Folder>>();
packages.asMap().forEach((String packagePath, Uri uri) {
- folderMap[packagePath] = [
- PhysicalResourceProvider.INSTANCE.getFolder(path.fromUri(uri))
- ];
+ folderMap[packagePath] = [resourceProvider.getFolder(path.fromUri(uri))];
});
return folderMap;
}
« no previous file with comments | « pkg/analyzer/test/src/dart/sdk/sdk_test.dart ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698