summaryrefslogtreecommitdiffstats
path: root/components/keyed_service.gypi
Commit message (Collapse)AuthorAgeFilesLines
* Remove support code to mix Browser{Context,State}KeyedServiceFactories.sdefresne2015-12-171-2/+0
| | | | | | | | | | | | Chrome on iOS no longer uses a mix of B[CS]KSF as all factories have been ported to be BrowserStateKeyedServiceFactory, so remove all the support code allowing to mix them. BUG=478763 Review URL: https://codereview.chromium.org/1525623008 Cr-Commit-Position: refs/heads/master@{#365859}
* Add gn implementation for //components/keyed_service/ios.sdefresne2015-11-171-0/+1
| | | | | | | | BUG=459705 Review URL: https://codereview.chromium.org/1445543003 Cr-Commit-Position: refs/heads/master@{#360049}
* Allow cross dependencies between BCKSF and BSKSFsdefresne2015-04-241-6/+5
| | | | | | | | | | | | | | | | | | | | For incremental conversion of iOS code from BrowserContextKeyedServiceFactories to BrowserStateKeyedServiceFactories, iOS uses cross-dependencies between both types of factories. This CL had two virtual methods to KeyedServiceBaseFactory to convert a context to the correct type (content::BrowserContext or web::BrowserState) and back so that we can have BrowserStateKeyedServiceFactories registered into a BrowserContextDependencyManager (temporary). Implement the method in all derived classes and refactor the implementation of GetAssociatedPrefRegistry that no longer needs to be virtual. BUG=459020,478763 Review URL: https://codereview.chromium.org/1090373003 Cr-Commit-Position: refs/heads/master@{#326782}
* Sort GYP files under componentssatorux2015-02-171-1/+1
| | | | | | | | | | | | For tools/sort_sources.py to be useful, existing GYP files should be sorted. BUG=456014 TEST=everything should build as before Review URL: https://codereview.chromium.org/929883002 Cr-Commit-Position: refs/heads/master@{#316519}
* Add KeyedServiceShutdownNotifier for classes that depend on keyed services ↵bauerb2015-02-081-0/+4
| | | | | | | | | | but can't be keyed services themselves. BUG=395391 Review URL: https://codereview.chromium.org/905703002 Cr-Commit-Position: refs/heads/master@{#315234}
* Move ServiceAccessType into //components/keyed_servicesdefresne2015-01-101-0/+1
| | | | | | | | | | | | | | | | | | | | | The ServiceAccessType is only used when interacting with KeyedServiceFactories so move it into the keyed_service components. Turn the enumeration into a "class enum" so that the value names don't leak into the global namespace. Fix client code and add missing #include after changing the chrome/browser/profiles/profile.h #include into forward declaration in the KeyedServiceFactories headers. Usage of the enumeration was fixed using tools/git/mffr.py. BUG=419366 Review URL: https://codereview.chromium.org/839193002 Cr-Commit-Position: refs/heads/master@{#310979}
* Allow cross dependency between Browser{Context,State}KeyedServiceFactorysdefresne2014-11-211-0/+2
| | | | | | | | | | | | | | | Until upstreaming is complete, iOS code must be able to have cross-dependency between Browser{Context,State}KeyedServiceFactory. The only DependencyManager used will be BrowserContextDependencyManager, so BCKSF don't need forking but BSKSF context parameter may be a web::BrowserState when using the public API or a content::BrowserContext when called by the DependencyManager. Introduce a safe embedder specific way to convert the object back to a web::BrowserState. BUG=419366 Review URL: https://codereview.chromium.org/740983003 Cr-Commit-Position: refs/heads/master@{#305208}
* Introduce BrowserState-based KeyedServiceFactorysdefresne2014-11-141-0/+28
| | | | | | | | | | | | | Introduce new classes that implements the KeyedServiceFactory infrastructure around BrowserState for use on iOS. The implementation is based on BrowserContext KeyedServiceFactories. BUG=419366 Review URL: https://codereview.chromium.org/727493002 Cr-Commit-Position: refs/heads/master@{#304197}
* Refactor (Refcounted)BrowserContextKeyedServiceFactorysdefresne2014-10-301-0/+4
| | | | | | | | | | | | Introduce (Refcounted)KeyedServiceFactory classes that deal with the lifetime management of (Refcounted)KeyedService. Port the classes (Refcounted)BrowserContextKeyedServiceFactory to inherit from them. BUG=419366 Review URL: https://codereview.chromium.org/654753010 Cr-Commit-Position: refs/heads/master@{#302054}
* Refactor KeyedService factory infrastructuresdefresne2014-10-231-0/+4
| | | | | | | | | | | | | | | | | | | | Refactor KeyedService factory infrastructure to remove the dependency on content::BrowserContext so that it can be used by embedders that do not use //content (Chrome on iOS). Introduce DependencyManager and KeyedServiceBaseFactory and update the content::BrowserContext-based factories to inherit from them. Refer to this detailed design-document: https://docs.google.com/document/d/1HSHDxKiUui1io2odu5tkzddJZG21Fi7m0SGfnJj1soM/pub BUG=419366 TBR=tapted TBR=kaznacheev Review URL: https://codereview.chromium.org/662393002 Cr-Commit-Position: refs/heads/master@{#300908}
* Refactor RefcountedBrowserContextKeyedService to be usable on iOSsdefresne2014-10-081-2/+3
| | | | | | | | | | | | | | | | | Remove the dependency from RefcountedBrowserContextKeyedService on //content and move it to //components/keyed_service/core so that it can be used by iOS. Change the class constructor to receive a base::SingleThreadTaskRunner instead of a content::BrowserThread::ID. Rename the class to RefcountedKeyedService since it has no dependency on content::BrowserContext. BUG=419366 Review URL: https://codereview.chromium.org/631843002 Cr-Commit-Position: refs/heads/master@{#298687}
* Add components/keyed_service to GN build.brettw@chromium.org2014-06-191-0/+2
| | | | | | | | | BUG= R=blundell@chromium.org Review URL: https://codereview.chromium.org/336443004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@278514 0039d316-1c4b-4281-b951-d872f2087c98
* Fix linkage of components/keyed_service.joaodasilva@chromium.org2014-06-131-0/+1
| | | | | | | | | | | | | | | | | | After https://codereview.chromium.org/306293006, "policy_component" depends on "bookmarks_browser" which depends on "keyed_service_core". On a windows component build this fails to link, because "policy_component" and "keyed_service_core" are shared libraries but "bookmarks_browser" is static. The linker then gets confused due to the inlined virtuals. This change makes the KeyedService methods non-inline so that they get symbols defined in the "keyed_service_core" dll, which fixes the build. TBR=blundell@chromium.org BUG=None Review URL: https://codereview.chromium.org/330643004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@276984 0039d316-1c4b-4281-b951-d872f2087c98
* Remove //components/browser_context_keyed_serviceblundell@chromium.org2014-03-161-9/+0
| | | | | | | | | | | | These forwarding headers are no longer needed now that all clients have been converted to use //components/keyed_service. BUG=351704 TBR=beng Review URL: https://codereview.chromium.org/200223003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@257368 0039d316-1c4b-4281-b951-d872f2087c98
* Refactor the BrowserContextKeyedService component to be a layered component.blundell@chromium.org2014-03-121-0/+75
The motivation for this CL is to generalize the concept of BrowserContextKeyedService in order to enable classes that are BCKS's to be able to be shared on iOS, which cannot use or reference the content API. The key insight is that browser_context_keyed_service.h does not actually reference BrowserContext at all. This CL does the following: - Moves //components/browser_context_keyed_service to components/keyed_service - Divides the keyed_service component into core and content targets - Moves browser_context_keyed_service.h into the core target as keyed_service.h - Makes KeyedService's destructor public to eliminate having to friend BrowserContextKeyedBaseFactory - Moves dependency_* into the keyed_service_core target - Moves everything else from the component (which actually references BrowserContext) into the keyed_service_content target - Leaves forwarding headers in //components/browser_context_keyed_service to allow for updating clients incrementally in follow-up CLs BUG=350708 TBR=jochen Review URL: https://codereview.chromium.org/186723002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@256425 0039d316-1c4b-4281-b951-d872f2087c98