@@ -345,6 +345,8 @@ normalized_type = get_normalized_type(member.type)
345345@ [ if isinstance (member .type .value_type , (BasicType, AbstractGenericString))]@
346346 auto _jfield_@ (member .name )_fid = env-> GetFieldID (_j@ (msg_normalized_type)_class_global, " @(member.name)" , " L@(list_jni_type);" );
347347 jobject _jarray_list_@ (member .name )_obj = env-> NewObject (_j@ (array_list_normalized_type)_class_global, _j@ (array_list_normalized_type)_constructor_global);
348+ // TODO (esteve): replace ArrayList with a jobjectArray to initialize the array beforehand
349+ jmethodID _jlist_@ (member .name )_add_mid = env-> GetMethodID (_j@ (array_list_normalized_type)_class_global, " add" , " (Ljava/lang/Object;)Z" );
348350@ [ if isinstance (member .type , Array )]@
349351 for (size_t i = 0 ; i < @ (member .type .size ); ++ i) {
350352 auto _ros_@ (member .name )_element = _ros_message-> @ (member .name )[i];
@@ -365,9 +367,6 @@ normalized_type = get_normalized_type(member.type)
365367 jobject _jlist_@ (member .name )_element = env-> NewObject (
366368 _j@ (normalized_type)_class_global, _j@ (normalized_type)_constructor_global, _ros_@ (member .name )_element);
367369@ [ end if ]@
368- // TODO (esteve): replace ArrayList with a jobjectArray to initialize the array beforehand
369- jmethodID _jlist_@ (member .name )_add_mid = env-> GetMethodID (
370- _j@ (array_list_normalized_type)_class_global, " add" , " (Ljava/lang/Object;)Z" );
371370 if (_jlist_@ (member .name )_element != nullptr) {
372371 jboolean _jlist_@ (member .name )_add_result = env-> CallBooleanMethod (_jarray_list_@ (member .name )_obj, _jlist_@ (member .name )_add_mid, _jlist_@ (member .name )_element);
373372 assert (_jlist_@ (member .name )_add_result);
@@ -377,6 +376,8 @@ normalized_type = get_normalized_type(member.type)
377376
378377 auto _jfield_@ (member .name )_fid = env-> GetFieldID (_j@ (msg_normalized_type)_class_global, " @(member.name)" , " L@(list_jni_type);" );
379378 jobject _jarray_list_@ (member .name )_obj = env-> NewObject (_j@ (array_list_normalized_type)_class_global, _j@ (array_list_normalized_type)_constructor_global);
379+ // TODO (esteve): replace ArrayList with a jobjectArray to initialize the array beforehand
380+ jmethodID _jlist_@ (member .name )_add_mid = env-> GetMethodID (_j@ (array_list_normalized_type)_class_global, " add" , " (Ljava/lang/Object;)Z" );
380381
381382@ [ if isinstance (member .type , Array )]@
382383 for (size_t i = 0 ; i < @ (member .type .size ); ++ i) {
@@ -385,8 +386,6 @@ normalized_type = get_normalized_type(member.type)
385386 for (size_t i = 0 ; i < _ros_message-> @ (member .name ).size ; ++ i) {
386387 jobject _jlist_@ (member .name )_element = _j@ (normalized_type)_to_java_function (& (_ros_message-> @ (member .name ).data [i]), nullptr);
387388@ [ end if ]@
388- // TODO (esteve): replace ArrayList with a jobjectArray to initialize the array beforehand
389- jmethodID _jlist_@ (member .name )_add_mid = env-> GetMethodID (_j@ (array_list_normalized_type)_class_global, " add" , " (Ljava/lang/Object;)Z" );
390389 if (_jlist_@ (member .name )_element != nullptr) {
391390 jboolean _jlist_@ (member .name )_add_result = env-> CallBooleanMethod (_jarray_list_@ (member .name )_obj, _jlist_@ (member .name )_add_mid, _jlist_@ (member .name )_element);
392391 assert (_jlist_@ (member .name )_add_result);
0 commit comments