|
@ -59,23 +59,16 @@ namespace pEp { |
|
|
return thread_env; |
|
|
return thread_env; |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
jclass clazz() |
|
|
|
|
|
{ |
|
|
|
|
|
if (!_clazz) |
|
|
|
|
|
_clazz = env()->GetObjectClass(obj); |
|
|
|
|
|
return _clazz; |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
void startup_sync() |
|
|
void startup_sync() |
|
|
{ |
|
|
{ |
|
|
needsFastPollMethodID = env()->GetMethodID( |
|
|
needsFastPollMethodID = env()->GetMethodID( |
|
|
clazz(), |
|
|
_clazz, |
|
|
"needsFastPollCallFromC", |
|
|
"needsFastPollCallFromC", |
|
|
"(Z)I"); |
|
|
"(Z)I"); |
|
|
assert(needsFastPollMethodID); |
|
|
assert(needsFastPollMethodID); |
|
|
|
|
|
|
|
|
notifyHandShakeMethodID = env()->GetMethodID( |
|
|
notifyHandShakeMethodID = env()->GetMethodID( |
|
|
clazz(), |
|
|
_clazz, |
|
|
"notifyHandshakeCallFromC", |
|
|
"notifyHandshakeCallFromC", |
|
|
"(Lorg/pEp/jniadapter/_Identity;Lorg/pEp/jniadapter/_Identity;Lorg/pEp/jniadapter/SyncHandshakeSignal;)I"); |
|
|
"(Lorg/pEp/jniadapter/_Identity;Lorg/pEp/jniadapter/_Identity;Lorg/pEp/jniadapter/SyncHandshakeSignal;)I"); |
|
|
assert(notifyHandShakeMethodID); |
|
|
assert(notifyHandShakeMethodID); |
|
@ -150,6 +143,7 @@ extern "C" { |
|
|
{ |
|
|
{ |
|
|
thread_env = env; |
|
|
thread_env = env; |
|
|
obj = me; |
|
|
obj = me; |
|
|
|
|
|
_clazz = env->GetObjectClass(obj); |
|
|
|
|
|
|
|
|
assert(o == nullptr); |
|
|
assert(o == nullptr); |
|
|
o = new JNISync(); |
|
|
o = new JNISync(); |
|
@ -186,6 +180,7 @@ extern "C" { |
|
|
) |
|
|
) |
|
|
{ |
|
|
{ |
|
|
shutdown(); |
|
|
shutdown(); |
|
|
|
|
|
env->DeleteLocalRef(_clazz); |
|
|
session(pEp::Adapter::release); |
|
|
session(pEp::Adapter::release); |
|
|
delete o; |
|
|
delete o; |
|
|
} |
|
|
} |
|
|