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

Side by Side Diff: remoting/client/jni/jni_client.cc

Issue 2643483003: [Remoting Android] Refactor ClientTelemetryLogger (Closed)
Patch Set: PTAL Created 3 years, 11 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 unified diff | Download patch
OLDNEW
1 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 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 "remoting/client/jni/jni_client.h" 5 #include "remoting/client/jni/jni_client.h"
6 6
7 #include "base/android/jni_android.h" 7 #include "base/android/jni_android.h"
8 #include "base/android/jni_string.h" 8 #include "base/android/jni_string.h"
9 #include "base/logging.h" 9 #include "base/logging.h"
10 #include "jni/Client_jni.h" 10 #include "jni/Client_jni.h"
(...skipping 20 matching lines...) Expand all
31 } 31 }
32 32
33 JniClient::~JniClient() { 33 JniClient::~JniClient() {
34 DCHECK(runtime_->ui_task_runner()->BelongsToCurrentThread()); 34 DCHECK(runtime_->ui_task_runner()->BelongsToCurrentThread());
35 35
36 // The session must be shut down first, since it depends on our other 36 // The session must be shut down first, since it depends on our other
37 // components' still being alive. 37 // components' still being alive.
38 DisconnectFromHost(); 38 DisconnectFromHost();
39 } 39 }
40 40
41 void JniClient::ConnectToHost(const std::string& username, 41 void JniClient::ConnectToHost(const ConnectToHostInfo& info) {
42 const std::string& auth_token,
43 const std::string& host_jid,
44 const std::string& host_id,
45 const std::string& host_pubkey,
46 const std::string& pairing_id,
47 const std::string& pairing_secret,
48 const std::string& capabilities,
49 const std::string& flags,
50 const std::string& host_version,
51 const std::string& host_os,
52 const std::string& host_os_version) {
53 DCHECK(runtime_->ui_task_runner()->BelongsToCurrentThread()); 42 DCHECK(runtime_->ui_task_runner()->BelongsToCurrentThread());
54 DCHECK(!display_handler_); 43 DCHECK(!display_handler_);
55 DCHECK(!session_); 44 DCHECK(!session_);
56 DCHECK(!secret_fetcher_); 45 DCHECK(!secret_fetcher_);
57 display_handler_.reset(new JniGlDisplayHandler(runtime_, java_client_)); 46 display_handler_.reset(new JniGlDisplayHandler(runtime_, java_client_));
58 secret_fetcher_.reset(new JniPairingSecretFetcher(runtime_, GetWeakPtr(), 47 secret_fetcher_.reset(new JniPairingSecretFetcher(runtime_, GetWeakPtr(),
59 host_id)); 48 info.host_id));
60 // TODO(BUG 680752): Create ClientTelemetryLogger here. No need to pass host 49 // TODO(BUG 680752): Create ClientTelemetryLogger here. No need to pass host
Sergey Ulanov 2017/01/19 00:50:38 Do we still need this TODO?
Yuwei 2017/01/19 23:00:00 No. Removed. This is not feasible unless we allow
61 // info all the way down. Currently we have to do that due to thread 50 // info all the way down. Currently we have to do that due to thread
62 // restriction. 51 // restriction.
63 session_.reset(new ChromotingJniInstance( 52 session_.reset(new ChromotingJniInstance(
64 runtime_, GetWeakPtr(), secret_fetcher_->GetWeakPtr(), 53 runtime_, GetWeakPtr(), secret_fetcher_->GetWeakPtr(),
65 display_handler_->CreateCursorShapeStub(), 54 display_handler_->CreateCursorShapeStub(),
66 display_handler_->CreateVideoRenderer(), 55 display_handler_->CreateVideoRenderer(),
67 username, auth_token, host_jid, host_id, 56 info));
Sergey Ulanov 2017/01/19 00:50:38 git cl format
Yuwei 2017/01/19 23:00:00 Done.
68 host_pubkey, pairing_id, pairing_secret, capabilities, flags,
69 host_version, host_os, host_os_version));
70 session_->Connect(); 57 session_->Connect();
71 } 58 }
72 59
73 void JniClient::DisconnectFromHost() { 60 void JniClient::DisconnectFromHost() {
74 DCHECK(runtime_->ui_task_runner()->BelongsToCurrentThread()); 61 DCHECK(runtime_->ui_task_runner()->BelongsToCurrentThread());
75 if (session_) { 62 if (session_) {
76 session_->Disconnect(); 63 session_->Disconnect();
77 runtime_->network_task_runner()->DeleteSoon(FROM_HERE, 64 runtime_->network_task_runner()->DeleteSoon(FROM_HERE,
78 session_.release()); 65 session_.release());
79 } 66 }
(...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after
156 143
157 void JniClient::Connect( 144 void JniClient::Connect(
158 JNIEnv* env, 145 JNIEnv* env,
159 const base::android::JavaParamRef<jobject>& caller, 146 const base::android::JavaParamRef<jobject>& caller,
160 const base::android::JavaParamRef<jstring>& username, 147 const base::android::JavaParamRef<jstring>& username,
161 const base::android::JavaParamRef<jstring>& authToken, 148 const base::android::JavaParamRef<jstring>& authToken,
162 const base::android::JavaParamRef<jstring>& hostJid, 149 const base::android::JavaParamRef<jstring>& hostJid,
163 const base::android::JavaParamRef<jstring>& hostId, 150 const base::android::JavaParamRef<jstring>& hostId,
164 const base::android::JavaParamRef<jstring>& hostPubkey, 151 const base::android::JavaParamRef<jstring>& hostPubkey,
165 const base::android::JavaParamRef<jstring>& pairId, 152 const base::android::JavaParamRef<jstring>& pairId,
166 const base::android::JavaParamRef<jstring>& pairSecret, 153 const base::android::JavaParamRef<jstring>& pairSecret,
Sergey Ulanov 2017/01/19 00:50:39 please cleanup args names while you are here. thes
Yuwei 2017/01/19 23:00:00 Done.
167 const base::android::JavaParamRef<jstring>& capabilities, 154 const base::android::JavaParamRef<jstring>& capabilities,
168 const base::android::JavaParamRef<jstring>& flags, 155 const base::android::JavaParamRef<jstring>& flags,
169 const base::android::JavaParamRef<jstring>& host_version, 156 const base::android::JavaParamRef<jstring>& host_version,
170 const base::android::JavaParamRef<jstring>& host_os, 157 const base::android::JavaParamRef<jstring>& host_os,
171 const base::android::JavaParamRef<jstring>& host_os_version) { 158 const base::android::JavaParamRef<jstring>& host_os_version) {
Sergey Ulanov 2017/01/19 00:50:38 This list of parameters could be cleaned up on the
Yuwei 2017/01/19 23:00:00 Done.
172 ConnectToHost(ConvertJavaStringToUTF8(env, username), 159 ConnectToHostInfo info;
173 ConvertJavaStringToUTF8(env, authToken), 160 info.username = ConvertJavaStringToUTF8(env, username);
174 ConvertJavaStringToUTF8(env, hostJid), 161 info.auth_token = ConvertJavaStringToUTF8(env, authToken);
175 ConvertJavaStringToUTF8(env, hostId), 162 info.host_jid = ConvertJavaStringToUTF8(env, hostJid);
176 ConvertJavaStringToUTF8(env, hostPubkey), 163 info.host_id = ConvertJavaStringToUTF8(env, hostId);
177 ConvertJavaStringToUTF8(env, pairId), 164 info.host_pubkey = ConvertJavaStringToUTF8(env, hostPubkey);
178 ConvertJavaStringToUTF8(env, pairSecret), 165 info.pairing_id = ConvertJavaStringToUTF8(env, pairId);
179 ConvertJavaStringToUTF8(env, capabilities), 166 info.pairing_secret = ConvertJavaStringToUTF8(env, pairSecret);
180 ConvertJavaStringToUTF8(env, flags), 167 info.capabilities = ConvertJavaStringToUTF8(env, capabilities);
181 ConvertJavaStringToUTF8(env, host_version), 168 info.flags = ConvertJavaStringToUTF8(env, flags);
182 ConvertJavaStringToUTF8(env, host_os), 169 info.host_version = ConvertJavaStringToUTF8(env, host_version);
183 ConvertJavaStringToUTF8(env, host_os_version)); 170 info.host_os = ConvertJavaStringToUTF8(env, host_os);
171 info.host_os_version = ConvertJavaStringToUTF8(env, host_os_version);
172 ConnectToHost(info);
184 } 173 }
185 174
186 void JniClient::Disconnect(JNIEnv* env, 175 void JniClient::Disconnect(JNIEnv* env,
187 const base::android::JavaParamRef<jobject>& caller) { 176 const base::android::JavaParamRef<jobject>& caller) {
188 DisconnectFromHost(); 177 DisconnectFromHost();
189 } 178 }
190 179
191 void JniClient::AuthenticationResponse( 180 void JniClient::AuthenticationResponse(
192 JNIEnv* env, 181 JNIEnv* env,
193 const JavaParamRef<jobject>& caller, 182 const JavaParamRef<jobject>& caller,
(...skipping 105 matching lines...) Expand 10 before | Expand all | Expand 10 after
299 return weak_ptr_; 288 return weak_ptr_;
300 } 289 }
301 290
302 static jlong Init(JNIEnv* env, const JavaParamRef<jobject>& caller) { 291 static jlong Init(JNIEnv* env, const JavaParamRef<jobject>& caller) {
303 return reinterpret_cast<intptr_t>( 292 return reinterpret_cast<intptr_t>(
304 new JniClient(ChromotingJniRuntime::GetInstance(), 293 new JniClient(ChromotingJniRuntime::GetInstance(),
305 base::android::ScopedJavaGlobalRef<jobject>(env, caller))); 294 base::android::ScopedJavaGlobalRef<jobject>(env, caller)));
306 } 295 }
307 296
308 } // namespace remoting 297 } // namespace remoting
OLDNEW
« remoting/client/jni/jni_client.h ('K') | « remoting/client/jni/jni_client.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698