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 3 // found in the LICENSE file. 4 5 #ifndef CHROME_BROWSER_PROFILES_CHROME_BROWSER_MAIN_EXTRA_PARTS_PROFILES_H_ 6 #define CHROME_BROWSER_PROFILES_CHROME_BROWSER_MAIN_EXTRA_PARTS_PROFILES_H_ 7 8 #include "base/basictypes.h" 9 #include "base/compiler_specific.h" 10 #include "chrome/browser/chrome_browser_main_extra_parts.h" 11 12 class ChromeBrowserMainParts; 13 14 namespace chrome { 15 void AddProfilesExtraParts(ChromeBrowserMainParts* main_parts); 16 } 17 18 class ChromeBrowserMainExtraPartsProfiles : public ChromeBrowserMainExtraParts { 19 public: 20 ChromeBrowserMainExtraPartsProfiles(); 21 virtual ~ChromeBrowserMainExtraPartsProfiles(); 22 23 // Instantiates all chrome KeyedService factories, which is 24 // especially important for services that should be created at profile 25 // creation time as compared to lazily on first access. 26 static void EnsureBrowserContextKeyedServiceFactoriesBuilt(); 27 28 // Overridden from ChromeBrowserMainExtraParts: 29 virtual void PreProfileInit() OVERRIDE; 30 31 private: 32 DISALLOW_COPY_AND_ASSIGN(ChromeBrowserMainExtraPartsProfiles); 33 }; 34 35 #endif // CHROME_BROWSER_PROFILES_CHROME_BROWSER_MAIN_EXTRA_PARTS_PROFILES_H_ 36