| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "components/devtools_bridge/android/session_dependency_factory_android.
h" | 5 #include "components/devtools_bridge/android/session_dependency_factory_android.
h" |
| 6 | 6 |
| 7 #include "base/android/jni_string.h" | 7 #include "base/android/jni_string.h" |
| 8 #include "base/android/scoped_java_ref.h" | 8 #include "base/android/scoped_java_ref.h" |
| 9 #include "base/bind.h" | 9 #include "base/bind.h" |
| 10 #include "components/devtools_bridge/abstract_data_channel.h" | 10 #include "components/devtools_bridge/abstract_data_channel.h" |
| (...skipping 21 matching lines...) Expand all Loading... |
| 32 * please use ConvertUTF8ToJavaString(env, ...).obj() or ScopedJavaLocalFrame. | 32 * please use ConvertUTF8ToJavaString(env, ...).obj() or ScopedJavaLocalFrame. |
| 33 */ | 33 */ |
| 34 class PeerConnectionDelegateImpl | 34 class PeerConnectionDelegateImpl |
| 35 : public AbstractPeerConnection::Delegate { | 35 : public AbstractPeerConnection::Delegate { |
| 36 public: | 36 public: |
| 37 PeerConnectionDelegateImpl(JNIEnv* env, jobject java_object) { | 37 PeerConnectionDelegateImpl(JNIEnv* env, jobject java_object) { |
| 38 java_object_.Reset(env, java_object); | 38 java_object_.Reset(env, java_object); |
| 39 connected_ = false; | 39 connected_ = false; |
| 40 } | 40 } |
| 41 | 41 |
| 42 virtual void OnIceConnectionChange(bool connected) override { | 42 void OnIceConnectionChange(bool connected) override { |
| 43 JNIEnv* env = AttachCurrentThread(); | 43 JNIEnv* env = AttachCurrentThread(); |
| 44 Java_SessionDependencyFactoryNative_notifyIceConnectionChange( | 44 Java_SessionDependencyFactoryNative_notifyIceConnectionChange( |
| 45 env, java_object_.obj(), connected); | 45 env, java_object_.obj(), connected); |
| 46 } | 46 } |
| 47 | 47 |
| 48 virtual void OnIceCandidate( | 48 void OnIceCandidate(const std::string& sdp_mid, |
| 49 const std::string& sdp_mid, int sdp_mline_index, const std::string& sdp) | 49 int sdp_mline_index, |
| 50 override { | 50 const std::string& sdp) override { |
| 51 JNIEnv* env = AttachCurrentThread(); | 51 JNIEnv* env = AttachCurrentThread(); |
| 52 Java_SessionDependencyFactoryNative_notifyIceCandidate( | 52 Java_SessionDependencyFactoryNative_notifyIceCandidate( |
| 53 env, java_object_.obj(), | 53 env, java_object_.obj(), |
| 54 ConvertUTF8ToJavaString(env, sdp_mid).obj(), | 54 ConvertUTF8ToJavaString(env, sdp_mid).obj(), |
| 55 sdp_mline_index, ConvertUTF8ToJavaString(env, sdp).obj()); | 55 sdp_mline_index, ConvertUTF8ToJavaString(env, sdp).obj()); |
| 56 } | 56 } |
| 57 | 57 |
| 58 void NotifyLocalOfferCreatedAndSetSet(const std::string& description) { | 58 void NotifyLocalOfferCreatedAndSetSet(const std::string& description) { |
| 59 JNIEnv* env = AttachCurrentThread(); | 59 JNIEnv* env = AttachCurrentThread(); |
| 60 Java_SessionDependencyFactoryNative_notifyLocalOfferCreatedAndSetSet( | 60 Java_SessionDependencyFactoryNative_notifyLocalOfferCreatedAndSetSet( |
| 61 env, java_object_.obj(), | 61 env, java_object_.obj(), |
| 62 ConvertUTF8ToJavaString(env, description).obj()); | 62 ConvertUTF8ToJavaString(env, description).obj()); |
| 63 } | 63 } |
| 64 | 64 |
| 65 virtual void OnLocalOfferCreatedAndSetSet(const std::string& description) | 65 void OnLocalOfferCreatedAndSetSet(const std::string& description) override { |
| 66 override { | |
| 67 JNIEnv* env = AttachCurrentThread(); | 66 JNIEnv* env = AttachCurrentThread(); |
| 68 Java_SessionDependencyFactoryNative_notifyLocalOfferCreatedAndSetSet( | 67 Java_SessionDependencyFactoryNative_notifyLocalOfferCreatedAndSetSet( |
| 69 env, java_object_.obj(), | 68 env, java_object_.obj(), |
| 70 ConvertUTF8ToJavaString(env, description).obj()); | 69 ConvertUTF8ToJavaString(env, description).obj()); |
| 71 } | 70 } |
| 72 | 71 |
| 73 virtual void OnLocalAnswerCreatedAndSetSet(const std::string& description) | 72 void OnLocalAnswerCreatedAndSetSet(const std::string& description) override { |
| 74 override { | |
| 75 JNIEnv* env = AttachCurrentThread(); | 73 JNIEnv* env = AttachCurrentThread(); |
| 76 Java_SessionDependencyFactoryNative_notifyLocalAnswerCreatedAndSetSet( | 74 Java_SessionDependencyFactoryNative_notifyLocalAnswerCreatedAndSetSet( |
| 77 env, java_object_.obj(), | 75 env, java_object_.obj(), |
| 78 ConvertUTF8ToJavaString(env, description).obj()); | 76 ConvertUTF8ToJavaString(env, description).obj()); |
| 79 } | 77 } |
| 80 | 78 |
| 81 virtual void OnRemoteDescriptionSet() override { | 79 void OnRemoteDescriptionSet() override { |
| 82 JNIEnv* env = AttachCurrentThread(); | 80 JNIEnv* env = AttachCurrentThread(); |
| 83 Java_SessionDependencyFactoryNative_notifyRemoteDescriptionSet( | 81 Java_SessionDependencyFactoryNative_notifyRemoteDescriptionSet( |
| 84 env, java_object_.obj()); | 82 env, java_object_.obj()); |
| 85 } | 83 } |
| 86 | 84 |
| 87 virtual void OnFailure(const std::string& description) override { | 85 void OnFailure(const std::string& description) override { |
| 88 JNIEnv* env = AttachCurrentThread(); | 86 JNIEnv* env = AttachCurrentThread(); |
| 89 Java_SessionDependencyFactoryNative_notifyConnectionFailure( | 87 Java_SessionDependencyFactoryNative_notifyConnectionFailure( |
| 90 env, java_object_.obj(), | 88 env, java_object_.obj(), |
| 91 ConvertUTF8ToJavaString(env, description).obj()); | 89 ConvertUTF8ToJavaString(env, description).obj()); |
| 92 } | 90 } |
| 93 | 91 |
| 94 private: | 92 private: |
| 95 base::android::ScopedJavaGlobalRef<jobject> java_object_; | 93 base::android::ScopedJavaGlobalRef<jobject> java_object_; |
| 96 bool connected_; | 94 bool connected_; |
| 97 }; | 95 }; |
| 98 | 96 |
| 99 class DataChannelObserverImpl : public AbstractDataChannel::Observer { | 97 class DataChannelObserverImpl : public AbstractDataChannel::Observer { |
| 100 public: | 98 public: |
| 101 DataChannelObserverImpl(JNIEnv* env, jobject java_object) { | 99 DataChannelObserverImpl(JNIEnv* env, jobject java_object) { |
| 102 java_object_.Reset(env, java_object); | 100 java_object_.Reset(env, java_object); |
| 103 } | 101 } |
| 104 | 102 |
| 105 virtual void OnOpen() override { | 103 void OnOpen() override { |
| 106 JNIEnv* env = AttachCurrentThread(); | 104 JNIEnv* env = AttachCurrentThread(); |
| 107 Java_SessionDependencyFactoryNative_notifyChannelOpen( | 105 Java_SessionDependencyFactoryNative_notifyChannelOpen( |
| 108 env, java_object_.obj()); | 106 env, java_object_.obj()); |
| 109 } | 107 } |
| 110 | 108 |
| 111 virtual void OnClose() override { | 109 void OnClose() override { |
| 112 JNIEnv* env = AttachCurrentThread(); | 110 JNIEnv* env = AttachCurrentThread(); |
| 113 Java_SessionDependencyFactoryNative_notifyChannelClose( | 111 Java_SessionDependencyFactoryNative_notifyChannelClose( |
| 114 env, java_object_.obj()); | 112 env, java_object_.obj()); |
| 115 } | 113 } |
| 116 | 114 |
| 117 virtual void OnMessage(const void* data, size_t length) override { | 115 void OnMessage(const void* data, size_t length) override { |
| 118 JNIEnv* env = AttachCurrentThread(); | 116 JNIEnv* env = AttachCurrentThread(); |
| 119 | 117 |
| 120 ScopedJavaLocalRef<jobject> byte_buffer( | 118 ScopedJavaLocalRef<jobject> byte_buffer( |
| 121 env, env->NewDirectByteBuffer(const_cast<void*>(data), length)); | 119 env, env->NewDirectByteBuffer(const_cast<void*>(data), length)); |
| 122 | 120 |
| 123 Java_SessionDependencyFactoryNative_notifyMessage( | 121 Java_SessionDependencyFactoryNative_notifyMessage( |
| 124 env, java_object_.obj(), byte_buffer.obj()); | 122 env, java_object_.obj(), byte_buffer.obj()); |
| 125 } | 123 } |
| 126 | 124 |
| 127 private: | 125 private: |
| (...skipping 167 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 295 ConvertJavaStringToUTF8(env, socket_name))); | 293 ConvertJavaStringToUTF8(env, socket_name))); |
| 296 } | 294 } |
| 297 | 295 |
| 298 static void DestroySocketTunnelServer( | 296 static void DestroySocketTunnelServer( |
| 299 JNIEnv* env, jclass jcaller, jlong tunnel_ptr) { | 297 JNIEnv* env, jclass jcaller, jlong tunnel_ptr) { |
| 300 delete reinterpret_cast<SocketTunnelServer*>(tunnel_ptr); | 298 delete reinterpret_cast<SocketTunnelServer*>(tunnel_ptr); |
| 301 } | 299 } |
| 302 | 300 |
| 303 } // namespace android | 301 } // namespace android |
| 304 } // namespace devtools_bridge | 302 } // namespace devtools_bridge |
| OLD | NEW |