Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(735)

Unified Diff: net/socket/socket.cc

Issue 2593063003: Add Socket::ReadIfReady() (Closed)
Patch Set: Fix tests for real Created 3 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: net/socket/socket.cc
diff --git a/net/socket/socket.h b/net/socket/socket.cc
similarity index 5%
copy from net/socket/socket.h
copy to net/socket/socket.cc
index cda54063f3059e76726c896b5e6ae87508a5f483..065f94feb4e9e8021ea41e6d1a8c66f8bca041ca 100644
--- a/net/socket/socket.h
+++ b/net/socket/socket.cc
@@ -1,64 +1,19 @@
-// Copyright (c) 2011 The Chromium Authors. All rights reserved.
+// Copyright 2016 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.
-#ifndef NET_SOCKET_SOCKET_H_
-#define NET_SOCKET_SOCKET_H_
+#include "net/socket/socket.h"
-#include <stdint.h>
-
-#include "net/base/completion_callback.h"
-#include "net/base/net_export.h"
+#include "net/base/net_errors.h"
namespace net {
-class IOBuffer;
-
-// Represents a read/write socket.
-class NET_EXPORT Socket {
- public:
- virtual ~Socket() {}
-
- // Reads data, up to |buf_len| bytes, from the socket. The number of bytes
- // read is returned, or an error is returned upon failure.
- // ERR_SOCKET_NOT_CONNECTED should be returned if the socket is not currently
- // connected. Zero is returned once to indicate end-of-file; the return value
- // of subsequent calls is undefined, and may be OS dependent. ERR_IO_PENDING
- // is returned if the operation could not be completed synchronously, in which
- // case the result will be passed to the callback when available. If the
- // operation is not completed immediately, the socket acquires a reference to
- // the provided buffer until the callback is invoked or the socket is
- // closed. If the socket is Disconnected before the read completes, the
- // callback will not be invoked.
- virtual int Read(IOBuffer* buf, int buf_len,
- const CompletionCallback& callback) = 0;
+const char Socket::kReadIfReadyTrialName[] = "SocketReadIfReady";
davidben 2017/02/01 22:25:57 I think base::Feature is the preferred way to do t
xunjieli 2017/02/03 16:35:33 Done. Neat!
- // Writes data, up to |buf_len| bytes, to the socket. Note: data may be
- // written partially. The number of bytes written is returned, or an error
- // is returned upon failure. ERR_SOCKET_NOT_CONNECTED should be returned if
- // the socket is not currently connected. The return value when the
- // connection is closed is undefined, and may be OS dependent. ERR_IO_PENDING
- // is returned if the operation could not be completed synchronously, in which
- // case the result will be passed to the callback when available. If the
- // operation is not completed immediately, the socket acquires a reference to
- // the provided buffer until the callback is invoked or the socket is
- // closed. Implementations of this method should not modify the contents
- // of the actual buffer that is written to the socket. If the socket is
- // Disconnected before the write completes, the callback will not be invoked.
- virtual int Write(IOBuffer* buf, int buf_len,
- const CompletionCallback& callback) = 0;
-
- // Set the receive buffer size (in bytes) for the socket.
- // Note: changing this value can affect the TCP window size on some platforms.
- // Returns a net error code.
- virtual int SetReceiveBufferSize(int32_t size) = 0;
-
- // Set the send buffer size (in bytes) for the socket.
- // Note: changing this value can affect the TCP window size on some platforms.
- // Returns a net error code.
- virtual int SetSendBufferSize(int32_t size) = 0;
-};
+int Socket::ReadIfReady(IOBuffer* buf,
+ int buf_len,
+ const CompletionCallback& callback) {
+ return ERR_READ_IF_READY_NOT_IMPLEMENTED;
+}
} // namespace net
-
-#endif // NET_SOCKET_SOCKET_H_

Powered by Google App Engine
This is Rietveld 408576698