Index: chrome/browser/devtools/devtools_network_controller.h |
diff --git a/chrome/browser/devtools/devtools_network_controller.h b/chrome/browser/devtools/devtools_network_controller.h |
index a9edd0fe31d5d10cac0f9bb15c603243018feb8c..5504aa7c7413fb24ba6346db9767da50d5a70f8e 100644 |
--- a/chrome/browser/devtools/devtools_network_controller.h |
+++ b/chrome/browser/devtools/devtools_network_controller.h |
@@ -7,32 +7,17 @@ |
#include <set> |
#include <string> |
-#include <vector> |
+#include "base/containers/scoped_ptr_hash_map.h" |
#include "base/macros.h" |
#include "base/memory/ref_counted.h" |
#include "base/memory/scoped_ptr.h" |
#include "base/memory/weak_ptr.h" |
#include "base/threading/thread_checker.h" |
-#include "base/timer/timer.h" |
class DevToolsNetworkConditions; |
+class DevToolsNetworkRealm; |
class DevToolsNetworkTransaction; |
-class GURL; |
-class Profile; |
- |
-namespace base { |
-class TimeDelta; |
-class TimeTicks; |
-} |
- |
-namespace content { |
-class ResourceContext; |
-} |
- |
-namespace net { |
-struct HttpRequestInfo; |
-} |
namespace test { |
class DevToolsNetworkControllerHelper; |
@@ -51,10 +36,11 @@ class DevToolsNetworkController { |
// Applies network emulation configuration. |
void SetNetworkState( |
+ const std::string& client_id, |
const scoped_refptr<DevToolsNetworkConditions> conditions); |
- bool ShouldFail(const net::HttpRequestInfo* request); |
- bool ShouldThrottle(const net::HttpRequestInfo* request); |
+ bool ShouldFail(const DevToolsNetworkTransaction* transaction); |
+ bool ShouldThrottle(const DevToolsNetworkTransaction* transaction); |
void ThrottleTransaction(DevToolsNetworkTransaction* transaction); |
protected: |
@@ -64,24 +50,22 @@ class DevToolsNetworkController { |
// Controller must be constructed on IO thread. |
base::ThreadChecker thread_checker_; |
- typedef scoped_refptr<DevToolsNetworkConditions> Conditions; |
- |
- void SetNetworkStateOnIO(const Conditions conditions); |
+ void SetNetworkStateOnIO( |
+ const std::string& client_id, |
+ const scoped_refptr<DevToolsNetworkConditions> conditions); |
typedef std::set<DevToolsNetworkTransaction*> Transactions; |
Transactions transactions_; |
- Conditions conditions_; |
+ typedef scoped_ptr<DevToolsNetworkRealm> Realm; |
+ typedef base::ScopedPtrHashMap<std::string, DevToolsNetworkRealm> Realms; |
+ Realms realms_; |
- void UpdateThrottles(); |
- void ArmTimer(); |
- void OnTimer(); |
+ DevToolsNetworkRealm* FindRealm( |
+ const DevToolsNetworkTransaction* transaction); |
- std::vector<DevToolsNetworkTransaction*> throttled_transactions_; |
- base::OneShotTimer<DevToolsNetworkController> timer_; |
- base::TimeTicks offset_; |
- base::TimeDelta tick_length_; |
- uint64_t last_tick_; |
+ bool has_offline_realms_; |
+ bool has_throttling_realms_; |
base::WeakPtrFactory<DevToolsNetworkController> weak_ptr_factory_; |