Export 'resourceProvider' from AnalysisSession.

R=brianwilkerson@google.com

Change-Id: I0544be022a078f96be23c4e75923c32f70385589
Reviewed-on: https://dart-review.googlesource.com/55443
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
This commit is contained in:
Konstantin Shcheglov 2018-05-16 17:28:16 +00:00
parent b3affa6721
commit f32509b849
4 changed files with 24 additions and 0 deletions

View file

@ -7,6 +7,7 @@ import 'dart:async';
import 'package:analyzer/dart/analysis/results.dart';
import 'package:analyzer/dart/element/element.dart';
import 'package:analyzer/exception/exception.dart';
import 'package:analyzer/file_system/file_system.dart';
import 'package:analyzer/src/dart/analysis/top_level_declaration.dart';
import 'package:analyzer/src/generated/resolver.dart';
import 'package:analyzer/src/generated/source.dart';
@ -21,6 +22,11 @@ import 'package:analyzer/src/generated/source.dart';
* Clients may not extend, implement or mix-in this class.
*/
abstract class AnalysisSession {
/**
* Return the [ResourceProvider] that is used to access the file system.
*/
ResourceProvider get resourceProvider;
/**
* Return the source factory used to resolve URIs.
*/

View file

@ -430,6 +430,11 @@ class AnalysisDriver implements AnalysisDriverGeneric {
_scheduler.notify(this);
}
/**
* Return the [ResourceProvider] that is used to access the file system.
*/
ResourceProvider get resourceProvider => _resourceProvider;
/**
* Return the [Stream] that produces [AnalysisResult]s for added files.
*

View file

@ -7,6 +7,7 @@ import 'dart:async';
import 'package:analyzer/dart/analysis/results.dart';
import 'package:analyzer/dart/analysis/session.dart';
import 'package:analyzer/dart/element/element.dart';
import 'package:analyzer/file_system/file_system.dart';
import 'package:analyzer/src/dart/analysis/driver.dart' as driver;
import 'package:analyzer/src/dart/analysis/top_level_declaration.dart';
import 'package:analyzer/src/generated/resolver.dart';
@ -41,6 +42,9 @@ class AnalysisSessionImpl implements AnalysisSession {
*/
AnalysisSessionImpl(this._driver);
@override
ResourceProvider get resourceProvider => _driver.resourceProvider;
@override
SourceFactory get sourceFactory => _driver.sourceFactory;

View file

@ -6,6 +6,8 @@ import 'dart:async';
import 'package:analyzer/dart/analysis/session.dart';
import 'package:analyzer/dart/element/element.dart';
import 'package:analyzer/file_system/file_system.dart';
import 'package:analyzer/file_system/memory_file_system.dart';
import 'package:analyzer/src/dart/analysis/driver.dart';
import 'package:analyzer/src/dart/analysis/session.dart';
import 'package:analyzer/src/dart/analysis/top_level_declaration.dart';
@ -93,6 +95,12 @@ class AnalysisSessionImplTest {
expect(await session.getUnitElementSignature('path'), signature);
}
test_resourceProvider() {
ResourceProvider resourceProvider = new MemoryResourceProvider();
driver.resourceProvider = resourceProvider;
expect(session.resourceProvider, resourceProvider);
}
test_sourceFactory() {
SourceFactory sourceFactory = new SourceFactory([]);
driver.sourceFactory = sourceFactory;
@ -155,6 +163,7 @@ class MockAnalysisDriver implements AnalysisDriver {
ErrorsResult errorsResult;
Map<String, LibraryElement> libraryMap = <String, LibraryElement>{};
ParseResult parseResult;
ResourceProvider resourceProvider;
AnalysisResult result;
SourceFactory sourceFactory;
SourceKind sourceKind;