Index: mojo/services/network/public/interfaces/http_connection.mojom |
diff --git a/mojo/services/network/public/interfaces/http_connection.mojom b/mojo/services/network/public/interfaces/http_connection.mojom |
new file mode 100644 |
index 0000000000000000000000000000000000000000..d6fe5ef8faaae21fa4a03ec0ed49f493269aab7e |
--- /dev/null |
+++ b/mojo/services/network/public/interfaces/http_connection.mojom |
@@ -0,0 +1,35 @@ |
+// Copyright 2015 The Chromium Authors. All rights reserved. |
+// Use of this source code is governed by a BSD-style license that can be |
+// found in the LICENSE file. |
+ |
+module mojo; |
+ |
+import "network/public/interfaces/url_loader.mojom"; |
+import "network/public/interfaces/network_error.mojom"; |
+import "network/public/interfaces/web_socket.mojom"; |
+ |
+interface HttpConnection { |
+ // Sets the OS send buffer size (in bytes) for the underlying socket. |
+ SetSendBufferSize(uint32 size) => (NetworkError result); |
+ |
+ // Sets the OS receive buffer size (in bytes) for the underlying socket. |
+ SetReceiveBufferSize(uint32 size) => (NetworkError result); |
+}; |
+ |
+interface HttpConnectionDelegate { |
+ // Called when an HTTP request is received. |
+ OnReceivedRequest(URLRequest request) => (URLResponse response); |
+ |
+ // Called with an WebSocket request is received. |
+ // |
+ // If the delegate decides to accept the request, it should respond with |
+ // non-null arguments in the callback. |send_stream| is a data pipe which |
+ // should remain open for the lifetime of the WebSocket. Data to send over the |
+ // WebSocket should be written to the producer end of the |send_stream|. |
+ // |web_socket| will be already connected. There is no need to call Connect() |
+ // on it. But |client| will still receive a DidConnect() notification. |
+ OnReceivedWebSocketRequest(URLRequest request) |
+ => (WebSocket&? web_socket, |
+ handle<data_pipe_consumer>? send_stream, |
+ WebSocketClient? client); |
+}; |