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

Issue 930243006: Simplify the ApplicationLoader interface in preparation for changes. (Closed)

Created:
5 years, 10 months ago by Aaron Boodman
Modified:
5 years, 10 months ago
Reviewers:
DaveMoore, qsr
CC:
mojo-reviews_chromium.org, qsr+mojo_chromium.org, yzshen+watch_chromium.org
Base URL:
https://github.com/domokit/mojo.git@master
Target Ref:
refs/heads/master
Project:
mojo
Visibility:
Public.

Description

Simplify the ApplicationLoader interface in preparation for changes. The ApplicationLoader interface has become very complicated because it provides a way for clients of ApplicationManager to do two different things in response to a connection request. 1. Bind to an Application implementation. 2. Delegate back to ApplicationManager with details about a ContentHandler to use instead. ApplicationLoader was originally designed to do only #1. I extended it to do #2 in the misguided thought that it would be nice for ApplicationLoader implementations to be able to provide content for a ContentHandler as well actual applications. However, this second use case was never needed and adds lots of complexity. I think it will simplify things dramatically to move URL fetching and ContentHandler handling into application manager directly. If we ever need to generalize that behavior, we can create a separate interface from ApplicationLoader for it at that time. This CL is a first step that is pretty mechanical in nature, but I think is still an improvement. Suggest reviewing in the following order: - application_loader.* - application_manager.* - everything else The next change will break apart DynamicApplicationLoader into pieces which will be used from within ApplicationManager. R=davemoore@chromium.org Committed: https://chromium.googlesource.com/external/mojo/+/bfc1118ae801b4142f4027cd3cb1ab079c325f66

Patch Set 1 : #

Patch Set 2 : trying to fix android build #

Patch Set 3 : try again #

Patch Set 4 : trybot debugging ftw #

Total comments: 10

Patch Set 5 : ptal #

Unified diffs Side-by-side diffs Delta from patch set Stats (+195 lines, -868 lines) Patch
M PRESUBMIT.py View 1 2 3 4 1 chunk +1 line, -1 line 0 comments Download
M services/window_manager/window_manager_api_unittest.cc View 1 chunk +3 lines, -4 lines 0 comments Download
M shell/BUILD.gn View 1 2 3 4 2 chunks +3 lines, -3 lines 0 comments Download
M shell/android/android_handler_loader.h View 1 chunk +2 lines, -4 lines 0 comments Download
M shell/android/android_handler_loader.cc View 1 chunk +1 line, -3 lines 0 comments Download
M shell/android/background_application_loader.h View 2 chunks +2 lines, -7 lines 0 comments Download
M shell/android/background_application_loader.cc View 1 2 3 chunks +3 lines, -6 lines 0 comments Download
M shell/android/background_application_loader_unittest.cc View 1 2 3 2 chunks +3 lines, -6 lines 0 comments Download
M shell/android/native_viewport_application_loader.h View 1 chunk +2 lines, -4 lines 0 comments Download
M shell/android/native_viewport_application_loader.cc View 1 chunk +1 line, -3 lines 0 comments Download
M shell/android/ui_application_loader_android.h View 1 2 chunks +3 lines, -6 lines 0 comments Download
M shell/android/ui_application_loader_android.cc View 1 2 chunks +3 lines, -6 lines 0 comments Download
M shell/application_manager/application_loader.h View 1 2 3 4 2 chunks +24 lines, -26 lines 0 comments Download
D shell/application_manager/application_loader.cc View 1 2 3 4 1 chunk +1 line, -1 line 0 comments Download
M shell/application_manager/application_manager.h View 1 2 3 4 5 chunks +27 lines, -14 lines 0 comments Download
M shell/application_manager/application_manager.cc View 1 2 3 4 4 chunks +63 lines, -34 lines 0 comments Download
M shell/application_manager/application_manager_unittest.cc View 2 chunks +4 lines, -8 lines 0 comments Download
M shell/context.h View 1 2 3 4 1 chunk +1 line, -1 line 0 comments Download
M shell/context.cc View 1 2 3 4 3 chunks +7 lines, -7 lines 0 comments Download
M shell/dynamic_application_loader.h View 1 2 3 4 1 chunk +0 lines, -71 lines 0 comments Download
M shell/dynamic_application_loader.cc View 1 2 3 4 1 chunk +0 lines, -506 lines 0 comments Download
M shell/dynamic_application_loader_unittest.cc View 1 2 3 4 1 chunk +0 lines, -95 lines 0 comments Download
M shell/external_application_listener_unittest.cc View 1 chunk +2 lines, -4 lines 0 comments Download
A + shell/native_application_loader.h View 1 2 3 4 3 chunks +13 lines, -15 lines 0 comments Download
A + shell/native_application_loader.cc View 1 2 3 4 9 chunks +17 lines, -24 lines 0 comments Download
A + shell/native_application_loader_unittest.cc View 1 2 3 4 2 chunks +9 lines, -9 lines 0 comments Download

Messages

Total messages: 9 (3 generated)
Aaron Boodman
5 years, 10 months ago (2015-02-18 19:30:21 UTC) #3
qsr
https://codereview.chromium.org/930243006/diff/80001/shell/application_manager/application_loader.h File shell/application_manager/application_loader.h (right): https://codereview.chromium.org/930243006/diff/80001/shell/application_manager/application_loader.h#newcode45 shell/application_manager/application_loader.h:45: class MOJO_APPLICATION_MANAGER_EXPORT DynamicApplicationLoader { As this is temporary, do ...
5 years, 10 months ago (2015-02-19 09:25:01 UTC) #5
DaveMoore
https://codereview.chromium.org/930243006/diff/80001/shell/application_manager/application_loader.h File shell/application_manager/application_loader.h (right): https://codereview.chromium.org/930243006/diff/80001/shell/application_manager/application_loader.h#newcode45 shell/application_manager/application_loader.h:45: class MOJO_APPLICATION_MANAGER_EXPORT DynamicApplicationLoader { On 2015/02/19 09:25:01, qsr wrote: ...
5 years, 10 months ago (2015-02-19 18:58:31 UTC) #6
Aaron Boodman
https://codereview.chromium.org/930243006/diff/80001/shell/application_manager/application_loader.h File shell/application_manager/application_loader.h (right): https://codereview.chromium.org/930243006/diff/80001/shell/application_manager/application_loader.h#newcode45 shell/application_manager/application_loader.h:45: class MOJO_APPLICATION_MANAGER_EXPORT DynamicApplicationLoader { On 2015/02/19 18:58:31, DaveMoore wrote: ...
5 years, 10 months ago (2015-02-19 20:38:47 UTC) #7
DaveMoore
lgtm
5 years, 10 months ago (2015-02-19 20:42:04 UTC) #8
Aaron Boodman
5 years, 10 months ago (2015-02-19 20:42:27 UTC) #9
Message was sent while issue was closed.
Committed patchset #5 (id:100001) manually as
bfc1118ae801b4142f4027cd3cb1ab079c325f66 (presubmit successful).

Powered by Google App Engine
This is Rietveld 408576698