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

Unified Diff: pkg/analyzer/lib/src/dart/sdk/sdk.dart

Issue 2627423004: Use spec.sum or strong.sum in EmbedderSdk. (Closed)
Patch Set: Created 3 years, 11 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 | « no previous file | pkg/analyzer/test/src/dart/sdk/sdk_test.dart » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: pkg/analyzer/lib/src/dart/sdk/sdk.dart
diff --git a/pkg/analyzer/lib/src/dart/sdk/sdk.dart b/pkg/analyzer/lib/src/dart/sdk/sdk.dart
index 1163413d4d13f662ea9dff7cb9d317693b480b01..d66526e32e19f856ee50275338683d8be2d89b27 100644
--- a/pkg/analyzer/lib/src/dart/sdk/sdk.dart
+++ b/pkg/analyzer/lib/src/dart/sdk/sdk.dart
@@ -273,15 +273,14 @@ class EmbedderSdk extends AbstractDartSdk {
static const String _EMBEDDED_LIB_MAP_KEY = 'embedded_libs';
final Map<String, String> _urlMappings = new HashMap<String, String>();
- PackageBundle _embedderBundle;
+ Folder _embedderYamlLibFolder;
EmbedderSdk(
ResourceProvider resourceProvider, Map<Folder, YamlMap> embedderYamls) {
this.resourceProvider = resourceProvider;
embedderYamls?.forEach(_processEmbedderYaml);
if (embedderYamls?.length == 1) {
- Folder libFolder = embedderYamls.keys.first;
- _loadEmbedderBundle(libFolder);
+ _embedderYamlLibFolder = embedderYamls.keys.first;
}
}
@@ -299,8 +298,17 @@ class EmbedderSdk extends AbstractDartSdk {
@override
PackageBundle getSummarySdkBundle(bool strongMode) {
- if (strongMode) {
- return _embedderBundle;
+ String name = strongMode ? 'strong.sum' : 'spec.sum';
+ File file = _embedderYamlLibFolder.parent.getChildAssumingFile(name);
+ try {
+ if (file.exists) {
+ List<int> bytes = file.readAsBytesSync();
+ return new PackageBundle.fromBuffer(bytes);
+ }
+ } catch (exception, stackTrace) {
+ AnalysisEngine.instance.logger.logError(
+ 'Failed to load SDK analysis summary from $file',
devoncarew 2017/01/13 18:26:21 awesome!
+ new CaughtException(exception, stackTrace));
}
return null;
}
@@ -345,16 +353,6 @@ class EmbedderSdk extends AbstractDartSdk {
}
}
- void _loadEmbedderBundle(Folder libFolder) {
- File bundleFile = libFolder.parent.getChildAssumingFile('sdk.ds');
- if (bundleFile.exists) {
- try {
- List<int> bytes = bundleFile.readAsBytesSync();
- _embedderBundle = new PackageBundle.fromBuffer(bytes);
- } on FileSystemException {}
- }
- }
-
/**
* Install the mapping from [name] to [libDir]/[file].
*/
« no previous file with comments | « no previous file | pkg/analyzer/test/src/dart/sdk/sdk_test.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698