| OLD | NEW |
| 1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2013, 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 // Read the file in blocks of size 64k. | 7 // Read the file in blocks of size 64k. |
| 8 const int _BLOCK_SIZE = 64 * 1024; | 8 const int _BLOCK_SIZE = 64 * 1024; |
| 9 | 9 |
| 10 | 10 |
| (...skipping 228 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 239 SendPort _fileService; | 239 SendPort _fileService; |
| 240 | 240 |
| 241 // Constructor for file. | 241 // Constructor for file. |
| 242 _File(String this.path) { | 242 _File(String this.path) { |
| 243 if (path is! String) { | 243 if (path is! String) { |
| 244 throw new ArgumentError('${Error.safeToString(path)} ' | 244 throw new ArgumentError('${Error.safeToString(path)} ' |
| 245 'is not a String'); | 245 'is not a String'); |
| 246 } | 246 } |
| 247 } | 247 } |
| 248 | 248 |
| 249 // Constructor from Path for file. | |
| 250 _File.fromPath(Path path) : this(path.toNativePath()); | |
| 251 | |
| 252 Future<bool> exists() { | 249 Future<bool> exists() { |
| 253 _ensureFileService(); | 250 _ensureFileService(); |
| 254 List request = new List(2); | 251 List request = new List(2); |
| 255 request[0] = _EXISTS_REQUEST; | 252 request[0] = _EXISTS_REQUEST; |
| 256 request[1] = path; | 253 request[1] = path; |
| 257 return _fileService.call(request).then((response) { | 254 return _fileService.call(request).then((response) { |
| 258 if (_isErrorResponse(response)) { | 255 if (_isErrorResponse(response)) { |
| 259 throw _exceptionFromResponse(response, "Cannot check existence", path); | 256 throw _exceptionFromResponse(response, "Cannot check existence", path); |
| 260 } | 257 } |
| 261 return response; | 258 return response; |
| (...skipping 77 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 339 | 336 |
| 340 external static _renameLink(String oldPath, String newPath); | 337 external static _renameLink(String oldPath, String newPath); |
| 341 | 338 |
| 342 File renameSync(String newPath) { | 339 File renameSync(String newPath) { |
| 343 var result = _rename(path, newPath); | 340 var result = _rename(path, newPath); |
| 344 throwIfError(result, "Cannot rename file to '$newPath'", path); | 341 throwIfError(result, "Cannot rename file to '$newPath'", path); |
| 345 return new File(newPath); | 342 return new File(newPath); |
| 346 } | 343 } |
| 347 | 344 |
| 348 Directory get directory { | 345 Directory get directory { |
| 349 Path path = new Path(this.path).directoryPath; | 346 _Path path = new _Path(this.path).directoryPath; |
| 350 return new Directory.fromPath(path); | 347 return new Directory(path.toNativePath()); |
| 351 } | 348 } |
| 352 | 349 |
| 353 Future<RandomAccessFile> open({FileMode mode: FileMode.READ}) { | 350 Future<RandomAccessFile> open({FileMode mode: FileMode.READ}) { |
| 354 _ensureFileService(); | 351 _ensureFileService(); |
| 355 if (mode != FileMode.READ && | 352 if (mode != FileMode.READ && |
| 356 mode != FileMode.WRITE && | 353 mode != FileMode.WRITE && |
| 357 mode != FileMode.APPEND) { | 354 mode != FileMode.APPEND) { |
| 358 return new Future.error(new ArgumentError()); | 355 return new Future.error(new ArgumentError()); |
| 359 } | 356 } |
| 360 List request = new List(3); | 357 List request = new List(3); |
| (...skipping 619 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 980 void _checkNotClosed() { | 977 void _checkNotClosed() { |
| 981 if (closed) { | 978 if (closed) { |
| 982 throw new FileException("File closed", path); | 979 throw new FileException("File closed", path); |
| 983 } | 980 } |
| 984 } | 981 } |
| 985 | 982 |
| 986 Future _closedException() { | 983 Future _closedException() { |
| 987 return new Future.error(new FileException("File closed", path)); | 984 return new Future.error(new FileException("File closed", path)); |
| 988 } | 985 } |
| 989 } | 986 } |
| OLD | NEW |