Remove JavaFile.pathContext

R=scheglov@google.com

Review URL: https://codereview.chromium.org/2386123004 .
This commit is contained in:
Brian Wilkerson 2016-10-03 19:28:49 -07:00
parent ef2a3b982c
commit 29c5c9985e
5 changed files with 26 additions and 28 deletions

View file

@ -34,7 +34,8 @@ class MemoryResourceProvider implements ResourceProvider {
@override
final AbsolutePathContext absolutePathContext;
MemoryResourceProvider({pathos.Context context})
MemoryResourceProvider(
{pathos.Context context, @deprecated bool isWindows: false})
: _pathContext = context ?? pathos.context,
absolutePathContext = new AbsolutePathContext(
pathos.Style.platform == pathos.Style.windows);

View file

@ -9,6 +9,7 @@ import "dart:io";
import 'package:path/path.dart' as path;
class JavaFile {
@deprecated
static path.Context pathContext = path.context;
static final String separator = Platform.pathSeparator;
static final int separatorChar = Platform.pathSeparator.codeUnitAt(0);
@ -16,12 +17,12 @@ class JavaFile {
JavaFile(String path) {
_path = path;
}
JavaFile.fromUri(Uri uri) : this(pathContext.fromUri(uri));
JavaFile.fromUri(Uri uri) : this(path.context.fromUri(uri));
JavaFile.relative(JavaFile base, String child) {
if (child.isEmpty) {
this._path = base._path;
} else {
this._path = pathContext.join(base._path, child);
this._path = path.context.join(base._path, child);
}
}
@override
@ -43,9 +44,9 @@ class JavaFile {
JavaFile getAbsoluteFile() => new JavaFile(getAbsolutePath());
String getAbsolutePath() {
String path = pathContext.absolute(_path);
path = pathContext.normalize(path);
return path;
String abolutePath = path.context.absolute(_path);
abolutePath = path.context.normalize(abolutePath);
return abolutePath;
}
JavaFile getCanonicalFile() => new JavaFile(getCanonicalPath());
@ -53,9 +54,9 @@ class JavaFile {
return _newFile().resolveSymbolicLinksSync();
}
String getName() => pathContext.basename(_path);
String getName() => path.context.basename(_path);
String getParent() {
var result = pathContext.dirname(_path);
var result = path.context.dirname(_path);
// "." or "/" or "C:\"
if (result.length < 4) return null;
return result;
@ -101,8 +102,8 @@ class JavaFile {
@override
String toString() => _path.toString();
Uri toURI() {
String path = getAbsolutePath();
return pathContext.toUri(path);
String absolutePath = getAbsolutePath();
return path.context.toUri(absolutePath);
}
Directory _newDirectory() => new Directory(_path);
@ -134,18 +135,15 @@ class JavaSystemIO {
String sdkPath;
// may be "xcodebuild/ReleaseIA32/dart" with "sdk" sibling
{
var outDir =
JavaFile.pathContext.dirname(JavaFile.pathContext.dirname(exec));
sdkPath = JavaFile.pathContext
.join(JavaFile.pathContext.dirname(outDir), "sdk");
var outDir = path.context.dirname(path.context.dirname(exec));
sdkPath = path.context.join(path.context.dirname(outDir), "sdk");
if (new Directory(sdkPath).existsSync()) {
_properties[name] = sdkPath;
return sdkPath;
}
}
// probably be "dart-sdk/bin/dart"
sdkPath =
JavaFile.pathContext.dirname(JavaFile.pathContext.dirname(exec));
sdkPath = path.context.dirname(path.context.dirname(exec));
_properties[name] = sdkPath;
return sdkPath;
}

View file

@ -10,6 +10,7 @@ import 'package:analyzer/exception/exception.dart';
import 'package:analyzer/src/generated/engine.dart';
import 'package:analyzer/src/generated/java_io.dart';
import 'package:analyzer/src/generated/source.dart';
import 'package:path/path.dart' as path;
export 'package:analyzer/src/generated/source.dart';
@ -508,8 +509,7 @@ class PackageUriResolver extends UriResolver {
* Convert the given file path to a "file:" URI. On Windows, this transforms
* backslashes to forward slashes.
*/
String _toFileUri(String filePath) =>
JavaFile.pathContext.toUri(filePath).toString();
String _toFileUri(String filePath) => path.context.toUri(filePath).toString();
/**
* Return `true` if the given URI is a `package` URI.

View file

@ -5,6 +5,7 @@
library analyzer.test.generated.java_io_test;
import 'package:analyzer/src/generated/java_io.dart';
import 'package:path/path.dart' as path;
import 'package:unittest/unittest.dart';
import '../utils.dart';
@ -15,24 +16,24 @@ main() {
group('toURI', () {
test('forAbsolute', () {
String tempPath = '/temp';
String path = JavaFile.pathContext.join(tempPath, 'foo.dart');
String absolutePath = path.context.join(tempPath, 'foo.dart');
// we use an absolute path
expect(JavaFile.pathContext.isAbsolute(path), isTrue,
reason: '"$path" is not absolute');
expect(path.context.isAbsolute(absolutePath), isTrue,
reason: '"$absolutePath" is not absolute');
// test that toURI() returns an absolute URI
Uri uri = new JavaFile(path).toURI();
Uri uri = new JavaFile(absolutePath).toURI();
expect(uri.isAbsolute, isTrue);
expect(uri.scheme, 'file');
});
test('forRelative', () {
String tempPath = '/temp';
String path = JavaFile.pathContext.join(tempPath, 'foo.dart');
expect(JavaFile.pathContext.isAbsolute(path), isTrue,
reason: '"$path" is not absolute');
String absolutePath = path.context.join(tempPath, 'foo.dart');
expect(path.context.isAbsolute(absolutePath), isTrue,
reason: '"$absolutePath" is not absolute');
// prepare a relative path
// We should not check that "relPath" is actually relative -
// it may be not on Windows, if "temp" is on other disk.
String relPath = JavaFile.pathContext.relative(path);
String relPath = path.context.relative(absolutePath);
// test that toURI() returns an absolute URI
Uri uri = new JavaFile(relPath).toURI();
expect(uri.isAbsolute, isTrue);

View file

@ -7,14 +7,12 @@ library analyzer.test.utils;
import 'package:analyzer/dart/ast/ast.dart';
import 'package:analyzer/dart/element/element.dart';
import 'package:analyzer/dart/element/type.dart';
import 'package:analyzer/src/generated/java_io.dart';
import 'package:analyzer/src/generated/resolver.dart' show TypeProvider;
import 'package:path/path.dart' as path;
import 'package:unittest/unittest.dart';
void initializeTestEnvironment([path.Context context]) {
groupSep = ' | ';
JavaFile.pathContext = context ?? path.posix;
}
/**