| 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 /** | 8 /** |
| 9 * [InternetAddressType] is the type an [InternetAddress]. Currently, | 9 * [InternetAddressType] is the type an [InternetAddress]. Currently, |
| 10 * IP version 4 (IPv4) and IP version 6 (IPv6) are supported. | 10 * IP version 4 (IPv4) and IP version 6 (IPv6) are supported. |
| (...skipping 239 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 250 int port, | 250 int port, |
| 251 {int backlog: 0, | 251 {int backlog: 0, |
| 252 bool v6Only: false}); | 252 bool v6Only: false}); |
| 253 | 253 |
| 254 /** | 254 /** |
| 255 * Returns the port used by this socket. | 255 * Returns the port used by this socket. |
| 256 */ | 256 */ |
| 257 int get port; | 257 int get port; |
| 258 | 258 |
| 259 /** | 259 /** |
| 260 * Closes the socket. | 260 * Closes the socket. The returned future completes when the socket |
| 261 * is fully closed and is no longer bound. |
| 261 */ | 262 */ |
| 262 void close(); | 263 Future close(); |
| 263 } | 264 } |
| 264 | 265 |
| 265 /** | 266 /** |
| 266 * The [SocketDirection] is used as a parameter to [Socket.close] and | 267 * The [SocketDirection] is used as a parameter to [Socket.close] and |
| 267 * [RawSocket.close] to close a socket in the specified direction(s). | 268 * [RawSocket.close] to close a socket in the specified direction(s). |
| 268 */ | 269 */ |
| 269 class SocketDirection { | 270 class SocketDirection { |
| 270 static const SocketDirection RECEIVE = const SocketDirection._(0); | 271 static const SocketDirection RECEIVE = const SocketDirection._(0); |
| 271 static const SocketDirection SEND = const SocketDirection._(1); | 272 static const SocketDirection SEND = const SocketDirection._(1); |
| 272 static const SocketDirection BOTH = const SocketDirection._(2); | 273 static const SocketDirection BOTH = const SocketDirection._(2); |
| (...skipping 20 matching lines...) Expand all Loading... |
| 293 final _value; | 294 final _value; |
| 294 } | 295 } |
| 295 | 296 |
| 296 /** | 297 /** |
| 297 * Events for the [RawSocket]. | 298 * Events for the [RawSocket]. |
| 298 */ | 299 */ |
| 299 class RawSocketEvent { | 300 class RawSocketEvent { |
| 300 static const RawSocketEvent READ = const RawSocketEvent._(0); | 301 static const RawSocketEvent READ = const RawSocketEvent._(0); |
| 301 static const RawSocketEvent WRITE = const RawSocketEvent._(1); | 302 static const RawSocketEvent WRITE = const RawSocketEvent._(1); |
| 302 static const RawSocketEvent READ_CLOSED = const RawSocketEvent._(2); | 303 static const RawSocketEvent READ_CLOSED = const RawSocketEvent._(2); |
| 304 static const RawSocketEvent CLOSED = const RawSocketEvent._(3); |
| 303 const RawSocketEvent._(this._value); | 305 const RawSocketEvent._(this._value); |
| 304 final int _value; | 306 final int _value; |
| 305 String toString() { | 307 String toString() { |
| 306 return ['RawSocketEvent:READ', | 308 return ['RawSocketEvent:READ', |
| 307 'RawSocketEvent:WRITE', | 309 'RawSocketEvent:WRITE', |
| 308 'RawSocketEvent:READ_CLOSED'][_value]; | 310 'RawSocketEvent:READ_CLOSED', |
| 311 'RawSocketEvent:CLOSED'][_value]; |
| 309 } | 312 } |
| 310 } | 313 } |
| 311 | 314 |
| 312 /** | 315 /** |
| 313 * The [RawSocket] is a low-level interface to a socket, exposing the raw | 316 * The [RawSocket] is a low-level interface to a socket, exposing the raw |
| 314 * events signaled by the system. It's a [Stream] of [RawSocketEvent]s. | 317 * events signaled by the system. It's a [Stream] of [RawSocketEvent]s. |
| 315 */ | 318 */ |
| 316 abstract class RawSocket implements Stream<RawSocketEvent> { | 319 abstract class RawSocket implements Stream<RawSocketEvent> { |
| 317 /** | 320 /** |
| 318 * Creates a new socket connection to the host and port and returns a [Future] | 321 * Creates a new socket connection to the host and port and returns a [Future] |
| (...skipping 175 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 494 } else { | 497 } else { |
| 495 sb.write(", address = ${address.address}"); | 498 sb.write(", address = ${address.address}"); |
| 496 } | 499 } |
| 497 } | 500 } |
| 498 if (port != null) { | 501 if (port != null) { |
| 499 sb.write(", port = $port"); | 502 sb.write(", port = $port"); |
| 500 } | 503 } |
| 501 return sb.toString(); | 504 return sb.toString(); |
| 502 } | 505 } |
| 503 } | 506 } |
| OLD | NEW |