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

Issue 1596663002: arc-bridge: Introduce the ArcService class (Closed)

Created:
4 years, 11 months ago by Luis Héctor Chávez
Modified:
4 years, 11 months ago
CC:
chromium-reviews, dcheng, oshima+watch_chromium.org, davemoore+watch_chromium.org
Base URL:
https://chromium.googlesource.com/a/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

arc-bridge: Introduce the ArcService class Several services managed by ARC were introducing empty, opaque classes just to be able to be constructed outside of components/. This was becoming ugly, so introduce just one interface that all services must implement and whose lifecycle will be managed by ArcServiceManager. BUG=None TEST=trybots Committed: https://crrev.com/811769ba67bef5ff1e0a120146c0d593a6ebe5db Cr-Commit-Position: refs/heads/master@{#370825}

Patch Set 1 #

Patch Set 2 : Fixed Chrome OS build #

Total comments: 14

Patch Set 3 : Addressed feedback #

Total comments: 2

Patch Set 4 : Removed a stray class forward declaration #

Patch Set 5 : Fixed Chrome OS builds #

Total comments: 7

Patch Set 6 : Made ArcService own the ArcBridgeService*. #

Patch Set 7 : Moved race avoidance boilerplate to ArcBridgeService #

Total comments: 2

Patch Set 8 : Rebased + protected ArcService direct instantiation #

Unified diffs Side-by-side diffs Delta from patch set Stats (+472 lines, -1341 lines) Patch
A chrome/browser/chromeos/arc/arc_auth_service.h View 1 2 3 4 5 1 chunk +39 lines, -0 lines 0 comments Download
A chrome/browser/chromeos/arc/arc_auth_service.cc View 1 2 3 4 5 6 1 chunk +31 lines, -0 lines 0 comments Download
D chrome/browser/chromeos/arc/arc_auth_service_impl.h View 1 chunk +0 lines, -44 lines 0 comments Download
D chrome/browser/chromeos/arc/arc_auth_service_impl.cc View 1 chunk +0 lines, -32 lines 0 comments Download
A chrome/browser/chromeos/arc/arc_intent_helper_bridge.h View 1 2 3 4 5 6 7 1 chunk +37 lines, -0 lines 0 comments Download
A + chrome/browser/chromeos/arc/arc_intent_helper_bridge.cc View 1 2 3 4 5 6 7 2 chunks +9 lines, -15 lines 0 comments Download
D chrome/browser/chromeos/arc/arc_intent_helper_bridge_impl.h View 1 2 3 4 5 6 7 1 chunk +0 lines, -41 lines 0 comments Download
D chrome/browser/chromeos/arc/arc_intent_helper_bridge_impl.cc View 1 2 3 4 5 6 7 1 chunk +0 lines, -54 lines 0 comments Download
A + chrome/browser/chromeos/arc/arc_settings_bridge.h View 1 2 3 4 5 4 chunks +10 lines, -16 lines 0 comments Download
A + chrome/browser/chromeos/arc/arc_settings_bridge.cc View 1 2 3 4 5 6 11 chunks +27 lines, -30 lines 0 comments Download
D chrome/browser/chromeos/arc/arc_settings_bridge_impl.h View 1 chunk +0 lines, -99 lines 0 comments Download
D chrome/browser/chromeos/arc/arc_settings_bridge_impl.cc View 1 chunk +0 lines, -192 lines 0 comments Download
M chrome/browser/chromeos/arc/arc_settings_bridge_unittest.cc View 1 1 chunk +1 line, -1 line 0 comments Download
M chrome/browser/chromeos/chrome_browser_main_chromeos.cc View 1 2 3 4 5 6 7 3 chunks +14 lines, -10 lines 0 comments Download
M chrome/browser/ui/app_list/arc/arc_app_list_prefs.cc View 1 2 3 4 5 6 7 1 chunk +0 lines, -2 lines 0 comments Download
M chrome/chrome_browser_chromeos.gypi View 1 2 3 4 5 6 7 1 chunk +6 lines, -6 lines 0 comments Download
M components/arc.gypi View 1 2 3 4 5 6 7 2 chunks +3 lines, -7 lines 0 comments Download
M components/arc/BUILD.gn View 1 2 3 4 5 6 7 2 chunks +3 lines, -7 lines 0 comments Download
M components/arc/arc_bridge_service.cc View 1 2 3 4 5 6 7 1 chunk +24 lines, -0 lines 0 comments Download
A components/arc/arc_service.h View 1 2 3 4 5 6 7 1 chunk +35 lines, -0 lines 0 comments Download
A components/arc/arc_service.cc View 1 2 3 4 5 6 1 chunk +18 lines, -0 lines 0 comments Download
M components/arc/arc_service_manager.h View 1 2 3 4 5 6 7 3 chunks +8 lines, -24 lines 0 comments Download
M components/arc/arc_service_manager.cc View 1 2 3 4 5 6 7 3 chunks +14 lines, -24 lines 0 comments Download
D components/arc/auth/arc_auth_service.h View 1 chunk +0 lines, -20 lines 0 comments Download
M components/arc/clipboard/arc_clipboard_bridge.h View 1 2 3 4 5 2 chunks +3 lines, -3 lines 0 comments Download
M components/arc/clipboard/arc_clipboard_bridge.cc View 1 2 3 4 5 6 2 chunks +7 lines, -5 lines 0 comments Download
M components/arc/ime/arc_ime_bridge.h View 1 2 3 4 5 6 7 2 chunks +4 lines, -2 lines 0 comments Download
M components/arc/ime/arc_ime_bridge.cc View 1 2 3 4 5 6 7 1 chunk +3 lines, -2 lines 0 comments Download
M components/arc/input/arc_input_bridge.h View 1 2 3 4 5 2 chunks +111 lines, -13 lines 0 comments Download
A + components/arc/input/arc_input_bridge.cc View 1 2 3 4 5 6 14 chunks +24 lines, -36 lines 0 comments Download
D components/arc/input/arc_input_bridge_impl.h View 1 chunk +0 lines, -136 lines 0 comments Download
D components/arc/input/arc_input_bridge_impl.cc View 1 chunk +0 lines, -387 lines 0 comments Download
D components/arc/intent_helper/arc_intent_helper_bridge.h View 1 2 3 4 5 6 7 1 chunk +0 lines, -26 lines 0 comments Download
D components/arc/intent_helper/arc_intent_helper_bridge.cc View 1 2 3 4 5 6 7 1 chunk +0 lines, -11 lines 0 comments Download
M components/arc/power/arc_power_bridge.h View 1 2 3 4 5 3 chunks +7 lines, -7 lines 0 comments Download
M components/arc/power/arc_power_bridge.cc View 1 2 3 4 5 6 7 2 chunks +5 lines, -7 lines 0 comments Download
D components/arc/settings/arc_settings_bridge.h View 1 chunk +0 lines, -26 lines 0 comments Download
D components/arc/settings/arc_settings_bridge.cc View 1 chunk +0 lines, -11 lines 0 comments Download
M components/arc/video/arc_video_bridge.h View 3 4 5 3 chunks +7 lines, -8 lines 0 comments Download
M components/arc/video/arc_video_bridge.cc View 1 2 3 4 5 6 2 chunks +8 lines, -20 lines 0 comments Download
M ui/arc/notification/arc_notification_manager.h View 1 2 3 4 5 3 chunks +3 lines, -2 lines 0 comments Download
M ui/arc/notification/arc_notification_manager.cc View 1 2 3 4 5 6 7 3 chunks +11 lines, -15 lines 0 comments Download

Messages

Total messages: 20 (4 generated)
Luis Héctor Chávez
PTAL elijahtaylor, hidehiko: components/arc, ui/arc xiyuan: chrome/browser/chromeos
4 years, 11 months ago (2016-01-15 21:41:58 UTC) #2
hidehiko
https://codereview.chromium.org/1596663002/diff/20001/chrome/browser/chromeos/arc/arc_auth_service.cc File chrome/browser/chromeos/arc/arc_auth_service.cc (right): https://codereview.chromium.org/1596663002/diff/20001/chrome/browser/chromeos/arc/arc_auth_service.cc#newcode21 chrome/browser/chromeos/arc/arc_auth_service.cc:21: ArcBridgeService::Get()->RemoveObserver(this); For consistency, could you keep the |arc_bridge| passed ...
4 years, 11 months ago (2016-01-18 01:26:45 UTC) #3
Luis Héctor Chávez
https://codereview.chromium.org/1596663002/diff/20001/chrome/browser/chromeos/arc/arc_auth_service.cc File chrome/browser/chromeos/arc/arc_auth_service.cc (right): https://codereview.chromium.org/1596663002/diff/20001/chrome/browser/chromeos/arc/arc_auth_service.cc#newcode21 chrome/browser/chromeos/arc/arc_auth_service.cc:21: ArcBridgeService::Get()->RemoveObserver(this); On 2016/01/18 01:26:44, hidehiko wrote: > For consistency, ...
4 years, 11 months ago (2016-01-19 17:43:54 UTC) #4
xiyuan
LGTM but please wait for other reviews. https://codereview.chromium.org/1596663002/diff/40001/components/arc/arc_service.h File components/arc/arc_service.h (right): https://codereview.chromium.org/1596663002/diff/40001/components/arc/arc_service.h#newcode12 components/arc/arc_service.h:12: class ArcBridgeService; ...
4 years, 11 months ago (2016-01-19 18:50:36 UTC) #5
Luis Héctor Chávez
https://codereview.chromium.org/1596663002/diff/40001/components/arc/arc_service.h File components/arc/arc_service.h (right): https://codereview.chromium.org/1596663002/diff/40001/components/arc/arc_service.h#newcode12 components/arc/arc_service.h:12: class ArcBridgeService; On 2016/01/19 18:50:36, xiyuan wrote: > nit: ...
4 years, 11 months ago (2016-01-19 19:17:29 UTC) #6
elijahtaylor1
mostly clarification questions which might warrant change, defer to hidehiko https://codereview.chromium.org/1596663002/diff/80001/components/arc/arc_service.h File components/arc/arc_service.h (right): https://codereview.chromium.org/1596663002/diff/80001/components/arc/arc_service.h#newcode20 ...
4 years, 11 months ago (2016-01-20 00:41:19 UTC) #7
hidehiko
https://codereview.chromium.org/1596663002/diff/20001/components/arc/arc_service.h File components/arc/arc_service.h (right): https://codereview.chromium.org/1596663002/diff/20001/components/arc/arc_service.h#newcode20 components/arc/arc_service.h:20: ArcService() {} On 2016/01/19 17:43:54, Luis Héctor Chávez wrote: ...
4 years, 11 months ago (2016-01-20 16:04:50 UTC) #8
Luis Héctor Chávez
On 2016/01/20 16:04:50, hidehiko wrote: > https://codereview.chromium.org/1596663002/diff/20001/components/arc/arc_service.h > File components/arc/arc_service.h (right): > > https://codereview.chromium.org/1596663002/diff/20001/components/arc/arc_service.h#newcode20 > ...
4 years, 11 months ago (2016-01-20 17:34:27 UTC) #9
Luis Héctor Chávez
https://codereview.chromium.org/1596663002/diff/80001/components/arc/arc_service.h File components/arc/arc_service.h (right): https://codereview.chromium.org/1596663002/diff/80001/components/arc/arc_service.h#newcode20 components/arc/arc_service.h:20: On 2016/01/20 00:41:19, elijahtaylor1 wrote: > all of the ...
4 years, 11 months ago (2016-01-20 17:39:59 UTC) #10
Luis Héctor Chávez
On 2016/01/20 17:39:59, Luis Héctor Chávez wrote: > https://codereview.chromium.org/1596663002/diff/80001/components/arc/arc_service.h > File components/arc/arc_service.h (right): > > ...
4 years, 11 months ago (2016-01-20 18:21:50 UTC) #11
Luis Héctor Chávez
https://codereview.chromium.org/1596663002/diff/20001/components/arc/arc_service.h File components/arc/arc_service.h (right): https://codereview.chromium.org/1596663002/diff/20001/components/arc/arc_service.h#newcode20 components/arc/arc_service.h:20: ArcService() {} On 2016/01/20 16:04:50, hidehiko wrote: > On ...
4 years, 11 months ago (2016-01-20 18:40:46 UTC) #12
hidehiko
LGTM. Thank you for explanation of your design. Now I believe I understand your goal, ...
4 years, 11 months ago (2016-01-21 08:08:28 UTC) #13
Luis Héctor Chávez
https://codereview.chromium.org/1596663002/diff/120001/components/arc/arc_service.h File components/arc/arc_service.h (right): https://codereview.chromium.org/1596663002/diff/120001/components/arc/arc_service.h#newcode21 components/arc/arc_service.h:21: virtual ~ArcService(); On 2016/01/21 08:08:28, hidehiko wrote: > nit: ...
4 years, 11 months ago (2016-01-21 22:42:14 UTC) #14
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1596663002/140001 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1596663002/140001
4 years, 11 months ago (2016-01-21 22:43:57 UTC) #17
commit-bot: I haz the power
Committed patchset #8 (id:140001)
4 years, 11 months ago (2016-01-21 23:27:33 UTC) #18
commit-bot: I haz the power
4 years, 11 months ago (2016-01-21 23:30:28 UTC) #20
Message was sent while issue was closed.
Patchset 8 (id:??) landed as
https://crrev.com/811769ba67bef5ff1e0a120146c0d593a6ebe5db
Cr-Commit-Position: refs/heads/master@{#370825}

Powered by Google App Engine
This is Rietveld 408576698