| Index: sdk/lib/io/directory_impl.dart
|
| diff --git a/sdk/lib/io/directory_impl.dart b/sdk/lib/io/directory_impl.dart
|
| index f54a6413c1e938fc9b2d7ef8b85038f9caff18d8..e5293f6d2c0892780055e8908cde1155729ac87d 100644
|
| --- a/sdk/lib/io/directory_impl.dart
|
| +++ b/sdk/lib/io/directory_impl.dart
|
| @@ -13,6 +13,7 @@ class _Directory extends FileSystemEntity implements Directory {
|
| static const LIST_NEXT_REQUEST = 5;
|
| static const LIST_STOP_REQUEST = 6;
|
| static const RENAME_REQUEST = 7;
|
| + static const RESOLVE_SYMBOLIC_LINKS_REQUEST = 8;
|
|
|
| final String path;
|
| SendPort _directoryService;
|
| @@ -204,6 +205,29 @@ class _Directory extends FileSystemEntity implements Directory {
|
| }
|
| }
|
|
|
| + Future<String> resolveSymbolicLinks() {
|
| + _ensureDirectoryService();
|
| + List request = new List(2);
|
| + request[0] = RESOLVE_SYMBOLIC_LINKS_REQUEST;
|
| + request[1] = path;
|
| + return _directoryService.call(request).then((response) {
|
| + if (_isErrorResponse(response)) {
|
| + throw _exceptionOrErrorFromResponse(response,
|
| + "Cannot resolve symbolic links");
|
| + }
|
| + return response;
|
| + });
|
| + }
|
| +
|
| + String resolveSymbolicLinksSync() {
|
| + var result = _File._resolveSymbolicLinks(path);
|
| + if (result is OSError) {
|
| + throw new DirectoryException(
|
| + "Cannot resolve symbolic links", path, result);
|
| + }
|
| + return result;
|
| + }
|
| +
|
| Future<Directory> rename(String newPath) {
|
| _ensureDirectoryService();
|
| List request = new List(3);
|
|
|