|
|
|
@ -34,11 +34,11 @@ Java_io_grpc_binder_cpp_GrpcBinderConnection_notifyConnected__Ljava_lang_String_ |
|
|
|
|
JNIEnv* jni_env, jobject, jstring conn_id_jstring, jobject ibinder) { |
|
|
|
|
jboolean isCopy; |
|
|
|
|
const char* conn_id = jni_env->GetStringUTFChars(conn_id_jstring, &isCopy); |
|
|
|
|
gpr_log(GPR_ERROR, "%s called with conn_id = %s", __func__, conn_id); |
|
|
|
|
gpr_log(GPR_INFO, "%s invoked with conn_id = %s", __func__, conn_id); |
|
|
|
|
GPR_ASSERT(ibinder != nullptr); |
|
|
|
|
grpc_binder::ndk_util::SpAIBinder aibinder = |
|
|
|
|
grpc_binder::FromJavaBinder(jni_env, ibinder); |
|
|
|
|
gpr_log(GPR_ERROR, "aibinder = %p", aibinder.get()); |
|
|
|
|
gpr_log(GPR_INFO, "%s got aibinder = %p", __func__, aibinder.get()); |
|
|
|
|
auto b = absl::make_unique<grpc_binder::BinderAndroid>(aibinder); |
|
|
|
|
GPR_ASSERT(b != nullptr); |
|
|
|
|
grpc_binder::GetEndpointBinderPool()->AddEndpointBinder(conn_id, |
|
|
|
@ -56,7 +56,7 @@ namespace grpc_binder { |
|
|
|
|
void EndpointBinderPool ::GetEndpointBinder( |
|
|
|
|
std::string conn_id, |
|
|
|
|
std::function<void(std::unique_ptr<grpc_binder::Binder>)> cb) { |
|
|
|
|
gpr_log(GPR_ERROR, "GetEndpointBinder %s", conn_id.c_str()); |
|
|
|
|
gpr_log(GPR_INFO, "EndpointBinder requested. conn_id = %s", conn_id.c_str()); |
|
|
|
|
std::unique_ptr<grpc_binder::Binder> b; |
|
|
|
|
{ |
|
|
|
|
grpc_core::MutexLock l(&m_); |
|
|
|
@ -66,7 +66,8 @@ void EndpointBinderPool ::GetEndpointBinder( |
|
|
|
|
GPR_ASSERT(b != nullptr); |
|
|
|
|
} else { |
|
|
|
|
if (pending_requests_.count(conn_id) != 0) { |
|
|
|
|
gpr_log(GPR_ERROR, "Duplicate GetEndpointBinder request. conn_id = %s", |
|
|
|
|
gpr_log(GPR_ERROR, |
|
|
|
|
"Duplicate GetEndpointBinder requested. conn_id = %s", |
|
|
|
|
conn_id.c_str()); |
|
|
|
|
return; |
|
|
|
|
} |
|
|
|
@ -80,7 +81,7 @@ void EndpointBinderPool ::GetEndpointBinder( |
|
|
|
|
|
|
|
|
|
void EndpointBinderPool::AddEndpointBinder( |
|
|
|
|
std::string conn_id, std::unique_ptr<grpc_binder::Binder> b) { |
|
|
|
|
gpr_log(GPR_ERROR, "AddEndpointBinder %s", conn_id.c_str()); |
|
|
|
|
gpr_log(GPR_INFO, "EndpointBinder added. conn_id = %s", conn_id.c_str()); |
|
|
|
|
GPR_ASSERT(b != nullptr); |
|
|
|
|
// cb will be set in the following block if there is a pending callback
|
|
|
|
|
std::function<void(std::unique_ptr<grpc_binder::Binder>)> cb = nullptr; |
|
|
|
|