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

Unified Diff: sky/shell/org/domokit/sky/shell/JavaServiceProvider.java

Issue 962043002: Expose Android sensors to via Mojo services (Closed) Base URL: git@github.com:domokit/mojo.git@master
Patch Set: Review comments Created 5 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « sky/shell/java_service_provider.cc ('k') | sky/shell/org/domokit/sky/shell/SkyApplication.java » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: sky/shell/org/domokit/sky/shell/JavaServiceProvider.java
diff --git a/sky/shell/org/domokit/sky/shell/JavaServiceProvider.java b/sky/shell/org/domokit/sky/shell/JavaServiceProvider.java
index ad1b0b2695883a2e0ec0a45757769775d598baba..05fefbe16e038398bfdc5f01641aba2496b5b156 100644
--- a/sky/shell/org/domokit/sky/shell/JavaServiceProvider.java
+++ b/sky/shell/org/domokit/sky/shell/JavaServiceProvider.java
@@ -4,6 +4,8 @@
package org.domokit.sky.shell;
+import android.content.Context;
+
import org.chromium.base.CalledByNative;
import org.chromium.base.JNINamespace;
import org.chromium.mojo.system.Core;
@@ -13,7 +15,9 @@ import org.chromium.mojo.system.Pair;
import org.chromium.mojo.system.impl.CoreImpl;
import org.chromium.mojom.mojo.NetworkService;
import org.chromium.mojom.mojo.ServiceProvider;
+import org.chromium.mojom.sensors.SensorService;
import org.domokit.oknet.NetworkServiceImpl;
+import org.domokit.sensors.SensorServiceImpl;
/**
* A class to intialize the network.
@@ -21,19 +25,22 @@ import org.domokit.oknet.NetworkServiceImpl;
@JNINamespace("sky::shell")
public class JavaServiceProvider implements ServiceProvider {
private Core mCore;
+ private Context mContext;
@SuppressWarnings("unused")
@CalledByNative
- public static int create() {
+ public static int create(Context context) {
Core core = CoreImpl.getInstance();
Pair<MessagePipeHandle, MessagePipeHandle> messagePipe = core.createMessagePipe(null);
- ServiceProvider.MANAGER.bind(new JavaServiceProvider(core), messagePipe.first);
+ ServiceProvider.MANAGER.bind(new JavaServiceProvider(core, context), messagePipe.first);
return messagePipe.second.releaseNativeHandle();
}
- public JavaServiceProvider(Core core) {
+ public JavaServiceProvider(Core core, Context context) {
assert core != null;
+ assert context != null;
mCore = core;
+ mContext = context;
}
@Override
@@ -45,7 +52,10 @@ public class JavaServiceProvider implements ServiceProvider {
@Override
public void connectToService(String interfaceName, MessagePipeHandle pipe) {
if (interfaceName.equals(NetworkService.MANAGER.getName())) {
- NetworkService.MANAGER.bind(new NetworkServiceImpl(mCore), pipe);
+ new NetworkServiceImpl(mContext, mCore, pipe);
+ return;
+ } else if (interfaceName.equals(SensorService.MANAGER.getName())) {
+ new SensorServiceImpl(mContext, mCore, pipe);
return;
}
pipe.close();
« no previous file with comments | « sky/shell/java_service_provider.cc ('k') | sky/shell/org/domokit/sky/shell/SkyApplication.java » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698