| OLD | NEW |
| 1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file |
| 2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
| 3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
| 4 | 4 |
| 5 part of dart.io; | 5 part of dart.io; |
| 6 | 6 |
| 7 class _Directory extends FileSystemEntity implements Directory { | 7 class _Directory extends FileSystemEntity implements Directory { |
| 8 final String path; | 8 final String path; |
| 9 | 9 |
| 10 _Directory(this.path) { | 10 _Directory(this.path) { |
| (...skipping 26 matching lines...) Expand all Loading... |
| 37 if (path is Directory) path = path.path; | 37 if (path is Directory) path = path.path; |
| 38 var result = _setCurrent(path); | 38 var result = _setCurrent(path); |
| 39 if (result is ArgumentError) throw result; | 39 if (result is ArgumentError) throw result; |
| 40 if (result is OSError) { | 40 if (result is OSError) { |
| 41 throw new FileSystemException( | 41 throw new FileSystemException( |
| 42 "Setting current working directory failed", path, result); | 42 "Setting current working directory failed", path, result); |
| 43 } | 43 } |
| 44 } | 44 } |
| 45 | 45 |
| 46 Uri get uri { | 46 Uri get uri { |
| 47 String path = this.path; | 47 return new Uri.directory(path); |
| 48 if (!path.endsWith("/")) { | |
| 49 path = path + "/"; | |
| 50 } | |
| 51 return new Uri.file(path); | |
| 52 } | 48 } |
| 53 | 49 |
| 54 Future<bool> exists() { | 50 Future<bool> exists() { |
| 55 return _IOService._dispatch(_DIRECTORY_EXISTS, [path]).then((response) { | 51 return _IOService._dispatch(_DIRECTORY_EXISTS, [path]).then((response) { |
| 56 if (_isErrorResponse(response)) { | 52 if (_isErrorResponse(response)) { |
| 57 throw _exceptionOrErrorFromResponse(response, "Exists failed"); | 53 throw _exceptionOrErrorFromResponse(response, "Exists failed"); |
| 58 } | 54 } |
| 59 return response == 1; | 55 return response == 1; |
| 60 }); | 56 }); |
| 61 } | 57 } |
| (...skipping 326 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 388 controller.addError( | 384 controller.addError( |
| 389 new FileSystemException("Directory listing failed", | 385 new FileSystemException("Directory listing failed", |
| 390 errorPath, | 386 errorPath, |
| 391 err)); | 387 err)); |
| 392 } else { | 388 } else { |
| 393 controller.addError( | 389 controller.addError( |
| 394 new FileSystemException("Internal error")); | 390 new FileSystemException("Internal error")); |
| 395 } | 391 } |
| 396 } | 392 } |
| 397 } | 393 } |
| OLD | NEW |