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

Unified Diff: remoting/android/host/src/org/chromium/chromoting/host/jni/Host.java

Issue 1884253003: [remoting android] Plumb It2Me events from C++ to Java (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@android-host-it2me-connect
Patch Set: Address comments, git cl format Created 4 years, 8 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
Index: remoting/android/host/src/org/chromium/chromoting/host/jni/Host.java
diff --git a/remoting/android/host/src/org/chromium/chromoting/host/jni/Host.java b/remoting/android/host/src/org/chromium/chromoting/host/jni/Host.java
index d5a13853a747e48654e0debc64db3413d42b80a7..e5aff237551f509378283bcaae29384d8e7871e1 100644
--- a/remoting/android/host/src/org/chromium/chromoting/host/jni/Host.java
+++ b/remoting/android/host/src/org/chromium/chromoting/host/jni/Host.java
@@ -7,6 +7,8 @@ package org.chromium.chromoting.host.jni;
import android.content.Context;
import org.chromium.base.ContextUtils;
+import org.chromium.base.Log;
+import org.chromium.base.annotations.CalledByNative;
import org.chromium.base.annotations.JNINamespace;
/**
@@ -15,9 +17,13 @@ import org.chromium.base.annotations.JNINamespace;
*/
@JNINamespace("remoting")
public class Host {
+ private static final String TAG = "host";
+
// Pointer to the C++ object, cast to a |long|.
private long mNativeJniHost;
+ private It2MeHostObserver mObserver;
+
/**
* To be called once from the Application context singleton. Loads and initializes the native
* code. Called on the UI thread.
@@ -36,11 +42,13 @@ public class Host {
public void destroy() {
nativeDestroy(mNativeJniHost);
+ mNativeJniHost = 0;
}
private native void nativeDestroy(long nativeJniHost);
- public void connect(String userName, String authToken) {
+ public void connect(String userName, String authToken, It2MeHostObserver observer) {
+ mObserver = observer;
nativeConnect(mNativeJniHost, userName, authToken);
}
@@ -51,4 +59,19 @@ public class Host {
}
private native void nativeDisconnect(long nativeJniHost);
+
+ @CalledByNative
+ private void onStateChanged(int state, String errorMessage) {
+ It2MeHostObserver.State[] states = It2MeHostObserver.State.values();
+ if (state < 0 || state >= states.length) {
+ Log.e(TAG, "Invalid It2Me state: %d", state);
+ return;
+ }
+ mObserver.onStateChanged(states[state], errorMessage);
+ }
+
+ @CalledByNative
+ private void onAccessCodeReceived(String accessCode, int lifetimeSeconds) {
+ mObserver.onAccessCodeReceived(accessCode, lifetimeSeconds);
+ }
}

Powered by Google App Engine
This is Rietveld 408576698