OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef CHROME_RENDERER_CHROME_RENDER_PROCESS_OBSERVER_H_ | 5 #ifndef CHROME_RENDERER_CHROME_RENDER_PROCESS_OBSERVER_H_ |
6 #define CHROME_RENDERER_CHROME_RENDER_PROCESS_OBSERVER_H_ | 6 #define CHROME_RENDERER_CHROME_RENDER_PROCESS_OBSERVER_H_ |
7 | 7 |
8 #include <string> | 8 #include <string> |
9 | 9 |
10 #include "base/compiler_specific.h" | 10 #include "base/compiler_specific.h" |
(...skipping 15 matching lines...) Expand all Loading... |
26 // happen. If a few messages are related, they should probably have their own | 26 // happen. If a few messages are related, they should probably have their own |
27 // observer. | 27 // observer. |
28 class ChromeRenderProcessObserver : public content::RenderProcessObserver { | 28 class ChromeRenderProcessObserver : public content::RenderProcessObserver { |
29 public: | 29 public: |
30 explicit ChromeRenderProcessObserver( | 30 explicit ChromeRenderProcessObserver( |
31 ChromeContentRendererClient* client); | 31 ChromeContentRendererClient* client); |
32 virtual ~ChromeRenderProcessObserver(); | 32 virtual ~ChromeRenderProcessObserver(); |
33 | 33 |
34 static bool is_incognito_process() { return is_incognito_process_; } | 34 static bool is_incognito_process() { return is_incognito_process_; } |
35 | 35 |
36 // Needs to be called by RenderViews in case of navigations to execute | |
37 // any 'clear cache' commands that were delayed until the next navigation. | |
38 void ExecutePendingClearCache(); | |
39 | |
40 // Returns a pointer to the content setting rules owned by | 36 // Returns a pointer to the content setting rules owned by |
41 // |ChromeRenderProcessObserver|. | 37 // |ChromeRenderProcessObserver|. |
42 const RendererContentSettingRules* content_setting_rules() const; | 38 const RendererContentSettingRules* content_setting_rules() const; |
43 | 39 |
44 private: | 40 private: |
45 // RenderProcessObserver implementation. | 41 // RenderProcessObserver implementation. |
46 virtual bool OnControlMessageReceived(const IPC::Message& message) OVERRIDE; | 42 virtual bool OnControlMessageReceived(const IPC::Message& message) OVERRIDE; |
47 virtual void WebKitInitialized() OVERRIDE; | 43 virtual void WebKitInitialized() OVERRIDE; |
48 virtual void OnRenderProcessShutdown() OVERRIDE; | 44 virtual void OnRenderProcessShutdown() OVERRIDE; |
49 | 45 |
50 void OnSetIsIncognitoProcess(bool is_incognito_process); | 46 void OnSetIsIncognitoProcess(bool is_incognito_process); |
51 void OnSetContentSettingsForCurrentURL( | 47 void OnSetContentSettingsForCurrentURL( |
52 const GURL& url, const ContentSettings& content_settings); | 48 const GURL& url, const ContentSettings& content_settings); |
53 void OnSetContentSettingRules(const RendererContentSettingRules& rules); | 49 void OnSetContentSettingRules(const RendererContentSettingRules& rules); |
54 void OnSetCacheCapacities(size_t min_dead_capacity, | |
55 size_t max_dead_capacity, | |
56 size_t capacity); | |
57 // If |on_navigation| is true, the clearing is delayed until the next | |
58 // navigation event. | |
59 void OnClearCache(bool on_navigation); | |
60 void OnGetCacheResourceStats(); | 50 void OnGetCacheResourceStats(); |
61 void OnSetFieldTrialGroup(const std::string& fiel_trial_name, | 51 void OnSetFieldTrialGroup(const std::string& fiel_trial_name, |
62 const std::string& group_name); | 52 const std::string& group_name); |
63 void OnGetV8HeapStats(); | 53 void OnGetV8HeapStats(); |
64 | 54 |
65 static bool is_incognito_process_; | 55 static bool is_incognito_process_; |
66 scoped_ptr<content::ResourceDispatcherDelegate> resource_delegate_; | 56 scoped_ptr<content::ResourceDispatcherDelegate> resource_delegate_; |
67 ChromeContentRendererClient* client_; | 57 ChromeContentRendererClient* client_; |
68 // If true, the web cache shall be cleared before the next navigation event. | 58 // If true, the web cache shall be cleared before the next navigation event. |
69 bool clear_cache_pending_; | 59 bool clear_cache_pending_; |
70 RendererContentSettingRules content_setting_rules_; | 60 RendererContentSettingRules content_setting_rules_; |
71 | 61 |
72 bool webkit_initialized_; | 62 bool webkit_initialized_; |
73 size_t pending_cache_min_dead_capacity_; | |
74 size_t pending_cache_max_dead_capacity_; | |
75 size_t pending_cache_capacity_; | |
76 | 63 |
77 DISALLOW_COPY_AND_ASSIGN(ChromeRenderProcessObserver); | 64 DISALLOW_COPY_AND_ASSIGN(ChromeRenderProcessObserver); |
78 }; | 65 }; |
79 | 66 |
80 #endif // CHROME_RENDERER_CHROME_RENDER_PROCESS_OBSERVER_H_ | 67 #endif // CHROME_RENDERER_CHROME_RENDER_PROCESS_OBSERVER_H_ |
OLD | NEW |