Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1057)

Issue 1741953002: mojo: Sketch a profile application. (Closed)

Created:
4 years, 10 months ago by Elliot Glaysher
Modified:
4 years, 9 months ago
CC:
chromium-reviews, qsr+mojo_chromium.org, droger+watchlist_chromium.org, viettrungluu+watch_chromium.org, blundell+watchlist_chromium.org, sdefresne+watchlist_chromium.org, jam, yzshen+watch_chromium.org, abarth-chromium, Aaron Boodman, darin-cc_chromium.org, darin (slow to review), ben+mojo_chromium.org
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

mojo: Sketch a profile application. This application is bound to an individual profile data dir. While it isn't yet sandboxed to that location, that's our long term intention with this design. This application colocates the Profile service and the LevelDB service so that these will be in the same process. The way we register a Browser Context to a user id works for now, but will need to be redone once we start spawning processes for the Profile. BUG=585587 Committed: https://crrev.com/e69130f5b1a31d11badc7e034252038dc03b8ec6 Cr-Commit-Position: refs/heads/master@{#378620}

Patch Set 1 #

Patch Set 2 : Forgot to add this file. #

Patch Set 3 : Maybe fix windows gyp #

Patch Set 4 : Patch cleanup and a hopeful windows fix. #

Patch Set 5 : Maybe fix mojom dependencies #

Total comments: 13

Patch Set 6 : Add more Initialize, among other things. #

Patch Set 7 : window compile #

Patch Set 8 : Apparently renamed method. #

Patch Set 9 : Rebase to ToT to pick up new API. #

Patch Set 10 : Chagnes to the ProfileService interface since we don't have identities yet. #

Patch Set 11 : Fix flaky gn mojom dependencies #

Patch Set 12 : general cleanup #

Patch Set 13 : Should fix dependencies and windows compile. #

Patch Set 14 : More gyp fix? How did this compile locally? #

Patch Set 15 : Maybe this will fix the ios bots? #

Patch Set 16 : Move the tracing libraries to mojo_base.gyp to prevent a file cycle. #

Patch Set 17 : Add initialization CHECKs, change randomness, fix comment, change interface to not take path. #

Patch Set 18 : Add one more Initialize call. #

Patch Set 19 : Fix the DownloadManagerImplTests. #

Total comments: 4

Patch Set 20 : Don't add a boolean to BrowserContext; allocate an object instead. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+462 lines, -27 lines) Patch
M android_webview/browser/aw_browser_context.cc View 1 2 3 4 5 1 chunk +1 line, -0 lines 0 comments Download
M blimp/engine/common/blimp_browser_context.cc View 1 2 3 4 5 1 chunk +1 line, -0 lines 0 comments Download
M chrome/browser/profiles/off_the_record_profile_impl.cc View 1 2 3 4 5 6 7 8 9 1 chunk +1 line, -0 lines 0 comments Download
M chrome/browser/profiles/profile_impl.cc View 1 2 3 4 5 6 7 8 9 1 chunk +2 lines, -0 lines 0 comments Download
M chrome/browser/ui/app_list/test/fake_profile.cc View 1 2 3 4 5 6 7 8 9 1 chunk +2 lines, -0 lines 0 comments Download
M chrome/test/base/testing_profile.cc View 1 2 3 4 5 1 chunk +2 lines, -0 lines 0 comments Download
M chromecast/browser/cast_browser_context.cc View 1 2 3 4 5 1 chunk +1 line, -0 lines 0 comments Download
A components/profile_service/BUILD.gn View 1 chunk +31 lines, -0 lines 0 comments Download
A + components/profile_service/DEPS View 1 chunk +2 lines, -1 line 0 comments Download
A components/profile_service/profile_app.h View 1 chunk +89 lines, -0 lines 0 comments Download
A components/profile_service/profile_app.cc View 1 chunk +71 lines, -0 lines 0 comments Download
A + components/profile_service/profile_service.gyp View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1 chunk +21 lines, -22 lines 0 comments Download
A components/profile_service/profile_service_impl.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +44 lines, -0 lines 0 comments Download
A components/profile_service/profile_service_impl.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +39 lines, -0 lines 0 comments Download
A + components/profile_service/public/interfaces/BUILD.gn View 1 2 3 4 5 6 7 8 9 10 1 chunk +1 line, -1 line 0 comments Download
A components/profile_service/public/interfaces/profile.mojom View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1 chunk +17 lines, -0 lines 0 comments Download
M content/browser/BUILD.gn View 1 2 3 4 5 6 7 8 1 chunk +1 line, -0 lines 0 comments Download
M content/browser/DEPS View 1 chunk +1 line, -0 lines 0 comments Download
M content/browser/browser_context.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 3 chunks +49 lines, -0 lines 0 comments Download
M content/browser/download/download_manager_impl_unittest.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 1 chunk +3 lines, -1 line 0 comments Download
M content/browser/mojo/mojo_shell_context.cc View 1 2 3 4 5 6 7 8 2 chunks +6 lines, -0 lines 0 comments Download
M content/content_browser.gypi View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 2 chunks +3 lines, -2 lines 0 comments Download
M content/public/browser/browser_context.h View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 1 chunk +9 lines, -0 lines 0 comments Download
M content/public/test/test_browser_context.cc View 1 2 3 4 5 1 chunk +1 line, -0 lines 0 comments Download
M content/shell/browser/shell_browser_context.cc View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 2 chunks +2 lines, -0 lines 0 comments Download
M mojo/mojo_base.gyp View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1 chunk +40 lines, -0 lines 0 comments Download
M mojo/mojo_services.gyp View 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1 chunk +21 lines, -0 lines 0 comments Download
M mojo/mojo_shell.gyp View 1 2 3 4 5 6 7 8 1 chunk +1 line, -0 lines 0 comments Download

Messages

Total messages: 18 (7 generated)
Elliot Glaysher
For your bus ride home. (Will modify https://codereview.chromium.org/1737933002/ onto this if you think this approach ...
4 years, 9 months ago (2016-02-27 00:01:48 UTC) #2
jam
+Ben as well, he's thought about this more than me https://codereview.chromium.org/1741953002/diff/80001/chrome/browser/profiles/profile_impl.cc File chrome/browser/profiles/profile_impl.cc (right): https://codereview.chromium.org/1741953002/diff/80001/chrome/browser/profiles/profile_impl.cc#newcode463 ...
4 years, 9 months ago (2016-02-27 01:34:45 UTC) #4
Elliot Glaysher
ptal; changed the implementation of ProfileService after we discussed this IRL so that things aren't ...
4 years, 9 months ago (2016-02-29 23:04:13 UTC) #5
jam
lgtm with one comment per in person
4 years, 9 months ago (2016-03-01 21:41:43 UTC) #6
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1741953002/380001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1741953002/380001
4 years, 9 months ago (2016-03-01 21:50:51 UTC) #9
Ben Goodger (Google)
https://codereview.chromium.org/1741953002/diff/360001/components/profile_service/BUILD.gn File components/profile_service/BUILD.gn (right): https://codereview.chromium.org/1741953002/diff/360001/components/profile_service/BUILD.gn#newcode8 components/profile_service/BUILD.gn:8: source_set("lib") { jam, this is an application I think ...
4 years, 9 months ago (2016-03-01 21:56:07 UTC) #10
commit-bot: I haz the power
Try jobs failed on following builders: mac_chromium_compile_dbg_ng on tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/mac_chromium_compile_dbg_ng/builds/167107)
4 years, 9 months ago (2016-03-01 22:12:41 UTC) #12
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1741953002/380001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1741953002/380001
4 years, 9 months ago (2016-03-01 22:16:31 UTC) #14
commit-bot: I haz the power
Committed patchset #20 (id:380001)
4 years, 9 months ago (2016-03-02 00:13:36 UTC) #15
commit-bot: I haz the power
Patchset 20 (id:??) landed as https://crrev.com/e69130f5b1a31d11badc7e034252038dc03b8ec6 Cr-Commit-Position: refs/heads/master@{#378620}
4 years, 9 months ago (2016-03-02 00:15:21 UTC) #17
jam
4 years, 9 months ago (2016-03-02 17:50:38 UTC) #18
Message was sent while issue was closed.
https://codereview.chromium.org/1741953002/diff/360001/components/profile_ser...
File components/profile_service/BUILD.gn (right):

https://codereview.chromium.org/1741953002/diff/360001/components/profile_ser...
components/profile_service/BUILD.gn:8: source_set("lib") {
On 2016/03/01 21:56:06, Ben Goodger (Google) wrote:
> jam, this is an application I think of as ultimately being a top level "system
> service".
> 
> WDYT about putting such services in mojo/services?
> 
> e.g. in this case, mojo/services/user

agree

https://codereview.chromium.org/1741953002/diff/360001/content/public/browser...
File content/public/browser/browser_context.h (right):

https://codereview.chromium.org/1741953002/diff/360001/content/public/browser...
content/public/browser/browser_context.h:133: static void
Initialize(BrowserContext* browser_context,
On 2016/03/01 21:56:06, Ben Goodger (Google) wrote:
> is there a reason why these methods tend to be static rather than on this
> particular browsercontext?

that's the (admittedly awkward) pattern used here. browsercontext methods
implemented by the embedder are virtual methods. methods that interact with it
and are implemented in content are static.

this should be split into two interfaces.. but probably a lot of this will go
away once the mojo refactorings are gone

Powered by Google App Engine
This is Rietveld 408576698