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 /** | 7 /** |
8 * [Link] objects are references to filesystem links. | 8 * [Link] objects are references to filesystem links. |
9 * | 9 * |
10 */ | 10 */ |
11 abstract class Link extends FileSystemEntity { | 11 abstract class Link extends FileSystemEntity { |
12 /** | 12 /** |
13 * Creates a Link object. | 13 * Creates a Link object. |
14 */ | 14 */ |
15 factory Link(String path) => new _Link(path); | 15 factory Link(String path) => new _Link(path); |
16 | 16 |
17 /** | 17 /** |
18 * Create a Lint object from a URI. | 18 * Creates a [Link] object. |
19 * | 19 * |
20 * If [uri] cannot reference a link this throws [UnsupportedError]. | 20 * If [path] is a relative path, it will be interpreted relative to the |
| 21 * current working directory (see [Directory.current]), when used. |
| 22 * |
| 23 * If [path] is an absolute path, it will be immune to changes to the |
| 24 * current working directory. |
21 */ | 25 */ |
22 factory Link.fromUri(Uri uri) => new Link(uri.toFilePath()); | 26 factory Link.fromUri(Uri uri) => new Link(uri.toFilePath()); |
23 | 27 |
24 /** | 28 /** |
25 * Creates a symbolic link. Returns a [:Future<Link>:] that completes with | 29 * Creates a symbolic link. Returns a [:Future<Link>:] that completes with |
26 * the link when it has been created. If the link exists, | 30 * the link when it has been created. If the link exists, |
27 * the future will complete with an error. | 31 * the future will complete with an error. |
28 * | 32 * |
29 * If [recursive] is false, the default, the link is created | 33 * If [recursive] is false, the default, the link is created |
30 * only if all directories in its path exist. | 34 * only if all directories in its path exist. |
(...skipping 261 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
292 return new ArgumentError(); | 296 return new ArgumentError(); |
293 case _OSERROR_RESPONSE: | 297 case _OSERROR_RESPONSE: |
294 var err = new OSError(response[_OSERROR_RESPONSE_MESSAGE], | 298 var err = new OSError(response[_OSERROR_RESPONSE_MESSAGE], |
295 response[_OSERROR_RESPONSE_ERROR_CODE]); | 299 response[_OSERROR_RESPONSE_ERROR_CODE]); |
296 return new FileSystemException(message, path, err); | 300 return new FileSystemException(message, path, err); |
297 default: | 301 default: |
298 return new Exception("Unknown error"); | 302 return new Exception("Unknown error"); |
299 } | 303 } |
300 } | 304 } |
301 } | 305 } |
OLD | NEW |