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

Unified Diff: chrome/browser/extensions/api/socket/udp_socket.h

Issue 10273016: Refactor the socket API to remove onEvent callback in socket.create() function. (Closed) Base URL: http://git.chromium.org/chromium/src.git@master
Patch Set: Update Created 8 years, 7 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: chrome/browser/extensions/api/socket/udp_socket.h
diff --git a/chrome/browser/extensions/api/socket/udp_socket.h b/chrome/browser/extensions/api/socket/udp_socket.h
index 053398df005230deed58e5e1925078c598dfb709..e09193ce5f0b949e2c7721503956a767198238d5 100644
--- a/chrome/browser/extensions/api/socket/udp_socket.h
+++ b/chrome/browser/extensions/api/socket/udp_socket.h
@@ -20,23 +20,45 @@ class UDPSocket : public Socket {
explicit UDPSocket(APIResourceEventNotifier* event_notifier);
virtual ~UDPSocket();
- virtual int Connect(const std::string& address, int port) OVERRIDE;
+ virtual void Connect(const std::string& address,
+ int port,
+ const CompletionCallback& callback) OVERRIDE;
virtual void Disconnect() OVERRIDE;
virtual int Bind(const std::string& address, int port) OVERRIDE;
- virtual int Read(scoped_refptr<net::IOBuffer> io_buffer,
- int io_buffer_size) OVERRIDE;
- virtual int Write(scoped_refptr<net::IOBuffer> io_buffer,
- int bytes) OVERRIDE;
- virtual int RecvFrom(scoped_refptr<net::IOBuffer> io_buffer,
- int io_buffer_size,
- net::IPEndPoint* address) OVERRIDE;
- virtual int SendTo(scoped_refptr<net::IOBuffer> io_buffer,
- int byte_count,
- const std::string& address,
- int port) OVERRIDE;
+ virtual void Read(int count,
+ const ReadCompletionCallback& callback) OVERRIDE;
+ virtual void Write(scoped_refptr<net::IOBuffer> io_buffer,
+ int bytes,
+ const CompletionCallback& callback) OVERRIDE;
+ virtual void RecvFrom(int count,
+ const RecvFromCompletionCallback& callback) OVERRIDE;
+ virtual void SendTo(scoped_refptr<net::IOBuffer> io_buffer,
+ int byte_count,
+ const std::string& address,
+ int port,
+ const CompletionCallback& callback) OVERRIDE;
private:
+ // Make net::IPEndPoint can be refcounted
+ typedef base::RefCountedData<net::IPEndPoint> IPEndPoint;
+
+ virtual void OnReadComplete(scoped_refptr<net::IOBuffer> io_buffer,
+ int result);
+ virtual void OnWriteComplete(int result);
+ virtual void OnRecvFromComplete(scoped_refptr<net::IOBuffer> io_buffer,
+ scoped_refptr<IPEndPoint> address,
+ int result);
+ virtual void OnSendToComplete(int result);
+
net::UDPSocket socket_;
+
+ ReadCompletionCallback read_callback_;
+
+ CompletionCallback write_callback_;
+
+ RecvFromCompletionCallback recv_from_callback_;
+
+ CompletionCallback send_to_callback_;
};
} // namespace extensions
« no previous file with comments | « chrome/browser/extensions/api/socket/tcp_socket_unittest.cc ('k') | chrome/browser/extensions/api/socket/udp_socket.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698