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

Issue 2326913003: Privatize StrongBinding lifetime management (Closed)

Created:
4 years, 3 months ago by Ken Rockot(use gerrit already)
Modified:
4 years, 3 months ago
Reviewers:
yzshen1
CC:
Aaron Boodman, abarth-chromium, chromium-reviews, darin (slow to review), qsr+mojo_chromium.org, viettrungluu+watch_chromium.org, yzshen+watch_chromium.org
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Privatize StrongBinding lifetime management Makes StrongBinding's ctor and dtor private and simplifies ownership semantics. Now StrongBinding explicitly owns its bound impl and nobody owns a StrongBinding except itself. Adds a helper mojo::MakeStrongBinding for binding requests to new impls. BUG=None R=yzshen@chromium.org TBR=ben@chromium.org Committed: https://crrev.com/8e66a08d9a81cac06ebe4e8933cd02f751fb65fd Cr-Commit-Position: refs/heads/master@{#418124}

Patch Set 1 : . #

Total comments: 1

Patch Set 2 : update all uses of StrongBinding #

Patch Set 3 : . #

Patch Set 4 : . #

Patch Set 5 : rebase #

Patch Set 6 : . #

Patch Set 7 : rebase #

Patch Set 8 : rebase #

Unified diffs Side-by-side diffs Delta from patch set Stats (+822 lines, -1139 lines) Patch
M chrome/browser/budget_service/budget_service_impl.h View 1 3 chunks +3 lines, -8 lines 0 comments Download
M chrome/browser/budget_service/budget_service_impl.cc View 1 1 chunk +9 lines, -8 lines 0 comments Download
M chrome/browser/chromeos/arc/gpu_arc_video_service_host.cc View 1 3 chunks +4 lines, -10 lines 0 comments Download
M chrome/browser/chromeos/attestation/platform_verification_impl.h View 1 3 chunks +2 lines, -6 lines 0 comments Download
M chrome/browser/chromeos/attestation/platform_verification_impl.cc View 1 2 chunks +6 lines, -8 lines 0 comments Download
M chrome/browser/media/output_protection_impl.h View 1 3 chunks +1 line, -5 lines 0 comments Download
M chrome/browser/media/output_protection_impl.cc View 1 2 chunks +6 lines, -8 lines 0 comments Download
M chrome/browser/metrics/leak_detector/leak_detector_remote_controller.h View 1 2 chunks +1 line, -4 lines 0 comments Download
M chrome/browser/metrics/leak_detector/leak_detector_remote_controller.cc View 1 3 chunks +13 lines, -9 lines 0 comments Download
M chrome/gpu/chrome_content_gpu_client.cc View 1 2 chunks +9 lines, -12 lines 0 comments Download
M chrome/gpu/gpu_arc_video_service.h View 1 3 chunks +3 lines, -9 lines 0 comments Download
M chrome/gpu/gpu_arc_video_service.cc View 1 2 chunks +17 lines, -21 lines 0 comments Download
M chrome/renderer/chrome_render_thread_observer.cc View 1 3 chunks +5 lines, -9 lines 0 comments Download
M chrome/utility/chrome_content_utility_client.cc View 1 3 chunks +9 lines, -13 lines 0 comments Download
M chrome/utility/image_decoder_impl.h View 1 2 chunks +1 line, -4 lines 0 comments Download
M chrome/utility/image_decoder_impl.cc View 1 2 chunks +4 lines, -7 lines 0 comments Download
M chrome/utility/shell_handler_impl_win.h View 1 2 1 chunk +3 lines, -6 lines 0 comments Download
M chrome/utility/shell_handler_impl_win.cc View 1 2 2 chunks +7 lines, -6 lines 0 comments Download
M components/contextual_search/browser/contextual_search_js_api_service_impl.h View 1 2 chunks +2 lines, -6 lines 0 comments Download
M components/contextual_search/browser/contextual_search_js_api_service_impl.cc View 1 2 chunks +6 lines, -7 lines 0 comments Download
M components/contextual_search/renderer/overlay_js_render_frame_observer.cc View 1 2 3 5 6 7 2 chunks +5 lines, -2 lines 0 comments Download
M components/contextual_search/renderer/overlay_page_notifier_service_impl.h View 1 2 3 5 6 7 2 chunks +1 line, -4 lines 0 comments Download
M components/contextual_search/renderer/overlay_page_notifier_service_impl.cc View 1 2 3 4 5 6 7 1 chunk +2 lines, -3 lines 0 comments Download
M components/dom_distiller/content/browser/distillability_driver.cc View 1 4 chunks +6 lines, -6 lines 0 comments Download
M components/dom_distiller/content/browser/distiller_javascript_service_impl.h View 1 3 chunks +5 lines, -5 lines 0 comments Download
M components/dom_distiller/content/browser/distiller_javascript_service_impl.cc View 1 2 chunks +6 lines, -7 lines 0 comments Download
M components/dom_distiller/content/renderer/distiller_js_render_frame_observer.h View 1 1 chunk +0 lines, -2 lines 0 comments Download
M components/dom_distiller/content/renderer/distiller_js_render_frame_observer.cc View 1 2 chunks +4 lines, -2 lines 0 comments Download
M components/dom_distiller/content/renderer/distiller_page_notifier_service_impl.h View 1 2 chunks +1 line, -4 lines 0 comments Download
M components/dom_distiller/content/renderer/distiller_page_notifier_service_impl.cc View 1 1 chunk +3 lines, -3 lines 0 comments Download
M components/filesystem/directory_impl.h View 1 5 chunks +4 lines, -11 lines 0 comments Download
M components/filesystem/directory_impl.cc View 1 6 chunks +22 lines, -17 lines 0 comments Download
M components/filesystem/file_impl.h View 1 3 chunks +3 lines, -8 lines 0 comments Download
M components/filesystem/file_impl.cc View 1 4 chunks +12 lines, -13 lines 0 comments Download
M components/filesystem/file_system_app.cc View 1 2 chunks +5 lines, -3 lines 0 comments Download
M components/filesystem/file_system_impl.h View 1 2 chunks +2 lines, -5 lines 0 comments Download
M components/filesystem/file_system_impl.cc View 1 4 chunks +8 lines, -7 lines 0 comments Download
M components/leveldb/leveldb_database_impl.h View 1 3 chunks +1 line, -4 lines 0 comments Download
M components/leveldb/leveldb_database_impl.cc View 1 1 chunk +1 line, -4 lines 0 comments Download
M components/leveldb/leveldb_service_impl.cc View 1 3 chunks +7 lines, -4 lines 0 comments Download
M components/safe_json/utility/safe_json_parser_mojo_impl.h View 1 1 chunk +3 lines, -7 lines 0 comments Download
M components/safe_json/utility/safe_json_parser_mojo_impl.cc View 1 1 chunk +7 lines, -8 lines 0 comments Download
M components/startup_metric_utils/browser/startup_metric_host_impl.h View 1 1 chunk +3 lines, -6 lines 0 comments Download
M components/startup_metric_utils/browser/startup_metric_host_impl.cc View 1 1 chunk +8 lines, -7 lines 0 comments Download
M components/web_restrictions/browser/web_restrictions_mojo_implementation.h View 1 2 2 chunks +3 lines, -7 lines 0 comments Download
M components/web_restrictions/browser/web_restrictions_mojo_implementation.cc View 1 2 2 chunks +10 lines, -8 lines 0 comments Download
M content/browser/battery_status/battery_monitor_integration_browsertest.cc View 1 2 chunks +5 lines, -6 lines 0 comments Download
M content/browser/device_sensors/device_sensor_host.h View 1 3 chunks +1 line, -4 lines 0 comments Download
M content/browser/device_sensors/device_sensor_host.cc View 1 1 chunk +6 lines, -4 lines 0 comments Download
M content/browser/hyphenation/hyphenation_impl.h View 1 2 2 chunks +3 lines, -6 lines 0 comments Download
M content/browser/hyphenation/hyphenation_impl.cc View 1 2 chunks +4 lines, -3 lines 0 comments Download
M content/browser/loader/url_loader_factory_impl.h View 1 2 chunks +3 lines, -6 lines 0 comments Download
M content/browser/loader/url_loader_factory_impl.cc View 1 2 chunks +6 lines, -6 lines 0 comments Download
M content/browser/media/android/provision_fetcher_impl.h View 1 3 chunks +4 lines, -8 lines 0 comments Download
M content/browser/media/android/provision_fetcher_impl.cc View 1 2 chunks +7 lines, -10 lines 0 comments Download
M content/browser/media/capture/image_capture_impl.h View 1 2 chunks +3 lines, -9 lines 0 comments Download
M content/browser/media/capture/image_capture_impl.cc View 1 3 chunks +8 lines, -10 lines 0 comments Download
M content/browser/mime_registry_impl.h View 1 1 chunk +3 lines, -6 lines 0 comments Download
M content/browser/mime_registry_impl.cc View 1 1 chunk +7 lines, -6 lines 0 comments Download
M content/browser/renderer_host/offscreen_canvas_frame_receiver_impl.h View 1 2 chunks +4 lines, -11 lines 0 comments Download
M content/browser/renderer_host/offscreen_canvas_frame_receiver_impl.cc View 1 1 chunk +8 lines, -10 lines 0 comments Download
M content/browser/renderer_host/offscreen_canvas_surface_impl.h View 1 3 chunks +4 lines, -9 lines 0 comments Download
M content/browser/renderer_host/offscreen_canvas_surface_impl.cc View 1 2 chunks +10 lines, -11 lines 0 comments Download
M content/browser/service_worker/embedded_worker_test_helper.cc View 1 2 chunks +8 lines, -10 lines 0 comments Download
M content/browser/service_worker/service_worker_version_unittest.cc View 1 2 chunks +3 lines, -6 lines 0 comments Download
M content/browser/vibration_browsertest.cc View 1 2 chunks +6 lines, -9 lines 0 comments Download
M content/browser/wake_lock/wake_lock_service_context.cc View 1 2 chunks +5 lines, -2 lines 0 comments Download
M content/browser/wake_lock/wake_lock_service_impl.h View 1 3 chunks +3 lines, -7 lines 0 comments Download
M content/browser/wake_lock/wake_lock_service_impl.cc View 1 1 chunk +2 lines, -4 lines 0 comments Download
M content/renderer/background_sync/background_sync_client_impl.h View 1 2 chunks +2 lines, -8 lines 0 comments Download
M content/renderer/background_sync/background_sync_client_impl.cc View 1 2 chunks +4 lines, -4 lines 0 comments Download
M content/renderer/image_downloader/image_downloader_impl.h View 1 2 3 4 5 3 chunks +10 lines, -12 lines 0 comments Download
M content/renderer/image_downloader/image_downloader_impl.cc View 1 2 3 4 5 2 chunks +8 lines, -4 lines 0 comments Download
M content/renderer/render_thread_impl.cc View 1 4 chunks +7 lines, -13 lines 0 comments Download
M content/shell/browser/layout_test/layout_test_bluetooth_fake_adapter_setter_impl.h View 1 2 chunks +3 lines, -7 lines 0 comments Download
M content/shell/browser/layout_test/layout_test_bluetooth_fake_adapter_setter_impl.cc View 1 1 chunk +10 lines, -9 lines 0 comments Download
M content/shell/utility/shell_content_utility_client.cc View 1 2 chunks +3 lines, -6 lines 0 comments Download
M device/battery/battery_monitor_impl.h View 1 2 chunks +3 lines, -6 lines 0 comments Download
M device/battery/battery_monitor_impl.cc View 1 1 chunk +5 lines, -6 lines 0 comments Download
M device/generic_sensor/sensor_impl.h View 1 3 chunks +2 lines, -4 lines 0 comments Download
M device/generic_sensor/sensor_impl.cc View 1 1 chunk +4 lines, -5 lines 0 comments Download
M device/generic_sensor/sensor_provider_impl.h View 1 2 chunks +3 lines, -5 lines 0 comments Download
M device/generic_sensor/sensor_provider_impl.cc View 1 4 chunks +11 lines, -9 lines 0 comments Download
M device/serial/serial_connection.h View 1 3 chunks +1 line, -5 lines 0 comments Download
M device/serial/serial_connection.cc View 1 1 chunk +2 lines, -3 lines 0 comments Download
M device/serial/serial_connection_factory.cc View 1 2 chunks +5 lines, -3 lines 0 comments Download
M device/serial/serial_connection_unittest.cc View 1 2 chunks +8 lines, -6 lines 0 comments Download
M device/serial/serial_service_impl.h View 1 2 chunks +3 lines, -6 lines 0 comments Download
M device/serial/serial_service_impl.cc View 1 1 chunk +9 lines, -13 lines 0 comments Download
M device/serial/serial_service_unittest.cc View 1 2 chunks +8 lines, -6 lines 0 comments Download
M device/usb/mojo/device_impl.h View 1 2 3 chunks +3 lines, -3 lines 0 comments Download
M device/usb/mojo/device_impl.cc View 1 2 3 4 5 2 chunks +3 lines, -1 line 0 comments Download
M device/usb/mojo/device_impl_unittest.cc View 1 2 2 chunks +3 lines, -0 lines 0 comments Download
M device/usb/mojo/device_manager_impl.h View 1 3 chunks +1 line, -4 lines 0 comments Download
M device/usb/mojo/device_manager_impl.cc View 1 2 3 chunks +6 lines, -4 lines 0 comments Download
M device/usb/mojo/device_manager_impl_unittest.cc View 1 3 chunks +4 lines, -3 lines 0 comments Download
M device/vibration/vibration_manager_impl_default.cc View 1 2 chunks +7 lines, -14 lines 0 comments Download
M extensions/browser/api/display_source/wifi_display/wifi_display_media_service_impl.h View 1 2 chunks +1 line, -3 lines 0 comments Download
M extensions/browser/api/display_source/wifi_display/wifi_display_media_service_impl.cc View 1 3 chunks +4 lines, -4 lines 0 comments Download
M extensions/browser/api/display_source/wifi_display/wifi_display_session_service_impl.h View 1 3 chunks +1 line, -4 lines 0 comments Download
M extensions/browser/api/display_source/wifi_display/wifi_display_session_service_impl.cc View 1 3 chunks +6 lines, -6 lines 0 comments Download
M extensions/browser/api/mime_handler_private/mime_handler_private.h View 1 3 chunks +6 lines, -11 lines 0 comments Download
M extensions/browser/api/mime_handler_private/mime_handler_private.cc View 1 2 chunks +11 lines, -12 lines 0 comments Download
M extensions/browser/api/mime_handler_private/mime_handler_private_unittest.cc View 1 4 chunks +18 lines, -15 lines 0 comments Download
M extensions/browser/api/serial/serial_apitest.cc View 1 2 chunks +4 lines, -2 lines 0 comments Download
M extensions/browser/mojo/keep_alive_impl.h View 1 3 chunks +4 lines, -5 lines 0 comments Download
M extensions/browser/mojo/keep_alive_impl.cc View 1 2 chunks +4 lines, -2 lines 0 comments Download
M extensions/browser/mojo/stash_backend.cc View 1 3 chunks +7 lines, -9 lines 0 comments Download
M extensions/renderer/api/serial/serial_api_unittest.cc View 1 3 chunks +9 lines, -7 lines 0 comments Download
M extensions/renderer/mojo/keep_alive_client_unittest.cc View 1 1 chunk +5 lines, -7 lines 0 comments Download
M media/mojo/clients/mojo_renderer_unittest.cc View 1 2 3 4 5 chunks +13 lines, -10 lines 0 comments Download
M media/mojo/services/mojo_audio_decoder_service.h View 1 3 chunks +1 line, -7 lines 0 comments Download
M media/mojo/services/mojo_audio_decoder_service.cc View 1 1 chunk +2 lines, -4 lines 0 comments Download
M media/mojo/services/mojo_cdm_service.h View 1 3 chunks +2 lines, -6 lines 0 comments Download
M media/mojo/services/mojo_cdm_service.cc View 1 1 chunk +3 lines, -6 lines 0 comments Download
M media/mojo/services/mojo_media_application.cc View 1 2 chunks +6 lines, -4 lines 0 comments Download
M media/mojo/services/mojo_renderer_service.h View 1 2 3 4 3 chunks +1 line, -5 lines 0 comments Download
M media/mojo/services/mojo_renderer_service.cc View 1 2 3 4 1 chunk +2 lines, -4 lines 0 comments Download
M media/mojo/services/mojo_video_decoder_service.h View 1 3 chunks +1 line, -4 lines 0 comments Download
M media/mojo/services/mojo_video_decoder_service.cc View 1 1 chunk +1 line, -4 lines 0 comments Download
M media/mojo/services/service_factory_impl.h View 1 3 chunks +1 line, -4 lines 0 comments Download
M media/mojo/services/service_factory_impl.cc View 1 5 chunks +17 lines, -12 lines 0 comments Download
M mojo/public/cpp/bindings/strong_binding.h View 1 4 chunks +53 lines, -72 lines 0 comments Download
M mojo/public/cpp/bindings/tests/associated_interface_unittest.cc View 2 chunks +16 lines, -11 lines 0 comments Download
M mojo/public/cpp/bindings/tests/binding_unittest.cc View 1 4 chunks +32 lines, -74 lines 0 comments Download
M mojo/public/cpp/bindings/tests/e2e_perftest.cc View 1 3 chunks +4 lines, -7 lines 0 comments Download
M mojo/public/cpp/bindings/tests/handle_passing_unittest.cc View 3 chunks +4 lines, -4 lines 0 comments Download
M mojo/public/cpp/bindings/tests/interface_ptr_unittest.cc View 1 6 chunks +14 lines, -32 lines 0 comments Download
M net/proxy/in_process_mojo_proxy_resolver_factory.cc View 1 2 chunks +3 lines, -4 lines 0 comments Download
M net/proxy/mojo_proxy_resolver_factory_impl.h View 1 3 chunks +3 lines, -7 lines 0 comments Download
M net/proxy/mojo_proxy_resolver_factory_impl.cc View 1 3 chunks +8 lines, -46 lines 0 comments Download
M net/proxy/mojo_proxy_resolver_factory_impl_unittest.cc View 1 2 chunks +4 lines, -2 lines 0 comments Download
M services/catalog/catalog.cc View 1 2 chunks +6 lines, -3 lines 0 comments Download
M services/file/file_system.cc View 1 3 chunks +9 lines, -6 lines 0 comments Download
M services/navigation/navigation.cc View 1 2 chunks +5 lines, -3 lines 0 comments Download
M services/navigation/view_impl.h View 1 3 chunks +0 lines, -3 lines 0 comments Download
M services/navigation/view_impl.cc View 1 2 chunks +6 lines, -6 lines 0 comments Download
M services/shell/standalone/context.cc View 1 3 chunks +3 lines, -5 lines 0 comments Download
M services/ui/gpu/display_compositor/compositor_frame_sink_factory_impl.h View 1 3 chunks +0 lines, -3 lines 0 comments Download
M services/ui/gpu/display_compositor/compositor_frame_sink_factory_impl.cc View 1 1 chunk +1 line, -3 lines 0 comments Download
M services/ui/gpu/display_compositor/display_compositor_impl.h View 1 3 chunks +1 line, -5 lines 0 comments Download
M services/ui/gpu/display_compositor/display_compositor_impl.cc View 1 1 chunk +1 line, -3 lines 0 comments Download
M services/ui/ime/test_ime_driver/test_ime_application.cc View 1 2 chunks +3 lines, -1 line 0 comments Download
M services/ui/ime/test_ime_driver/test_ime_driver.h View 1 3 chunks +5 lines, -3 lines 0 comments Download
M services/ui/ime/test_ime_driver/test_ime_driver.cc View 1 1 chunk +1 line, -2 lines 0 comments Download
M services/ui/service.cc View 1 3 chunks +8 lines, -3 lines 0 comments Download
M services/ui/ws/window_server_test_impl.h View 1 3 chunks +2 lines, -6 lines 0 comments Download
M services/ui/ws/window_server_test_impl.cc View 1 1 chunk +2 lines, -4 lines 0 comments Download
M services/ui/ws/window_tree_factory.h View 1 3 chunks +2 lines, -5 lines 0 comments Download
M services/ui/ws/window_tree_factory.cc View 1 1 chunk +2 lines, -4 lines 0 comments Download

Messages

Total messages: 47 (40 generated)
Ken Rockot(use gerrit already)
PTAL - I've only updated bindings tests for now but can go through and update ...
4 years, 3 months ago (2016-09-09 13:53:33 UTC) #2
yzshen1
LGTM! Thanks! https://codereview.chromium.org/2326913003/diff/20001/mojo/public/cpp/bindings/tests/binding_unittest.cc File mojo/public/cpp/bindings/tests/binding_unittest.cc (left): https://codereview.chromium.org/2326913003/diff/20001/mojo/public/cpp/bindings/tests/binding_unittest.cc#oldcode494 mojo/public/cpp/bindings/tests/binding_unittest.cc:494: // Tests that even when the implementation ...
4 years, 3 months ago (2016-09-09 16:21:30 UTC) #3
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/2326913003/130001
4 years, 3 months ago (2016-09-12 20:46:08 UTC) #36
commit-bot: I haz the power
Failed to apply patch for components/contextual_search/renderer/overlay_js_render_frame_observer.cc: While running git apply --index -3 -p1; error: patch ...
4 years, 3 months ago (2016-09-12 20:57:18 UTC) #38
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/2326913003/150001
4 years, 3 months ago (2016-09-12 21:33:44 UTC) #44
commit-bot: I haz the power
Committed patchset #8 (id:150001)
4 years, 3 months ago (2016-09-13 00:48:44 UTC) #45
commit-bot: I haz the power
4 years, 3 months ago (2016-09-13 00:50:07 UTC) #47
Message was sent while issue was closed.
Patchset 8 (id:??) landed as
https://crrev.com/8e66a08d9a81cac06ebe4e8933cd02f751fb65fd
Cr-Commit-Position: refs/heads/master@{#418124}

Powered by Google App Engine
This is Rietveld 408576698