| 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 /** | 5 /** |
| 6 * [Directory] objects are used for working with directories. | 6 * [Directory] objects are used for working with directories. |
| 7 */ | 7 */ |
| 8 interface Directory default _Directory { | 8 interface Directory default _Directory { |
| 9 /** | 9 /** |
| 10 * Creates a directory object. The path is either a full path or | 10 * Creates a directory object. The path is either a full path or |
| (...skipping 117 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 128 * Set the handler that is called when a directory listing is | 128 * Set the handler that is called when a directory listing is |
| 129 * done. The handler is called with an indication of whether or not | 129 * done. The handler is called with an indication of whether or not |
| 130 * the listing operation completed. | 130 * the listing operation completed. |
| 131 */ | 131 */ |
| 132 void set onDone(void onDone(bool completed)); | 132 void set onDone(void onDone(bool completed)); |
| 133 | 133 |
| 134 /** | 134 /** |
| 135 * Sets the handler that is called if there is an error while listing | 135 * Sets the handler that is called if there is an error while listing |
| 136 * or creating directories. | 136 * or creating directories. |
| 137 */ | 137 */ |
| 138 void set onError(void onError(String error)); | 138 void set onError(void onError(Exception e)); |
| 139 | 139 |
| 140 /** | 140 /** |
| 141 * Gets the path of this directory. | 141 * Gets the path of this directory. |
| 142 */ | 142 */ |
| 143 final String path; | 143 final String path; |
| 144 } | 144 } |
| 145 | 145 |
| 146 | 146 |
| 147 class DirectoryIOException implements Exception { | 147 class DirectoryIOException implements Exception { |
| 148 const DirectoryIOException([String this.message = "", | 148 const DirectoryIOException([String this.message = "", |
| 149 String this.path = "", |
| 149 OSError this.osError = null]); | 150 OSError this.osError = null]); |
| 150 String toString() { | 151 String toString() { |
| 151 StringBuffer sb = new StringBuffer(); | 152 StringBuffer sb = new StringBuffer(); |
| 152 sb.add("DirectoryIOException"); | 153 sb.add("DirectoryIOException"); |
| 153 if (!message.isEmpty()) { | 154 if (!message.isEmpty()) { |
| 154 sb.add(": $message"); | 155 sb.add(": $message"); |
| 156 if (path != null) { |
| 157 sb.add(", path = $path"); |
| 158 } |
| 155 if (osError != null) { | 159 if (osError != null) { |
| 156 sb.add(" ($osError)"); | 160 sb.add(" ($osError)"); |
| 157 } | 161 } |
| 158 } else if (osError != null) { | 162 } else if (osError != null) { |
| 159 sb.add(": $osError"); | 163 sb.add(": $osError"); |
| 164 if (path != null) { |
| 165 sb.add(", path = $path"); |
| 166 } |
| 160 } | 167 } |
| 161 return sb.toString(); | 168 return sb.toString(); |
| 162 } | 169 } |
| 163 final String message; | 170 final String message; |
| 171 final String path; |
| 164 final OSError osError; | 172 final OSError osError; |
| 165 } | 173 } |
| OLD | NEW |