X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=src%2Fcomponents%2Fkeyed_service%2Fcontent%2Fbrowser_context_dependency_manager.h;h=f602ee4a591c87b21d09af846e0defe2645ba12a;hb=004985e17e624662a4c85c76a7654039dc83f028;hp=50e4a8545d9d3daf3b3fb51c1b0075696a24aa7e;hpb=2f108dbacb161091e42a3479f4e171339b7e7623;p=platform%2Fframework%2Fweb%2Fcrosswalk.git diff --git a/src/components/keyed_service/content/browser_context_dependency_manager.h b/src/components/keyed_service/content/browser_context_dependency_manager.h index 50e4a85..f602ee4 100644 --- a/src/components/keyed_service/content/browser_context_dependency_manager.h +++ b/src/components/keyed_service/content/browser_context_dependency_manager.h @@ -5,6 +5,8 @@ #ifndef COMPONENTS_KEYED_SERVICE_CONTENT_BROWSER_CONTEXT_DEPENDENCY_MANAGER_H_ #define COMPONENTS_KEYED_SERVICE_CONTENT_BROWSER_CONTEXT_DEPENDENCY_MANAGER_H_ +#include "base/callback_forward.h" +#include "base/callback_list.h" #include "base/memory/singleton.h" #include "components/keyed_service/core/dependency_graph.h" #include "components/keyed_service/core/keyed_service_export.h" @@ -63,6 +65,14 @@ class KEYED_SERVICE_EXPORT BrowserContextDependencyManager { // associated with it. void DestroyBrowserContextServices(content::BrowserContext* context); + // Registers a |callback| that will be called just before executing + // CreateBrowserContextServices() or CreateBrowserContextServicesForTest(). + // This can be useful in browser tests which wish to substitute test or mock + // builders for the keyed services. + scoped_ptr::Subscription> + RegisterWillCreateBrowserContextServicesCallbackForTesting( + const base::Callback& callback); + #ifndef NDEBUG // Debugging assertion called as part of GetServiceForBrowserContext in debug // mode. This will NOTREACHED() whenever the user is trying to access a stale @@ -96,6 +106,11 @@ class KEYED_SERVICE_EXPORT BrowserContextDependencyManager { DependencyGraph dependency_graph_; + // A list of callbacks to call just before executing + // CreateBrowserContextServices() or CreateBrowserContextServicesForTest(). + base::CallbackList + will_create_browser_context_services_callbacks_; + #ifndef NDEBUG // A list of context objects that have gone through the Shutdown() // phase. These pointers are most likely invalid, but we keep track of their