| Index: blimp/client/app/android/java/src/org/chromium/blimp/session/BlimpClientSession.java
|
| diff --git a/blimp/client/app/android/java/src/org/chromium/blimp/session/BlimpClientSession.java b/blimp/client/app/android/java/src/org/chromium/blimp/session/BlimpClientSession.java
|
| index d16cbc2703d2178dfc79b1e6ca870fb61721f499..cc7595d3c4fcb0f0c07eee785a4c76a05c41903d 100644
|
| --- a/blimp/client/app/android/java/src/org/chromium/blimp/session/BlimpClientSession.java
|
| +++ b/blimp/client/app/android/java/src/org/chromium/blimp/session/BlimpClientSession.java
|
| @@ -49,10 +49,20 @@ public class BlimpClientSession {
|
| void onDisconnected(String reason);
|
| }
|
|
|
| + public interface NetworkActivityObserver {
|
| + void onPacketSent(int bytes);
|
| + void onPacketReceived(int bytes);
|
| + }
|
| +
|
| private final String mAssignerUrl;
|
| private final List<ConnectionObserver> mObservers;
|
| + private NetworkActivityObserver mDataObserver;
|
| private long mNativeBlimpClientSessionAndroidPtr;
|
|
|
| + public void setDataObserver(NetworkActivityObserver observer) {
|
| + mDataObserver = observer;
|
| + }
|
| +
|
| public BlimpClientSession(String assignerUrl) {
|
| mAssignerUrl = assignerUrl;
|
| mObservers = new ArrayList<ConnectionObserver>();
|
| @@ -162,6 +172,16 @@ public class BlimpClientSession {
|
| return mNativeBlimpClientSessionAndroidPtr;
|
| }
|
|
|
| + @CalledByNative
|
| + private void onPacketReceived(int bytes) {
|
| + mDataObserver.onPacketReceived(bytes);
|
| + }
|
| +
|
| + @CalledByNative
|
| + private void onPacketSent(int bytes) {
|
| + mDataObserver.onPacketSent(bytes);
|
| + }
|
| +
|
| private native long nativeInit(String assignerUrl);
|
| private native void nativeConnect(long nativeBlimpClientSessionAndroid, String token);
|
| private native void nativeDestroy(long nativeBlimpClientSessionAndroid);
|
|
|