OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 [DartPackage="mojo_services"] | 5 [DartPackage="mojo_services"] |
6 module mojo; | 6 module mojo; |
7 | 7 |
8 import "mojo/public/interfaces/network/network_error.mojom"; | 8 import "mojo/public/interfaces/network/network_error.mojom"; |
9 import "network/public/interfaces/net_address.mojom"; | 9 import "network/interfaces/net_address.mojom"; |
10 import "network/public/interfaces/tcp_connected_socket.mojom"; | 10 import "network/interfaces/tcp_connected_socket.mojom"; |
11 import "network/public/interfaces/tcp_server_socket.mojom"; | 11 import "network/interfaces/tcp_server_socket.mojom"; |
12 | 12 |
13 // Represents a TCP socket that is bound to a local address and port, but | 13 // Represents a TCP socket that is bound to a local address and port, but |
14 // is not yet in a listening or connected state. | 14 // is not yet in a listening or connected state. |
15 // | 15 // |
16 // A bound socket can be used to create a server socket listening on the | 16 // A bound socket can be used to create a server socket listening on the |
17 // local address, or it can be used to create a client socket by connecting to | 17 // local address, or it can be used to create a client socket by connecting to |
18 // a remote host. Once StartListening or Connect is called on the bound socket, | 18 // a remote host. Once StartListening or Connect is called on the bound socket, |
19 // ownership of the underlying socket will be transferred to the connected or | 19 // ownership of the underlying socket will be transferred to the connected or |
20 // server socket, and the bound socket may be closed. | 20 // server socket, and the bound socket may be closed. |
21 interface TCPBoundSocket { | 21 interface TCPBoundSocket { |
22 // Puts the socket into server mode, awaiting incoming connections. | 22 // Puts the socket into server mode, awaiting incoming connections. |
23 // | 23 // |
24 // Once this function is called, neither StartListening nor Connect can be | 24 // Once this function is called, neither StartListening nor Connect can be |
25 // used on this socket again. | 25 // used on this socket again. |
26 StartListening(TCPServerSocket& server) => (NetworkError result); | 26 StartListening(TCPServerSocket& server) => (NetworkError result); |
27 | 27 |
28 // Puts this socket into client mode by connecting to a remote host. If you | 28 // Puts this socket into client mode by connecting to a remote host. If you |
29 // do not care about the local address or port, you can call | 29 // do not care about the local address or port, you can call |
30 // NetworkService.CreateTCPConnectedSocket to connect directly and skip the | 30 // NetworkService.CreateTCPConnectedSocket to connect directly and skip the |
31 // "bound" state. | 31 // "bound" state. |
32 // | 32 // |
33 // Once this function is called, neither StartListening nor Connect can be | 33 // Once this function is called, neither StartListening nor Connect can be |
34 // used on this socket again. | 34 // used on this socket again. |
35 Connect(NetAddress remote_address, | 35 Connect(NetAddress remote_address, |
36 handle<data_pipe_consumer> send_stream, | 36 handle<data_pipe_consumer> send_stream, |
37 handle<data_pipe_producer> receive_stream, | 37 handle<data_pipe_producer> receive_stream, |
38 TCPConnectedSocket& client_socket) | 38 TCPConnectedSocket& client_socket) |
39 => (NetworkError result); | 39 => (NetworkError result); |
40 }; | 40 }; |
OLD | NEW |