190dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)// Copyright 2013 The Chromium Authors. All rights reserved.
25821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be
35821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// found in the LICENSE file.
45821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
590dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)#include "chrome/browser/profiles/chrome_browser_main_extra_parts_profiles.h"
65821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
71e9bf3e0803691d0a228da41fc608347b6db4340Torne (Richard Coles)#include "apps/app_keep_alive_service_factory.h"
8868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)#include "apps/app_load_service_factory.h"
92a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#include "apps/app_restore_service_factory.h"
1090dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)#include "apps/shell_window_geometry_cache.h"
11558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdoch#include "chrome/browser/apps/shortcut_manager_factory.h"
125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "chrome/browser/autofill/personal_data_manager_factory.h"
135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "chrome/browser/background/background_contents_service_factory.h"
145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "chrome/browser/bookmarks/bookmark_model_factory.h"
1590dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)#include "chrome/browser/chrome_browser_main.h"
165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "chrome/browser/content_settings/cookie_settings.h"
175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "chrome/browser/custom_handlers/protocol_handler_registry_factory.h"
185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "chrome/browser/download/download_service_factory.h"
194e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)#include "chrome/browser/favicon/favicon_service_factory.h"
204e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)#include "chrome/browser/geolocation/chrome_geolocation_permission_context_factory.h"
214e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)#include "chrome/browser/google/google_url_tracker_factory.h"
224e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)#include "chrome/browser/history/history_service_factory.h"
234e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)#include "chrome/browser/history/shortcuts_backend_factory.h"
244e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)#include "chrome/browser/invalidation/invalidation_service_factory.h"
254e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)#include "chrome/browser/media_galleries/media_galleries_preferences_factory.h"
264e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)#include "chrome/browser/notifications/desktop_notification_service_factory.h"
274e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)#include "chrome/browser/password_manager/password_store_factory.h"
284e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)#include "chrome/browser/plugins/plugin_prefs_factory.h"
294e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)#include "chrome/browser/policy/profile_policy_connector_factory.h"
304e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)#include "chrome/browser/predictors/autocomplete_action_predictor_factory.h"
314e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)#include "chrome/browser/predictors/predictor_database_factory.h"
324e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)#include "chrome/browser/predictors/resource_prefetch_predictor_factory.h"
334e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)#include "chrome/browser/prerender/prerender_link_manager_factory.h"
344e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)#include "chrome/browser/prerender/prerender_manager_factory.h"
354e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)#include "chrome/browser/printing/cloud_print/cloud_print_proxy_service_factory.h"
364e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)#include "chrome/browser/profiles/gaia_info_update_service_factory.h"
378bcbed890bc3ce4d7a057a8f32cab53fa534672eTorne (Richard Coles)#include "chrome/browser/search/hotword_service_factory.h"
384e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)#include "chrome/browser/search/instant_service_factory.h"
394e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)#include "chrome/browser/search_engines/template_url_fetcher_factory.h"
404e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)#include "chrome/browser/search_engines/template_url_service_factory.h"
414e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)#include "chrome/browser/sessions/session_service_factory.h"
424e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)#include "chrome/browser/sessions/tab_restore_service_factory.h"
434e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)#include "chrome/browser/signin/about_signin_internals_factory.h"
444e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)#include "chrome/browser/signin/signin_manager_factory.h"
454e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)#include "chrome/browser/speech/extension_api/tts_extension_api.h"
464e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)#include "chrome/browser/sync/profile_sync_service_factory.h"
474e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)#include "chrome/browser/themes/theme_service_factory.h"
484e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)#include "chrome/browser/thumbnails/thumbnail_service_factory.h"
494e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)#include "chrome/browser/ui/find_bar/find_bar_state_factory.h"
504e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)#include "chrome/browser/ui/global_error/global_error_service_factory.h"
514e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)#include "chrome/browser/ui/tabs/pinned_tab_service_factory.h"
524e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)#include "chrome/browser/ui/webui/ntp/ntp_resource_cache_factory.h"
53a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)#include "chrome/browser/undo/bookmark_undo_service_factory.h"
544e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)#include "chrome/browser/webdata/web_data_service_factory.h"
554e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)
564e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)#if defined(ENABLE_EXTENSIONS)
5790dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)#include "chrome/browser/extensions/activity_log/activity_log.h"
58868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)#include "chrome/browser/extensions/api/activity_log_private/activity_log_private_api.h"
59c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)#include "chrome/browser/extensions/api/alarms/alarm_manager.h"
607d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)#include "chrome/browser/extensions/api/api_resource_manager.h"
61c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)#include "chrome/browser/extensions/api/audio/audio_api.h"
622a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#include "chrome/browser/extensions/api/bluetooth/bluetooth_api_factory.h"
632a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#include "chrome/browser/extensions/api/bookmarks/bookmarks_api.h"
6458537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)#include "chrome/browser/extensions/api/braille_display_private/braille_display_private_api.h"
652a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#include "chrome/browser/extensions/api/commands/command_service.h"
662a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#include "chrome/browser/extensions/api/cookies/cookies_api.h"
67eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch#include "chrome/browser/extensions/api/developer_private/developer_private_api_factory.h"
682a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#include "chrome/browser/extensions/api/dial/dial_api_factory.h"
695821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "chrome/browser/extensions/api/discovery/suggested_links_registry_factory.h"
702a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#include "chrome/browser/extensions/api/extension_action/extension_action_api.h"
717d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)#include "chrome/browser/extensions/api/feedback_private/feedback_private_api.h"
722a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#include "chrome/browser/extensions/api/font_settings/font_settings_api.h"
732a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#include "chrome/browser/extensions/api/history/history_api.h"
742a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#include "chrome/browser/extensions/api/identity/identity_api.h"
752a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#include "chrome/browser/extensions/api/idle/idle_manager_factory.h"
762a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#include "chrome/browser/extensions/api/input/input.h"
77a93a17c8d99d686bd4a1511e5504e5e6cc9fcadfTorne (Richard Coles)#include "chrome/browser/extensions/api/location/location_manager.h"
782a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#include "chrome/browser/extensions/api/management/management_api.h"
7958537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)#include "chrome/browser/extensions/api/mdns/mdns_api.h"
802a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#include "chrome/browser/extensions/api/media_galleries_private/media_galleries_private_api.h"
81f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)#include "chrome/browser/extensions/api/networking_private/networking_private_event_router_factory.h"
822a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#include "chrome/browser/extensions/api/omnibox/omnibox_api.h"
83ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch#include "chrome/browser/extensions/api/preference/chrome_direct_setting_api.h"
842a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#include "chrome/browser/extensions/api/preference/preference_api.h"
852a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#include "chrome/browser/extensions/api/processes/processes_api.h"
862a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#include "chrome/browser/extensions/api/push_messaging/push_messaging_api.h"
87f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)#include "chrome/browser/extensions/api/runtime/runtime_api_factory.h"
887d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)#include "chrome/browser/extensions/api/serial/serial_connection.h"
893551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)#include "chrome/browser/extensions/api/sessions/sessions_api.h"
901e9bf3e0803691d0a228da41fc608347b6db4340Torne (Richard Coles)#include "chrome/browser/extensions/api/settings_overrides/settings_overrides_api.h"
9158537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)#include "chrome/browser/extensions/api/signed_in_devices/signed_in_devices_manager.h"
927d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)#include "chrome/browser/extensions/api/socket/socket.h"
934e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)#include "chrome/browser/extensions/api/socket/tcp_socket.h"
943551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)#include "chrome/browser/extensions/api/socket/udp_socket.h"
954e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)#include "chrome/browser/extensions/api/sockets_tcp/tcp_socket_event_dispatcher.h"
968bcbed890bc3ce4d7a057a8f32cab53fa534672eTorne (Richard Coles)#include "chrome/browser/extensions/api/sockets_tcp_server/tcp_server_socket_event_dispatcher.h"
973551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)#include "chrome/browser/extensions/api/sockets_udp/udp_socket_event_dispatcher.h"
982a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#include "chrome/browser/extensions/api/streams_private/streams_private_api.h"
992a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#include "chrome/browser/extensions/api/system_info/system_info_api.h"
100d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)#include "chrome/browser/extensions/api/tab_capture/tab_capture_registry.h"
1012a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#include "chrome/browser/extensions/api/tabs/tabs_windows_api.h"
1027d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)#include "chrome/browser/extensions/api/usb/usb_device_resource.h"
1032a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#include "chrome/browser/extensions/api/web_navigation/web_navigation_api.h"
104f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)#include "chrome/browser/extensions/api/web_request/web_request_api.h"
1051e9bf3e0803691d0a228da41fc608347b6db4340Torne (Richard Coles)#include "chrome/browser/extensions/api/webrtc_audio_private/webrtc_audio_private_api.h"
10690dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)#include "chrome/browser/extensions/extension_prefs_factory.h"
1075821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "chrome/browser/extensions/extension_system_factory.h"
108f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)#include "chrome/browser/extensions/extension_toolbar_model_factory.h"
109c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)#include "chrome/browser/extensions/extension_web_ui_override_registrar.h"
1102a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#include "chrome/browser/extensions/install_tracker_factory.h"
111f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)#include "chrome/browser/extensions/menu_manager_factory.h"
112868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)#include "chrome/browser/extensions/plugin_manager.h"
1132a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#include "chrome/browser/extensions/token_cache/token_cache_service_factory.h"
1144e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)#endif  // defined(ENABLE_EXTENSIONS)
1155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
1165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#if defined(ENABLE_CAPTIVE_PORTAL_DETECTION)
1175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "chrome/browser/captive_portal/captive_portal_service_factory.h"
1185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif
1195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
1205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#if defined(ENABLE_CONFIGURATION_POLICY)
121a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)#include "chrome/browser/policy/cloud/policy_header_service_factory.h"
122a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles)#include "chrome/browser/policy/cloud/user_cloud_policy_invalidator_factory.h"
123f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)#include "chrome/browser/policy/schema_registry_service_factory.h"
124c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)#if defined(OS_CHROMEOS)
125f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)#include "chrome/browser/chromeos/policy/policy_cert_service_factory.h"
126eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch#include "chrome/browser/chromeos/policy/recommendation_restorer_factory.h"
127c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)#include "chrome/browser/chromeos/policy/user_cloud_policy_manager_factory_chromeos.h"
128c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)#include "chrome/browser/chromeos/policy/user_cloud_policy_token_forwarder_factory.h"
129f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)#include "chrome/browser/chromeos/policy/user_network_configuration_updater_factory.h"
130c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)#else
131c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)#include "chrome/browser/policy/cloud/user_cloud_policy_manager_factory.h"
1322a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#include "chrome/browser/policy/cloud/user_policy_signin_service_factory.h"
1332a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#endif
134c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)#endif
1352a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
13690dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)#if defined(ENABLE_MANAGED_USERS)
13790dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)#include "chrome/browser/managed_mode/managed_user_service_factory.h"
1382385ea399aae016c0806a4f9ef3c9cfe3d2a39dfBen Murdoch#include "chrome/browser/managed_mode/managed_user_sync_service_factory.h"
13990dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)#endif
14090dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)
1412a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#if defined(OS_CHROMEOS)
1422a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#include "chrome/browser/chromeos/extensions/input_method_api.h"
1432a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#include "chrome/browser/chromeos/extensions/media_player_api.h"
144f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)#include "chrome/browser/chromeos/extensions/screenlock_private_api.h"
1452a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#include "chrome/browser/extensions/api/input_ime/input_ime_api.h"
1462a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#if defined(FILE_MANAGER_EXTENSION)
147c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)#include "chrome/browser/chromeos/extensions/file_manager/file_browser_private_api_factory.h"
1482a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#endif
1495821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif
1505821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
1515821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#if defined(USE_AURA)
1525821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "chrome/browser/ui/gesture_prefs_observer_factory_aura.h"
1535821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif
1545821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
15568043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles)#if defined(OS_ANDROID)
15668043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles)#include "chrome/browser/media/protected_media_identifier_permission_context_factory.h"
15768043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles)#else
158c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)#include "chrome/browser/media_galleries/media_galleries_preferences_factory.h"
159c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)#include "chrome/browser/notifications/sync_notifier/chrome_notifier_service_factory.h"
1604e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)#include "chrome/browser/profile_resetter/automatic_profile_resetter_factory.h"
161c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)#endif
162c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)
163a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles)#if defined(ENABLE_SPELLCHECK)
164a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles)#include "chrome/browser/extensions/api/spellcheck/spellcheck_api.h"
165a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles)#include "chrome/browser/spellchecker/spellcheck_factory.h"
166a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles)#endif
167a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles)
1683551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)#if defined(ENABLE_MDNS)
1693551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)#include "chrome/browser/local_discovery/privet_notifications_factory.h"
1703551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)#endif
1713551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)
17290dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)namespace chrome {
1735821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
17490dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)void AddProfilesExtraParts(ChromeBrowserMainParts* main_parts) {
17590dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)  main_parts->AddParts(new ChromeBrowserMainExtraPartsProfiles());
1765821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)}
1775821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
17890dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)}  // namespace chrome
1795821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
18090dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)ChromeBrowserMainExtraPartsProfiles::ChromeBrowserMainExtraPartsProfiles() {
1815821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)}
1825821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
18390dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)ChromeBrowserMainExtraPartsProfiles::~ChromeBrowserMainExtraPartsProfiles() {
1845821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)}
1855821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
1865821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// This method gets the instance of each ServiceFactory. We do this so that
1872a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// each ServiceFactory initializes itself and registers its dependencies with
1885821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// the global PreferenceDependencyManager. We need to have a complete
1895821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// dependency graph when we create a profile so we can dispatch the profile
1905821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// creation message to the services that want to create their services at
1915821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// profile creation time.
1925821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)//
1935821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// TODO(erg): This needs to be something else. I don't think putting every
1942a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// FooServiceFactory here will scale or is desirable long term.
19590dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)//
19690dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)// static
19790dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)void ChromeBrowserMainExtraPartsProfiles::
19890dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)EnsureBrowserContextKeyedServiceFactoriesBuilt() {
1992a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  AboutSigninInternalsFactory::GetInstance();
20090dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)  autofill::PersonalDataManagerFactory::GetInstance();
2014e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)#if !defined(OS_ANDROID)
2024e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)  AutomaticProfileResetterFactory::GetInstance();
2034e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)#endif
2045821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#if defined(ENABLE_BACKGROUND)
2055821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  BackgroundContentsServiceFactory::GetInstance();
2065821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif
2075821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  BookmarkModelFactory::GetInstance();
208a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)#if !defined(OS_ANDROID)
209a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)  BookmarkUndoServiceFactory::GetInstance();
210a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)#endif
2115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#if defined(ENABLE_CAPTIVE_PORTAL_DETECTION)
2125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  captive_portal::CaptivePortalServiceFactory::GetInstance();
2135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif
2142a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  ChromeGeolocationPermissionContextFactory::GetInstance();
21568043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles)#if defined(OS_ANDROID)
21668043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles)  ProtectedMediaIdentifierPermissionContextFactory::GetInstance();
21768043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles)#endif
218c2db58bd994c04d98e4ee2cd7565b71548655fe3Ben Murdoch#if defined(ENABLE_FULL_PRINTING)
2195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  CloudPrintProxyServiceFactory::GetInstance();
2205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif
2215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  CookieSettings::Factory::GetInstance();
2225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#if defined(ENABLE_NOTIFICATIONS)
2235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  DesktopNotificationServiceFactory::GetInstance();
2245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif
2255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  DownloadServiceFactory::GetInstance();
2265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#if defined(ENABLE_EXTENSIONS)
227558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdoch  AppShortcutManagerFactory::GetInstance();
228868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)  apps::AppLoadServiceFactory::GetInstance();
2292a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  apps::AppRestoreServiceFactory::GetInstance();
23090dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)  apps::ShellWindowGeometryCache::Factory::GetInstance();
2312a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  extensions::ActivityLogFactory::GetInstance();
232868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)  extensions::ActivityLogAPI::GetFactoryInstance();
233c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)  extensions::AlarmManager::GetFactoryInstance();
2348bcbed890bc3ce4d7a057a8f32cab53fa534672eTorne (Richard Coles)  extensions::ApiResourceManager<extensions::ResumableTCPServerSocket>::
2358bcbed890bc3ce4d7a057a8f32cab53fa534672eTorne (Richard Coles)      GetFactoryInstance();
2364e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)  extensions::ApiResourceManager<extensions::ResumableTCPSocket>::
2374e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)      GetFactoryInstance();
2383551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)  extensions::ApiResourceManager<extensions::ResumableUDPSocket>::
2393551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)      GetFactoryInstance();
2407d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)  extensions::ApiResourceManager<extensions::SerialConnection>::
2417d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)      GetFactoryInstance();
2427d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)  extensions::ApiResourceManager<extensions::Socket>::GetFactoryInstance();
2437d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)  extensions::ApiResourceManager<extensions::UsbDeviceResource>::
2447d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)      GetFactoryInstance();
2458bcbed890bc3ce4d7a057a8f32cab53fa534672eTorne (Richard Coles)  extensions::api::TCPServerSocketEventDispatcher::GetFactoryInstance();
2464e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)  extensions::api::TCPSocketEventDispatcher::GetFactoryInstance();
2473551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)  extensions::api::UDPSocketEventDispatcher::GetFactoryInstance();
248c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)  extensions::AudioAPI::GetFactoryInstance();
2492a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  extensions::BookmarksAPI::GetFactoryInstance();
2502a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  extensions::BluetoothAPIFactory::GetInstance();
25158537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)  extensions::BrailleDisplayPrivateAPI::GetFactoryInstance();
252ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch  extensions::chromedirectsetting::ChromeDirectSettingAPI::GetFactoryInstance();
2532a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  extensions::CommandService::GetFactoryInstance();
2542a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  extensions::CookiesAPI::GetFactoryInstance();
255eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch  extensions::DeveloperPrivateAPIFactory::GetInstance();
2562a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  extensions::DialAPIFactory::GetInstance();
2572a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  extensions::ExtensionActionAPI::GetFactoryInstance();
25890dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)  extensions::ExtensionPrefsFactory::GetInstance();
2595821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  extensions::ExtensionSystemFactory::GetInstance();
260c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)  extensions::ExtensionWebUIOverrideRegistrar::GetFactoryInstance();
2617d4cd473f85ac64c3747c96c277f9e506a0d2246Torne (Richard Coles)  extensions::FeedbackPrivateAPI::GetFactoryInstance();
2622a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  extensions::FontSettingsAPI::GetFactoryInstance();
2632a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  extensions::HistoryAPI::GetFactoryInstance();
2642a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  extensions::IdentityAPI::GetFactoryInstance();
2652a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  extensions::IdleManagerFactory::GetInstance();
2662a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  extensions::InstallTrackerFactory::GetInstance();
2672a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#if defined(TOOLKIT_VIEWS)
2682a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  extensions::InputAPI::GetFactoryInstance();
2692a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#endif
2702a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#if defined(OS_CHROMEOS)
2712a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  extensions::InputImeAPI::GetFactoryInstance();
2722a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  extensions::InputMethodAPI::GetFactoryInstance();
273f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  extensions::ScreenlockPrivateEventRouter::GetFactoryInstance();
2742a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#endif
275a93a17c8d99d686bd4a1511e5504e5e6cc9fcadfTorne (Richard Coles)  extensions::LocationManager::GetFactoryInstance();
2762a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  extensions::ManagementAPI::GetFactoryInstance();
27758537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)  extensions::MDnsAPI::GetFactoryInstance();
2782a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  extensions::MediaGalleriesPrivateAPI::GetFactoryInstance();
2792a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#if defined(OS_CHROMEOS)
2802a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  extensions::MediaPlayerAPI::GetFactoryInstance();
2812a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#endif
282f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  extensions::MenuManagerFactory::GetInstance();
283f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)#if defined(OS_CHROMEOS) || defined(OS_WIN)
284f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  extensions::NetworkingPrivateEventRouterFactory::GetInstance();
285f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)#endif  // defined(OS_CHROMEOS) || defined(OS_WIN)
2862a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  extensions::OmniboxAPI::GetFactoryInstance();
287868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)#if defined(ENABLE_PLUGINS)
288868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)  extensions::PluginManager::GetFactoryInstance();
289868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)#endif  // defined(ENABLE_PLUGINS)
2902a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  extensions::PreferenceAPI::GetFactoryInstance();
2912a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  extensions::ProcessesAPI::GetFactoryInstance();
2922a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  extensions::PushMessagingAPI::GetFactoryInstance();
293f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  extensions::RuntimeAPIFactory::GetInstance();
2943551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)  extensions::SessionsAPI::GetFactoryInstance();
2951e9bf3e0803691d0a228da41fc608347b6db4340Torne (Richard Coles)  extensions::SettingsOverridesAPI::GetFactoryInstance();
296424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles)  extensions::SignedInDevicesManager::GetFactoryInstance();
297a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles)#if defined(ENABLE_SPELLCHECK)
298c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)  extensions::SpellcheckAPI::GetFactoryInstance();
299a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles)#endif
3002a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  extensions::StreamsPrivateAPI::GetFactoryInstance();
3012a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  extensions::SystemInfoAPI::GetFactoryInstance();
3022a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  extensions::SuggestedLinksRegistryFactory::GetInstance();
303d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)  extensions::TabCaptureRegistry::GetFactoryInstance();
3042a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  extensions::TabsWindowsAPI::GetFactoryInstance();
3052a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  extensions::TtsAPI::GetFactoryInstance();
3062a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  extensions::WebNavigationAPI::GetFactoryInstance();
307f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  extensions::WebRequestAPI::GetFactoryInstance();
3081e9bf3e0803691d0a228da41fc608347b6db4340Torne (Richard Coles)  extensions::WebrtcAudioPrivateEventService::GetFactoryInstance();
309f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  ExtensionToolbarModelFactory::GetInstance();
310c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)#endif  // defined(ENABLE_EXTENSIONS)
3115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  FaviconServiceFactory::GetInstance();
3122a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#if defined(OS_CHROMEOS) && defined(FILE_MANAGER_EXTENSION)
313558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdoch  file_manager::FileBrowserPrivateAPIFactory::GetInstance();
3142a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#endif
3155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  FindBarStateFactory::GetInstance();
3162a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  GAIAInfoUpdateServiceFactory::GetInstance();
3175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#if defined(USE_AURA)
3185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  GesturePrefsObserverFactoryAura::GetInstance();
3195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif
3205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  GlobalErrorServiceFactory::GetInstance();
3215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  GoogleURLTrackerFactory::GetInstance();
3225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  HistoryServiceFactory::GetInstance();
3238bcbed890bc3ce4d7a057a8f32cab53fa534672eTorne (Richard Coles)  HotwordServiceFactory::GetInstance();
324eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch  invalidation::InvalidationServiceFactory::GetInstance();
325558790d6acca3451cf3a6b497803a5f07d0bec58Ben Murdoch  InstantServiceFactory::GetInstance();
3263551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)#if defined(ENABLE_MDNS)
3273551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)  local_discovery::PrivetNotificationServiceFactory::GetInstance();
3283551c9c881056c480085172ff9840cab31610854Torne (Richard Coles)#endif
32990dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)#if defined(ENABLE_MANAGED_USERS)
33090dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)  ManagedUserServiceFactory::GetInstance();
3312385ea399aae016c0806a4f9ef3c9cfe3d2a39dfBen Murdoch  ManagedUserSyncServiceFactory::GetInstance();
33290dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)#endif
3332a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#if !defined(OS_ANDROID)
3345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  MediaGalleriesPreferencesFactory::GetInstance();
33590dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)  notifier::ChromeNotifierServiceFactory::GetInstance();
3362a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#endif
3375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  NTPResourceCacheFactory::GetInstance();
3385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  PasswordStoreFactory::GetInstance();
3395821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#if !defined(OS_ANDROID)
3405821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  PinnedTabServiceFactory::GetInstance();
3415821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif
3422a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#if defined(ENABLE_PLUGINS)
3435821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  PluginPrefsFactory::GetInstance();
3442a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)#endif
345c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)  policy::ProfilePolicyConnectorFactory::GetInstance();
346c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)#if defined(ENABLE_CONFIGURATION_POLICY)
347c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)#if defined(OS_CHROMEOS)
348f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  policy::PolicyCertServiceFactory::GetInstance();
349eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch  policy::RecommendationRestorerFactory::GetInstance();
350c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)  policy::UserCloudPolicyManagerFactoryChromeOS::GetInstance();
351c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)  policy::UserCloudPolicyTokenForwarderFactory::GetInstance();
352f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  policy::UserNetworkConfigurationUpdaterFactory::GetInstance();
353c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)#else
354c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)  policy::UserCloudPolicyManagerFactory::GetInstance();
3555821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  policy::UserPolicySigninServiceFactory::GetInstance();
3565821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif
357a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)  policy::PolicyHeaderServiceFactory::GetInstance();
358f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)  policy::SchemaRegistryServiceFactory::GetInstance();
359a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles)  policy::UserCloudPolicyInvalidatorFactory::GetInstance();
360c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)#endif
3615821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  predictors::AutocompleteActionPredictorFactory::GetInstance();
3625821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  predictors::PredictorDatabaseFactory::GetInstance();
3635821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  predictors::ResourcePrefetchPredictorFactory::GetInstance();
3645821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  prerender::PrerenderManagerFactory::GetInstance();
3655821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  prerender::PrerenderLinkManagerFactory::GetInstance();
3665821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  ProfileSyncServiceFactory::GetInstance();
3675821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  ProtocolHandlerRegistryFactory::GetInstance();
3685821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#if defined(ENABLE_SESSION_SERVICE)
3695821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  SessionServiceFactory::GetInstance();
3705821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif
3715821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  ShortcutsBackendFactory::GetInstance();
3725821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  SigninManagerFactory::GetInstance();
373a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles)#if defined(ENABLE_SPELLCHECK)
3742a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  SpellcheckServiceFactory::GetInstance();
375a36e5920737c6adbddd3e43b760e5de8431db6e0Torne (Richard Coles)#endif
37690dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)  ThumbnailServiceFactory::GetInstance();
3775821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  TabRestoreServiceFactory::GetInstance();
3785821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  TemplateURLFetcherFactory::GetInstance();
3795821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  TemplateURLServiceFactory::GetInstance();
3805821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#if defined(ENABLE_THEMES)
3815821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  ThemeServiceFactory::GetInstance();
3825821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif
3834e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)#if defined(ENABLE_EXTENSIONS)
3842a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  TokenCacheServiceFactory::GetInstance();
3854e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)#endif
3865821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  WebDataServiceFactory::GetInstance();
3875821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)}
3885821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
38990dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)void ChromeBrowserMainExtraPartsProfiles::PreProfileInit() {
39090dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)  EnsureBrowserContextKeyedServiceFactoriesBuilt();
3915821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)}
392