| OLD | NEW |
| 1 // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2011, 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 interface File factory _File { | 5 interface File factory _File { |
| 6 /** | 6 /** |
| 7 * Create a File object. | 7 * Create a File object. |
| 8 */ | 8 */ |
| 9 File(String name); | 9 File(String name); |
| 10 | 10 |
| (...skipping 70 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 81 int readListSync(List<int> buffer, int offset, int bytes); | 81 int readListSync(List<int> buffer, int offset, int bytes); |
| 82 | 82 |
| 83 /** | 83 /** |
| 84 * Write a single byte to the file. If the byte cannot be written | 84 * Write a single byte to the file. If the byte cannot be written |
| 85 * the [errorHandler] is called. When all pending write operations | 85 * the [errorHandler] is called. When all pending write operations |
| 86 * have finished the [noPendingWriteHandler] is called. | 86 * have finished the [noPendingWriteHandler] is called. |
| 87 */ | 87 */ |
| 88 void writeByte(int value); | 88 void writeByte(int value); |
| 89 | 89 |
| 90 /** | 90 /** |
| 91 * Synchronously write a single byte to the file. Returns true if | 91 * Synchronously write a single byte to the file. Returns the |
| 92 * the byte was successfully written and false otherwise. | 92 * number of bytes successfully written. |
| 93 */ | 93 */ |
| 94 bool writeByteSync(int value); | 94 int writeByteSync(int value); |
| 95 | 95 |
| 96 /** | 96 /** |
| 97 * Write a List<int> to the file. If the list cannot be written the | 97 * Write a List<int> to the file. If the list cannot be written the |
| 98 * [errorHandler] is called. When all pending write operations have | 98 * [errorHandler] is called. When all pending write operations have |
| 99 * finished the [noPendingWriteHandler] is called. | 99 * finished the [noPendingWriteHandler] is called. |
| 100 */ | 100 */ |
| 101 void writeList(List<int> buffer, int offset, int bytes); | 101 void writeList(List<int> buffer, int offset, int bytes); |
| 102 | 102 |
| 103 /** | 103 /** |
| 104 * Synchronously write a List<int> to the file. Returns true if the | 104 * Synchronously write a List<int> to the file. Returns the number |
| 105 * list was successfully written and false otherwise. | 105 * of bytes successfully written. |
| 106 */ | 106 */ |
| 107 bool writeListSync(List<int> buffer, int offset, int bytes); | 107 int writeListSync(List<int> buffer, int offset, int bytes); |
| 108 | 108 |
| 109 /** | 109 /** |
| 110 * Write a string to the file. If the string cannot be written the | 110 * Write a string to the file. If the string cannot be written the |
| 111 * [errorHandler] is called. When all pending write operations have | 111 * [errorHandler] is called. When all pending write operations have |
| 112 * finished the [noPendingWriteHandler] is called. | 112 * finished the [noPendingWriteHandler] is called. |
| 113 */ | 113 */ |
| 114 // TODO(ager): writeString should take an encoding. | 114 // TODO(ager): writeString should take an encoding. |
| 115 void writeString(String string); | 115 void writeString(String string); |
| 116 | 116 |
| 117 /** | 117 /** |
| 118 * Synchronously write a single string to the file. Returns true if | 118 * Synchronously write a single string to the file. Returns the number |
| 119 * the string was successfully written and false otherwise. | 119 * of characters successfully written. |
| 120 */ | 120 */ |
| 121 // TODO(ager): writeStringSync should take an encoding. | 121 // TODO(ager): writeStringSync should take an encoding. |
| 122 bool writeStringSync(String string); | 122 int writeStringSync(String string); |
| 123 | 123 |
| 124 /** | 124 /** |
| 125 * Get the current position of the file. When the operation | 125 * Get the current position of the file. When the operation |
| 126 * completes the [positionHandler] is called with the position. | 126 * completes the [positionHandler] is called with the position. |
| 127 */ | 127 */ |
| 128 void position(); | 128 void position(); |
| 129 | 129 |
| 130 /** | 130 /** |
| 131 * Synchronously get the current position of the file. | 131 * Synchronously get the current position of the file. |
| 132 */ | 132 */ |
| 133 int positionSync(); | 133 int positionSync(); |
| 134 | 134 |
| 135 /** | 135 /** |
| 136 * Get the length of the file. When the operation completes the | 136 * Get the length of the file. When the operation completes the |
| 137 * [lengthHandler] is called with the length. | 137 * [lengthHandler] is called with the length. |
| 138 */ | 138 */ |
| 139 void length(); | 139 void length(); |
| 140 | 140 |
| 141 /** | 141 /** |
| 142 * Get the length of the file. When the operation completes the | 142 * Get the length of the file. When the operation completes the |
| 143 * [lengthHandler] is called with the length. | 143 * [lengthHandler] is called with the length. |
| 144 */ | 144 */ |
| 145 int lengthSync(); | 145 int lengthSync(); |
| 146 | 146 |
| 147 /** | 147 /** |
| 148 * Flush the contents of the file to disk. If there are no pending | 148 * Flush the contents of the file to disk. The [flushHandler] is |
| 149 * write operation after the flush operation completes, the | 149 * called when the flush operation completes. |
| 150 * [noPendingWriteHandler] is called. | |
| 151 */ | 150 */ |
| 152 void flush(); | 151 void flush(); |
| 153 | 152 |
| 154 /** | 153 /** |
| 155 * Synchronously flush the contents of the file to disk. | 154 * Synchronously flush the contents of the file to disk. |
| 156 */ | 155 */ |
| 157 void flushSync(); | 156 void flushSync(); |
| 158 | 157 |
| 159 /** | 158 /** |
| 160 * Create a new independent input stream for the file. The file | 159 * Create a new independent input stream for the file. The file |
| (...skipping 13 matching lines...) Expand all Loading... |
| 174 String get name(); | 173 String get name(); |
| 175 | 174 |
| 176 // Event handlers. | 175 // Event handlers. |
| 177 void set existsHandler(void handler(bool exists)); | 176 void set existsHandler(void handler(bool exists)); |
| 178 void set createHandler(void handler()); | 177 void set createHandler(void handler()); |
| 179 void set openHandler(void handler()); | 178 void set openHandler(void handler()); |
| 180 void set closeHandler(void handler()); | 179 void set closeHandler(void handler()); |
| 181 void set readByteHandler(void handler(int byte)); | 180 void set readByteHandler(void handler(int byte)); |
| 182 void set readListHandler(void handler(int read)); | 181 void set readListHandler(void handler(int read)); |
| 183 void set noPendingWriteHandler(void handler()); | 182 void set noPendingWriteHandler(void handler()); |
| 183 void set positionHandler(void handler(int position)); |
| 184 void set lengthHandler(void handler(int length)); |
| 185 void set flushHandler(void handler()); |
| 184 void set errorHandler(void handler(String error)); | 186 void set errorHandler(void handler(String error)); |
| 185 } | 187 } |
| 186 | 188 |
| 187 | 189 |
| 188 interface FileInputStream extends InputStream { | 190 interface FileInputStream extends InputStream { |
| 189 void close(); | 191 void close(); |
| 190 } | 192 } |
| 191 | 193 |
| 192 | 194 |
| 193 interface FileOutputStream extends OutputStream { | 195 interface FileOutputStream extends OutputStream { |
| 194 } | 196 } |
| 195 | 197 |
| 196 | 198 |
| 197 class FileIOException implements Exception { | 199 class FileIOException implements Exception { |
| 198 const FileIOException([String this.message = ""]); | 200 const FileIOException([String this.message = ""]); |
| 199 String toString() => "FileIOException: $message"; | 201 String toString() => "FileIOException: $message"; |
| 200 final String message; | 202 final String message; |
| 201 } | 203 } |
| OLD | NEW |