Skip to content

Commit

Permalink
Reland: Move generic_sensor into Device Service.
Browse files Browse the repository at this point in the history
Reland the CL: https://codereview.chromium.org/2865263002/
Move //device/generic_sensor to be part of the internal implementation
of the Device Service.

This is the last step of "Content Modularization of generic sensor". 
Remove the *.export.h, change the gn target 'component' to 'source_set', which
makes the generic sensor to be the internal implementation of //services.

Previously it broke the generic_sensor_browsertest, the root cause is: There
is a global var: |g_provider_for_testing| in "platform_sensor_provider.cc".
If we change the "component" to "source_set", all dependents don't share the
same |g_provider_for_testing| anymore.

The CL "rewrite the generic_sensor_browsertest" was landed, the new
generic_sensor_browsertest doesn't use the |g_provider_for_testing| anymore.

Compared to the reverted CL, This CL doesn't make other changes except:
1)resolving some conflicts.
2)Add visibility control in BUILD.gn of //services/device/generic_sensor.

BUG=689384

Change-Id: I0c989eb98e2eb8f8bf06b13e19055903b2853fd0
Reviewed-on: https://chromium-review.googlesource.com/549481
Commit-Queue: Ke He <ke.he@intel.com>
Reviewed-by: John Abd-El-Malek <jam@chromium.org>
Reviewed-by: Tom Sepez <tsepez@chromium.org>
Reviewed-by: Reilly Grant <reillyg@chromium.org>
Cr-Commit-Position: refs/heads/master@{#484462}
  • Loading branch information
Ke He authored and Commit Bot committed Jul 6, 2017
1 parent 3a50e36 commit 6071829
Show file tree
Hide file tree
Showing 91 changed files with 300 additions and 384 deletions.
2 changes: 1 addition & 1 deletion BUILD.gn
Original file line number Diff line number Diff line change
Expand Up @@ -861,13 +861,13 @@ if (!is_ios && !is_fuchsia) {
"//content/shell:content_shell",
"//content/test:mojo_layouttest_bindings_js_data_deps",
"//device/bluetooth/public/interfaces:fake_bluetooth_interfaces_js_data_deps",
"//device/generic_sensor/public/interfaces:interfaces_js_data_deps",
"//device/geolocation/public/interfaces:interfaces_js_data_deps",
"//device/usb/public/interfaces:interfaces_js_data_deps",
"//device/vr:mojo_bindings_js_data_deps",
"//media/capture/mojo:image_capture_js_data_deps",
"//mojo/public/interfaces/bindings/tests:test_data_deps",
"//services/device/public/interfaces:interfaces_js_data_deps",
"//services/device/public/interfaces:generic_sensor_js_data_deps",
"//services/service_manager/public/interfaces:interfaces_js_data_deps",
"//services/shape_detection/public/interfaces:interfaces_js_data_deps",
"//third_party/WebKit/public:blink_devtools_frontend_resources_files",
Expand Down
1 change: 0 additions & 1 deletion chrome/BUILD.gn
Original file line number Diff line number Diff line change
Expand Up @@ -1766,7 +1766,6 @@ if (is_android) {
if (is_android && is_component_build) {
deps += [
"//device/gamepad",
"//device/generic_sensor",
"//device/sensors",
]
}
Expand Down
1 change: 0 additions & 1 deletion content/app/BUILD.gn
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,6 @@ template("implement_content_app") {
"//content/public/android:jni",
"//device/bluetooth",
"//device/gamepad",
"//device/generic_sensor",
"//device/geolocation",
"//device/power_save_blocker",
"//device/sensors",
Expand Down
1 change: 0 additions & 1 deletion content/app/DEPS
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,6 @@ include_rules = [
"+content",
"+device/bluetooth",
"+device/gamepad",
"+device/generic_sensor",
"+device/geolocation",
"+device/power_save_blocker",
"+device/sensors",
Expand Down
4 changes: 0 additions & 4 deletions content/app/android/library_loader_hooks.cc
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,6 @@
#include "content/public/common/result_codes.h"
#include "device/bluetooth/android/bluetooth_jni_registrar.h"
#include "device/gamepad/android/gamepad_jni_registrar.h"
#include "device/generic_sensor/android/sensors_jni_registrar.h"
#include "device/geolocation/android/geolocation_jni_registrar.h"
#include "device/sensors/android/device_sensor_jni_registrar.h"
#include "device/usb/android/usb_jni_registrar.h"
Expand Down Expand Up @@ -90,9 +89,6 @@ bool EnsureJniRegistered(JNIEnv* env) {
if (!device::android::RegisterGeolocationJni(env))
return false;

if (!device::android::RegisterSensorsJni(env))
return false;

if (!device::android::RegisterUsbJni(env))
return false;

Expand Down
1 change: 0 additions & 1 deletion content/browser/DEPS
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,6 @@ include_rules = [
"+content/public/browser",
"+device/base/synchronization",
"+device/gamepad", # For gamepad API
"+device/generic_sensor", # For sensors service.
"+device/geolocation",
"+device/nfc",
"+device/power_save_blocker",
Expand Down
8 changes: 4 additions & 4 deletions content/browser/generic_sensor_browsertest.cc
Original file line number Diff line number Diff line change
Expand Up @@ -18,14 +18,14 @@
#include "content/shell/browser/shell.h"
#include "content/shell/browser/shell_javascript_dialog_manager.h"
#include "device/base/synchronization/one_writer_seqlock.h"
#include "device/generic_sensor/public/cpp/platform_sensor_configuration.h"
#include "device/generic_sensor/public/cpp/sensor_reading.h"
#include "device/generic_sensor/public/interfaces/sensor.mojom.h"
#include "device/generic_sensor/public/interfaces/sensor_provider.mojom.h"
#include "mojo/public/cpp/bindings/binding.h"
#include "mojo/public/cpp/bindings/strong_binding.h"
#include "mojo/public/cpp/system/buffer.h"
#include "services/device/public/cpp/generic_sensor/platform_sensor_configuration.h"
#include "services/device/public/cpp/generic_sensor/sensor_reading.h"
#include "services/device/public/interfaces/constants.mojom.h"
#include "services/device/public/interfaces/sensor.mojom.h"
#include "services/device/public/interfaces/sensor_provider.mojom.h"
#include "services/service_manager/public/cpp/service_context.h"

namespace content {
Expand Down
1 change: 0 additions & 1 deletion content/public/android/BUILD.gn
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,6 @@ android_library("content_java") {
"//base:base_java",
"//device/bluetooth:java",
"//device/gamepad:java",
"//device/generic_sensor:java",
"//device/power_save_blocker:java",
"//device/sensors:java",
"//device/usb:java",
Expand Down
2 changes: 0 additions & 2 deletions content/shell/android/BUILD.gn
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,6 @@ shared_library("libcontent_shell_content_view") {
if (is_component_build) {
deps += [
"//device/gamepad",
"//device/generic_sensor",
"//device/sensors",
"//media/midi",
]
Expand Down Expand Up @@ -277,7 +276,6 @@ if (current_cpu != "x64") {
if (is_component_build) {
deps += [
"//device/gamepad",
"//device/generic_sensor",
"//device/sensors",
"//media/midi",
]
Expand Down
3 changes: 2 additions & 1 deletion content/test/BUILD.gn
Original file line number Diff line number Diff line change
Expand Up @@ -778,7 +778,6 @@ test("content_browsertests") {
"//content/shell:pak",
"//content/test:test_support",
"//device/base/synchronization",
"//device/generic_sensor",
"//device/power_save_blocker",
"//device/screen_orientation/public/interfaces",
"//device/sensors",
Expand All @@ -799,8 +798,10 @@ test("content_browsertests") {
"//net:test_support",
"//ppapi/features",
"//services/catalog:lib",
"//services/device/public/cpp/generic_sensor",
"//services/device/public/interfaces",
"//services/device/public/interfaces:constants",
"//services/device/public/interfaces:generic_sensor",
"//services/service_manager/public/cpp",
"//services/ui/gpu/interfaces",
"//services/ui/public/cpp/gpu",
Expand Down
13 changes: 0 additions & 13 deletions device/BUILD.gn
Original file line number Diff line number Diff line change
Expand Up @@ -67,7 +67,6 @@ test("device_unittests") {
"gamepad/gamepad_provider_unittest.cc",
"gamepad/gamepad_service_unittest.cc",
"gamepad/public/interfaces/gamepad_struct_traits_unittest.cc",
"generic_sensor/platform_sensor_and_provider_unittest_win.cc",
"sensors/data_fetcher_shared_memory_base_unittest.cc",
"sensors/sensor_manager_android_unittest.cc",
"sensors/sensor_manager_chromeos_unittest.cc",
Expand All @@ -87,7 +86,6 @@ test("device_unittests") {
"//device/gamepad/public/cpp:shared_with_blink",
"//device/gamepad/public/interfaces",
"//device/gamepad/public/interfaces:gamepad_struct_traits_test",
"//device/generic_sensor",
"//device/geolocation:unittests",
"//device/power_save_blocker",
"//device/sensors",
Expand All @@ -105,11 +103,6 @@ test("device_unittests") {
"//url",
]

if (!is_linux_without_udev) {
sources +=
[ "generic_sensor/platform_sensor_and_provider_unittest_linux.cc" ]
}

# HID and Serial:
# Android doesn't compile.
# Linux, requires udev.
Expand Down Expand Up @@ -246,12 +239,6 @@ test("device_unittests") {
"bluetooth/bluetooth_low_energy_win_fake.cc",
"bluetooth/bluetooth_low_energy_win_fake.h",
]

# Needed for "generic_sensor/platform_sensor_and_provider_unittest_win.cc"
libs = [
"propsys.lib",
"sensorsapi.lib",
]
}

if (enable_vr) {
Expand Down
29 changes: 0 additions & 29 deletions device/generic_sensor/generic_sensor_export.h

This file was deleted.

30 changes: 0 additions & 30 deletions device/generic_sensor/public/cpp/generic_sensor_public_export.h

This file was deleted.

22 changes: 0 additions & 22 deletions device/generic_sensor/public/interfaces/BUILD.gn

This file was deleted.

5 changes: 0 additions & 5 deletions device/generic_sensor/public/interfaces/OWNERS

This file was deleted.

13 changes: 0 additions & 13 deletions device/generic_sensor/public/interfaces/sensor.typemap

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,6 @@ _typemap_imports = [
"//content/public/common/typemaps.gni",
"//device/bluetooth/public/interfaces/typemaps.gni",
"//device/gamepad/public/interfaces/typemaps.gni",
"//device/generic_sensor/public/interfaces/typemaps.gni",
"//extensions/common/typemaps.gni",
"//gpu/ipc/common/typemaps.gni",
"//media/capture/mojo/typemaps.gni",
Expand All @@ -28,6 +27,7 @@ _typemap_imports = [
"//mojo/common/typemaps.gni",
"//mojo/public/cpp/bindings/tests/chromium_typemaps.gni",
"//net/interfaces/typemaps.gni",
"//services/device/public/interfaces/typemaps.gni",
"//services/identity/public/cpp/typemaps.gni",
"//services/preferences/public/cpp/typemaps.gni",
"//services/resource_coordinator/public/cpp/typemaps.gni",
Expand Down
4 changes: 2 additions & 2 deletions services/BUILD.gn
Original file line number Diff line number Diff line change
Expand Up @@ -122,11 +122,11 @@ if (is_android) {
"$google_play_services_package:google_play_services_vision_java",
"//base:base_java",
"//base:base_java_test_support",
"//device/generic_sensor:java",
"//device/generic_sensor/public/interfaces:interfaces_java",
"//mojo/public/java:bindings_java",
"//mojo/public/java:system_java",
"//services/device/generic_sensor:java",
"//services/device/nfc/android:java",
"//services/device/public/interfaces:generic_sensor_java",
"//services/device/public/interfaces:interfaces_java",
"//services/device/public/java:nfc_java",
"//services/shape_detection:shape_detection_java",
Expand Down
21 changes: 19 additions & 2 deletions services/device/BUILD.gn
Original file line number Diff line number Diff line change
Expand Up @@ -25,11 +25,11 @@ source_set("lib") {

deps = [
"//base",
"//device/generic_sensor",
"//device/sensors",
"//device/sensors/public/interfaces",
"//device/wake_lock",
"//services/device/fingerprint",
"//services/device/generic_sensor",
"//services/device/power_monitor",
"//services/device/public/cpp:device_features",
"//services/device/public/interfaces",
Expand All @@ -53,13 +53,16 @@ source_set("lib") {
}
}

is_linux_without_udev = is_linux && !use_udev

source_set("tests") {
testonly = true

sources = [
"battery/battery_status_manager_win_unittest.cc",
"battery/battery_status_service_unittest.cc",
"generic_sensor/generic_sensor_service_unittest.cc",
"generic_sensor/platform_sensor_and_provider_unittest_win.cc",
"power_monitor/power_monitor_message_broadcaster_unittest.cc",
"public/cpp/power_monitor/power_monitor_broadcast_source_unittest.cc",
"vibration/vibration_manager_impl_unittest.cc",
Expand All @@ -71,16 +74,21 @@ source_set("tests") {
"//base",
"//base/test:test_support",
"//device/base/synchronization",
"//device/generic_sensor",
"//device/wake_lock",
"//mojo/public/cpp/bindings",
"//services/device/generic_sensor",
"//services/device/power_monitor",
"//services/device/public/cpp:device_features",
"//services/device/public/cpp/power_monitor",
"//testing/gmock",
"//testing/gtest",
]

if (!is_linux_without_udev) {
sources +=
[ "generic_sensor/platform_sensor_and_provider_unittest_linux.cc" ]
}

if (is_linux && !is_chromeos && use_dbus) {
sources += [ "battery/battery_status_manager_linux_unittest.cc" ]
deps += [ "//dbus:test_support" ]
Expand Down Expand Up @@ -109,6 +117,14 @@ source_set("tests") {
"//services/device/vibration",
]
}

if (is_win) {
# Needed for "generic_sensor/platform_sensor_and_provider_unittest_win.cc"
libs = [
"propsys.lib",
"sensorsapi.lib",
]
}
}

service_manifest("manifest") {
Expand Down Expand Up @@ -173,6 +189,7 @@ if (is_android) {
"//mojo/public/java:bindings_java",
"//mojo/public/java:system_java",
"//services/device/battery/android:battery_monitor_java",
"//services/device/generic_sensor:java",
"//services/device/nfc/android:java",
"//services/device/public/interfaces:interfaces_java",
"//services/device/public/java:nfc_java",
Expand Down
4 changes: 4 additions & 0 deletions services/device/android/register_jni.cc
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
#include "services/device/android/register_jni.h"

#include "base/android/jni_android.h"
#include "services/device/generic_sensor/android/sensors_jni_registrar.h"
#include "services/device/time_zone_monitor/android/time_zone_monitor_jni_registrar.h"

namespace device {
Expand All @@ -15,6 +16,9 @@ bool EnsureJniRegistered() {
if (!g_jni_init_done) {
JNIEnv* env = base::android::AttachCurrentThread();

if (!android::RegisterSensorsJni(env))
return false;

if (!android::RegisterTimeZoneMonitorJni(env))
return false;

Expand Down
Loading

0 comments on commit 6071829

Please sign in to comment.