| OLD | NEW |
| 1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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 CONTENT_PUBLIC_BROWSER_RENDER_PROCESS_HOST_OBSERVER_H_ | 5 #ifndef CONTENT_PUBLIC_BROWSER_RENDER_PROCESS_HOST_OBSERVER_H_ |
| 6 #define CONTENT_PUBLIC_BROWSER_RENDER_PROCESS_HOST_OBSERVER_H_ | 6 #define CONTENT_PUBLIC_BROWSER_RENDER_PROCESS_HOST_OBSERVER_H_ |
| 7 | 7 |
| 8 #include "base/process/kill.h" | 8 #include "base/process/kill.h" |
| 9 #include "base/process/process_handle.h" | 9 #include "base/process/process_handle.h" |
| 10 #include "content/common/content_export.h" | 10 #include "content/common/content_export.h" |
| 11 | 11 |
| 12 namespace content { | 12 namespace content { |
| 13 | 13 |
| 14 class RenderProcessHost; | 14 class RenderProcessHost; |
| 15 | 15 |
| 16 // An observer API implemented by classes which are interested | 16 // An observer API implemented by classes which are interested |
| 17 // in RenderProcessHost lifecycle events. | 17 // in RenderProcessHost lifecycle events. |
| 18 class CONTENT_EXPORT RenderProcessHostObserver { | 18 class CONTENT_EXPORT RenderProcessHostObserver { |
| 19 public: | 19 public: |
| 20 // This method is invoked when the process was launched and the channel was |
| 21 // connected. This is the earliest time it is safe to call Shutdown on the |
| 22 // RenderProcessHost and get RenderProcessExited notifications. |
| 23 virtual void RenderProcessReady(RenderProcessHost* host) {} |
| 24 |
| 20 // This method is invoked when the process is going to exit and should not be | 25 // This method is invoked when the process is going to exit and should not be |
| 21 // used for further navigations. Note that this is a COURTESY callback, not | 26 // used for further navigations. Note that this is a COURTESY callback, not |
| 22 // guaranteed to be called for any particular process. Because this is the | 27 // guaranteed to be called for any particular process. Because this is the |
| 23 // first step in an orderly shutdown of a render process, do not expect that | 28 // first step in an orderly shutdown of a render process, do not expect that |
| 24 // a new render process will be hosted with this RenderProcessHost. | 29 // a new render process will be hosted with this RenderProcessHost. |
| 25 virtual void RenderProcessWillExit(RenderProcessHost* host) {} | 30 virtual void RenderProcessWillExit(RenderProcessHost* host) {} |
| 26 | 31 |
| 27 // This method is invoked when the process of the observed RenderProcessHost | 32 // This method is invoked when the process of the observed RenderProcessHost |
| 28 // exits (either normally or with a crash). To determine if the process closed | 33 // exits (either normally or with a crash). To determine if the process closed |
| 29 // normally or crashed, examine the |status| parameter. | 34 // normally or crashed, examine the |status| parameter. |
| (...skipping 17 matching lines...) Expand all Loading... |
| 47 // delete it. | 52 // delete it. |
| 48 virtual void RenderProcessHostDestroyed(RenderProcessHost* host) {} | 53 virtual void RenderProcessHostDestroyed(RenderProcessHost* host) {} |
| 49 | 54 |
| 50 protected: | 55 protected: |
| 51 virtual ~RenderProcessHostObserver() {} | 56 virtual ~RenderProcessHostObserver() {} |
| 52 }; | 57 }; |
| 53 | 58 |
| 54 } // namespace content | 59 } // namespace content |
| 55 | 60 |
| 56 #endif // CONTENT_PUBLIC_BROWSER_RENDER_PROCESS_HOST_OBSERVER_H_ | 61 #endif // CONTENT_PUBLIC_BROWSER_RENDER_PROCESS_HOST_OBSERVER_H_ |
| OLD | NEW |