Index: chrome/browser/extensions/api/sockets_udp/udp_socket_event_dispatcher.h |
diff --git a/chrome/browser/extensions/api/sockets_udp/udp_socket_event_dispatcher.h b/chrome/browser/extensions/api/sockets_udp/udp_socket_event_dispatcher.h |
deleted file mode 100644 |
index d49b08c6ef778a792e3fb42fd7cdc5c42c571910..0000000000000000000000000000000000000000 |
--- a/chrome/browser/extensions/api/sockets_udp/udp_socket_event_dispatcher.h |
+++ /dev/null |
@@ -1,93 +0,0 @@ |
-// Copyright 2013 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 CHROME_BROWSER_EXTENSIONS_API_SOCKETS_UDP_UDP_SOCKET_EVENT_DISPATCHER_H_ |
-#define CHROME_BROWSER_EXTENSIONS_API_SOCKETS_UDP_UDP_SOCKET_EVENT_DISPATCHER_H_ |
- |
-#include "chrome/browser/extensions/api/sockets_udp/sockets_udp_api.h" |
-#include "extensions/browser/api/api_resource_manager.h" |
- |
-namespace content { |
-class BrowserContext; |
-} |
- |
-namespace extensions { |
-struct Event; |
-class ResumableUDPSocket; |
-} |
- |
-namespace extensions { |
-namespace api { |
- |
-// Dispatch events related to "sockets.udp" sockets from callback on native |
-// socket instances. There is one instance per profile. |
-class UDPSocketEventDispatcher |
- : public BrowserContextKeyedAPI, |
- public base::SupportsWeakPtr<UDPSocketEventDispatcher> { |
- public: |
- explicit UDPSocketEventDispatcher(content::BrowserContext* context); |
- virtual ~UDPSocketEventDispatcher(); |
- |
- // Socket is active, start receving from it. |
- void OnSocketBind(const std::string& extension_id, int socket_id); |
- |
- // Socket is active again, start receiving data from it. |
- void OnSocketResume(const std::string& extension_id, int socket_id); |
- |
- // BrowserContextKeyedAPI implementation. |
- static BrowserContextKeyedAPIFactory<UDPSocketEventDispatcher>* |
- GetFactoryInstance(); |
- |
- // Convenience method to get the SocketEventDispatcher for a profile. |
- static UDPSocketEventDispatcher* Get(content::BrowserContext* context); |
- |
- private: |
- typedef ApiResourceManager<ResumableUDPSocket>::ApiResourceData SocketData; |
- friend class BrowserContextKeyedAPIFactory<UDPSocketEventDispatcher>; |
- // BrowserContextKeyedAPI implementation. |
- static const char* service_name() { return "UDPSocketEventDispatcher"; } |
- static const bool kServiceHasOwnInstanceInIncognito = true; |
- static const bool kServiceIsNULLWhileTesting = true; |
- |
- // base::Bind supports methods with up to 6 parameters. ReceiveParams is used |
- // as a workaround that limitation for invoking StartReceive. |
- struct ReceiveParams { |
- ReceiveParams(); |
- ~ReceiveParams(); |
- |
- content::BrowserThread::ID thread_id; |
- void* browser_context_id; |
- std::string extension_id; |
- scoped_refptr<SocketData> sockets; |
- int socket_id; |
- }; |
- |
- // Start a receive and register a callback. |
- static void StartReceive(const ReceiveParams& params); |
- |
- // Called when socket receive data. |
- static void ReceiveCallback(const ReceiveParams& params, |
- int bytes_read, |
- scoped_refptr<net::IOBuffer> io_buffer, |
- const std::string& address, |
- int port); |
- |
- // Post an extension event from IO to UI thread |
- static void PostEvent(const ReceiveParams& params, scoped_ptr<Event> event); |
- |
- // Dispatch an extension event on to EventRouter instance on UI thread. |
- static void DispatchEvent(void* browser_context_id, |
- const std::string& extension_id, |
- scoped_ptr<Event> event); |
- |
- // Usually IO thread (except for unit testing). |
- content::BrowserThread::ID thread_id_; |
- content::BrowserContext* const browser_context_; |
- scoped_refptr<SocketData> sockets_; |
-}; |
- |
-} // namespace api |
-} // namespace extensions |
- |
-#endif // CHROME_BROWSER_EXTENSIONS_API_SOCKETS_UDP_UDP_SOCKET_EVENT_DISPATCHER_H_ |