@@ -25,7 +25,7 @@ use zenoh::{
2525 pubsub:: { Publisher , Subscriber } ,
2626 query:: { Querier , Query , Queryable , ReplyError , Selector } ,
2727 sample:: Sample ,
28- session:: { Session , ZenohId } ,
28+ session:: { EntityGlobalId , Session , ZenohId } ,
2929 Wait ,
3030} ;
3131
@@ -964,19 +964,20 @@ pub unsafe extern "C" fn Java_io_zenoh_jni_JNISession_getViaJNI(
964964
965965pub ( crate ) fn on_reply_success (
966966 env : & mut JNIEnv ,
967- replier_id : Option < ZenohId > ,
967+ replier_id : Option < EntityGlobalId > ,
968968 sample : & Sample ,
969969 callback_global_ref : & GlobalRef ,
970970) -> ZResult < ( ) > {
971971 let zenoh_id = replier_id
972972 . map_or_else (
973973 || Ok ( JByteArray :: default ( ) ) ,
974974 |replier_id| {
975- env. byte_array_from_slice ( & replier_id. to_le_bytes ( ) )
975+ env. byte_array_from_slice ( & replier_id. zid ( ) . to_le_bytes ( ) )
976976 . map_err ( |err| zerror ! ( err) )
977977 } ,
978978 )
979979 . map ( |value| env. auto_local ( value) ) ?;
980+ let eid = replier_id. map_or_else ( || 0 , |replier_id| replier_id. eid ( ) as jint ) ;
980981
981982 let byte_array =
982983 bytes_to_java_array ( env, sample. payload ( ) ) . map ( |value| env. auto_local ( value) ) ?;
@@ -1022,9 +1023,10 @@ pub(crate) fn on_reply_success(
10221023 let result = match env. call_method (
10231024 callback_global_ref,
10241025 "run" ,
1025- "([BZLjava /lang/String;[BILjava/lang/String;IJZ[BZII)V" ,
1026+ "([BIZLjava /lang/String;[BILjava/lang/String;IJZ[BZII)V" ,
10261027 & [
10271028 JValue :: from ( & zenoh_id) ,
1029+ JValue :: from ( eid) ,
10281030 JValue :: from ( true ) ,
10291031 JValue :: from ( & key_expr_str) ,
10301032 JValue :: from ( & byte_array) ,
@@ -1050,19 +1052,20 @@ pub(crate) fn on_reply_success(
10501052
10511053pub ( crate ) fn on_reply_error (
10521054 env : & mut JNIEnv ,
1053- replier_id : Option < ZenohId > ,
1055+ replier_id : Option < EntityGlobalId > ,
10541056 reply_error : & ReplyError ,
10551057 callback_global_ref : & GlobalRef ,
10561058) -> ZResult < ( ) > {
10571059 let zenoh_id = replier_id
10581060 . map_or_else (
10591061 || Ok ( JByteArray :: default ( ) ) ,
10601062 |replier_id| {
1061- env. byte_array_from_slice ( & replier_id. to_le_bytes ( ) )
1063+ env. byte_array_from_slice ( & replier_id. zid ( ) . to_le_bytes ( ) )
10621064 . map_err ( |err| zerror ! ( err) )
10631065 } ,
10641066 )
10651067 . map ( |value| env. auto_local ( value) ) ?;
1068+ let eid = replier_id. map_or_else ( || 0 , |replier_id| replier_id. eid ( ) as jint ) ;
10661069
10671070 let payload =
10681071 bytes_to_java_array ( env, reply_error. payload ( ) ) . map ( |value| env. auto_local ( value) ) ?;
@@ -1078,9 +1081,10 @@ pub(crate) fn on_reply_error(
10781081 let result = match env. call_method (
10791082 callback_global_ref,
10801083 "run" ,
1081- "([BZLjava /lang/String;[BILjava/lang/String;IJZ[BZII)V" ,
1084+ "([BIZLjava /lang/String;[BILjava/lang/String;IJZ[BZII)V" ,
10821085 & [
10831086 JValue :: from ( & zenoh_id) ,
1087+ JValue :: from ( eid) ,
10841088 JValue :: from ( false ) ,
10851089 JValue :: from ( & JString :: default ( ) ) ,
10861090 JValue :: from ( & payload) ,
0 commit comments