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

Issue 2787963003: WebView: Refactor PlatformServiceBridge.getInstance (Closed)

Created:
3 years, 8 months ago by paulmiller
Modified:
3 years, 8 months ago
CC:
chromium-reviews, kalyank, sadrul, android-webview-reviews_chromium.org, agrieve+watch_chromium.org, timvolodine
Target Ref:
refs/heads/master
Project:
chromium
Visibility:
Public.

Description

WebView: Refactor PlatformServiceBridge.getInstance Split getInstance into a creator (getOrCreateInstance), a getter (getInstance), and setter for testing (injectInstance). This way, only the first user of PlatformServiceBridge need supply a Context. injectInstance cuts down on some redundant test code. Also remove the lock around creation, since that happens in WebViewChromiumFactoryProvider.startChromiumLocked, before there are any other users. BUG=681805 BUG=706495 Review-Url: https://codereview.chromium.org/2787963003 Cr-Commit-Position: refs/heads/master@{#462134} Committed: https://chromium.googlesource.com/chromium/src/+/2009b0e3ce935a30f27334687773f7f3abc809cb

Patch Set 1 #

Patch Set 2 : make injectInstance less picky #

Total comments: 13

Patch Set 3 : once more with feeling and getOrCreateInstance #

Total comments: 5

Patch Set 4 : hoist getOrCreateInstance call and simplify tests #

Total comments: 6

Patch Set 5 : volatile sInstance and comments #

Messages

Total messages: 30 (12 generated)
paulmiller
On 2017/03/30 23:12:36, paulmiller wrote: > mailto:paulmiller@chromium.org changed reviewers: > + mailto:gsennton@chromium.org, mailto:michaelbai@chromium.org, mailto:timvolodine@chromium.org PTAL. ...
3 years, 8 months ago (2017-03-30 23:16:03 UTC) #3
paulmiller
On 2017/03/30 23:16:03, paulmiller wrote: > On 2017/03/30 23:12:36, paulmiller wrote: > > mailto:paulmiller@chromium.org changed ...
3 years, 8 months ago (2017-03-31 21:33:42 UTC) #5
paulmiller
On 2017/03/31 21:33:42, paulmiller wrote: > On 2017/03/30 23:16:03, paulmiller wrote: > > On 2017/03/30 ...
3 years, 8 months ago (2017-03-31 21:37:52 UTC) #7
gsennton
https://codereview.chromium.org/2787963003/diff/20001/android_webview/java/src/org/chromium/android_webview/crash/AwMinidumpUploaderDelegate.java File android_webview/java/src/org/chromium/android_webview/crash/AwMinidumpUploaderDelegate.java (right): https://codereview.chromium.org/2787963003/diff/20001/android_webview/java/src/org/chromium/android_webview/crash/AwMinidumpUploaderDelegate.java#newcode79 android_webview/java/src/org/chromium/android_webview/crash/AwMinidumpUploaderDelegate.java:79: PlatformServiceBridge.getInstance().queryMetricsSetting(new ValueCallback<Boolean>() { When is the PlatformServiceBridge created in ...
3 years, 8 months ago (2017-04-03 09:56:20 UTC) #9
Tobias Sargeant
https://codereview.chromium.org/2787963003/diff/20001/android_webview/glue/java/src/com/android/webview/chromium/WebViewChromiumFactoryProvider.java File android_webview/glue/java/src/com/android/webview/chromium/WebViewChromiumFactoryProvider.java (right): https://codereview.chromium.org/2787963003/diff/20001/android_webview/glue/java/src/com/android/webview/chromium/WebViewChromiumFactoryProvider.java#newcode423 android_webview/glue/java/src/com/android/webview/chromium/WebViewChromiumFactoryProvider.java:423: PlatformServiceBridge.createInstance(context).queryMetricsSetting( Keep this getInstance() and add a createInstance() earlier ...
3 years, 8 months ago (2017-04-03 10:40:06 UTC) #10
timvolodine
https://codereview.chromium.org/2787963003/diff/20001/android_webview/glue/java/src/com/android/webview/chromium/WebViewChromiumFactoryProvider.java File android_webview/glue/java/src/com/android/webview/chromium/WebViewChromiumFactoryProvider.java (right): https://codereview.chromium.org/2787963003/diff/20001/android_webview/glue/java/src/com/android/webview/chromium/WebViewChromiumFactoryProvider.java#newcode422 android_webview/glue/java/src/com/android/webview/chromium/WebViewChromiumFactoryProvider.java:422: // Actions conditioned on whether the Android Checkbox is ...
3 years, 8 months ago (2017-04-03 12:18:52 UTC) #12
paulmiller
https://codereview.chromium.org/2787963003/diff/20001/android_webview/glue/java/src/com/android/webview/chromium/WebViewChromiumFactoryProvider.java File android_webview/glue/java/src/com/android/webview/chromium/WebViewChromiumFactoryProvider.java (right): https://codereview.chromium.org/2787963003/diff/20001/android_webview/glue/java/src/com/android/webview/chromium/WebViewChromiumFactoryProvider.java#newcode422 android_webview/glue/java/src/com/android/webview/chromium/WebViewChromiumFactoryProvider.java:422: // Actions conditioned on whether the Android Checkbox is ...
3 years, 8 months ago (2017-04-03 23:34:16 UTC) #13
Tobias Sargeant
https://codereview.chromium.org/2787963003/diff/20001/android_webview/glue/java/src/com/android/webview/chromium/WebViewChromiumFactoryProvider.java File android_webview/glue/java/src/com/android/webview/chromium/WebViewChromiumFactoryProvider.java (right): https://codereview.chromium.org/2787963003/diff/20001/android_webview/glue/java/src/com/android/webview/chromium/WebViewChromiumFactoryProvider.java#newcode423 android_webview/glue/java/src/com/android/webview/chromium/WebViewChromiumFactoryProvider.java:423: PlatformServiceBridge.createInstance(context).queryMetricsSetting( On 2017/04/03 23:34:16, paulmiller wrote: > On 2017/04/03 ...
3 years, 8 months ago (2017-04-04 12:30:47 UTC) #15
gsennton
https://codereview.chromium.org/2787963003/diff/40001/android_webview/java/src/org/chromium/android_webview/AwMetricsLogUploader.java File android_webview/java/src/org/chromium/android_webview/AwMetricsLogUploader.java (right): https://codereview.chromium.org/2787963003/diff/40001/android_webview/java/src/org/chromium/android_webview/AwMetricsLogUploader.java#newcode17 android_webview/java/src/org/chromium/android_webview/AwMetricsLogUploader.java:17: PlatformServiceBridge.getInstance().logMetrics(data); Apologies if you've only answered this somewhere else ...
3 years, 8 months ago (2017-04-04 13:47:54 UTC) #16
paulmiller
https://codereview.chromium.org/2787963003/diff/40001/android_webview/java/src/org/chromium/android_webview/AwMetricsLogUploader.java File android_webview/java/src/org/chromium/android_webview/AwMetricsLogUploader.java (right): https://codereview.chromium.org/2787963003/diff/40001/android_webview/java/src/org/chromium/android_webview/AwMetricsLogUploader.java#newcode17 android_webview/java/src/org/chromium/android_webview/AwMetricsLogUploader.java:17: PlatformServiceBridge.getInstance().logMetrics(data); On 2017/04/04 13:47:54, gsennton wrote: > Apologies if ...
3 years, 8 months ago (2017-04-04 18:33:24 UTC) #17
paulmiller
> I mean the fact that the PermissionTestPlatformServiceBridge is asking the > (mocked) permission manager ...
3 years, 8 months ago (2017-04-04 18:36:58 UTC) #18
paulmiller
PTAL at #4
3 years, 8 months ago (2017-04-04 19:04:18 UTC) #19
Tobias Sargeant
LGTM. https://codereview.chromium.org/2787963003/diff/60001/android_webview/java/src/org/chromium/android_webview/PlatformServiceBridge.java File android_webview/java/src/org/chromium/android_webview/PlatformServiceBridge.java (right): https://codereview.chromium.org/2787963003/diff/60001/android_webview/java/src/org/chromium/android_webview/PlatformServiceBridge.java#newcode24 android_webview/java/src/org/chromium/android_webview/PlatformServiceBridge.java:24: private static PlatformServiceBridge sInstance; Seeing as this is ...
3 years, 8 months ago (2017-04-05 13:00:21 UTC) #20
gsennton
Wow, sorry for the mess in MinidumpUploaderTest, I really need to clean that up :(. ...
3 years, 8 months ago (2017-04-05 15:21:13 UTC) #21
gsennton
lgtm % the comments from the previous reply.
3 years, 8 months ago (2017-04-05 15:21:41 UTC) #22
paulmiller
https://codereview.chromium.org/2787963003/diff/60001/android_webview/glue/java/src/com/android/webview/chromium/WebViewChromiumFactoryProvider.java File android_webview/glue/java/src/com/android/webview/chromium/WebViewChromiumFactoryProvider.java (right): https://codereview.chromium.org/2787963003/diff/60001/android_webview/glue/java/src/com/android/webview/chromium/WebViewChromiumFactoryProvider.java#newcode425 android_webview/glue/java/src/com/android/webview/chromium/WebViewChromiumFactoryProvider.java:425: // Future calls to PlatformServiceBridge.getInstance() rely on it having ...
3 years, 8 months ago (2017-04-05 17:02:39 UTC) #23
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2787963003/80001
3 years, 8 months ago (2017-04-05 17:09:35 UTC) #27
commit-bot: I haz the power
3 years, 8 months ago (2017-04-05 17:42:49 UTC) #30
Message was sent while issue was closed.
Committed patchset #5 (id:80001) as
https://chromium.googlesource.com/chromium/src/+/2009b0e3ce935a30f27334687773...

Powered by Google App Engine
This is Rietveld 408576698