@@ -355,6 +355,8 @@ normalized_type = get_normalized_type(member.type)
355355@ [ if isinstance (member .type .value_type , (BasicType, AbstractGenericString))]@
356356 auto _jfield_@ (member .name )_fid = env-> GetFieldID (_j@ (msg_normalized_type)_class_global, " @(member.name)" , " L@(list_jni_type);" );
357357 jobject _jarray_list_@ (member .name )_obj = env-> NewObject (_j@ (array_list_normalized_type)_class_global, _j@ (array_list_normalized_type)_constructor_global);
358+ // TODO (esteve): replace ArrayList with a jobjectArray to initialize the array beforehand
359+ jmethodID _jlist_@ (member .name )_add_mid = env-> GetMethodID (_j@ (array_list_normalized_type)_class_global, " add" , " (Ljava/lang/Object;)Z" );
358360@ [ if isinstance (member .type , Array )]@
359361 for (size_t i = 0 ; i < @ (member .type .size ); ++ i) {
360362 auto _ros_@ (member .name )_element = _ros_message-> @ (member .name )[i];
@@ -375,9 +377,6 @@ normalized_type = get_normalized_type(member.type)
375377 jobject _jlist_@ (member .name )_element = env-> NewObject (
376378 _j@ (normalized_type)_class_global, _j@ (normalized_type)_constructor_global, _ros_@ (member .name )_element);
377379@ [ end if ]@
378- // TODO (esteve): replace ArrayList with a jobjectArray to initialize the array beforehand
379- jmethodID _jlist_@ (member .name )_add_mid = env-> GetMethodID (
380- _j@ (array_list_normalized_type)_class_global, " add" , " (Ljava/lang/Object;)Z" );
381380 if (_jlist_@ (member .name )_element != nullptr) {
382381 jboolean _jlist_@ (member .name )_add_result = env-> CallBooleanMethod (_jarray_list_@ (member .name )_obj, _jlist_@ (member .name )_add_mid, _jlist_@ (member .name )_element);
383382 assert (_jlist_@ (member .name )_add_result);
@@ -387,6 +386,8 @@ normalized_type = get_normalized_type(member.type)
387386
388387 auto _jfield_@ (member .name )_fid = env-> GetFieldID (_j@ (msg_normalized_type)_class_global, " @(member.name)" , " L@(list_jni_type);" );
389388 jobject _jarray_list_@ (member .name )_obj = env-> NewObject (_j@ (array_list_normalized_type)_class_global, _j@ (array_list_normalized_type)_constructor_global);
389+ // TODO (esteve): replace ArrayList with a jobjectArray to initialize the array beforehand
390+ jmethodID _jlist_@ (member .name )_add_mid = env-> GetMethodID (_j@ (array_list_normalized_type)_class_global, " add" , " (Ljava/lang/Object;)Z" );
390391
391392@ [ if isinstance (member .type , Array )]@
392393 for (size_t i = 0 ; i < @ (member .type .size ); ++ i) {
@@ -395,8 +396,6 @@ normalized_type = get_normalized_type(member.type)
395396 for (size_t i = 0 ; i < _ros_message-> @ (member .name ).size ; ++ i) {
396397 jobject _jlist_@ (member .name )_element = _j@ (normalized_type)_to_java_function (& (_ros_message-> @ (member .name ).data [i]), nullptr);
397398@ [ end if ]@
398- // TODO (esteve): replace ArrayList with a jobjectArray to initialize the array beforehand
399- jmethodID _jlist_@ (member .name )_add_mid = env-> GetMethodID (_j@ (array_list_normalized_type)_class_global, " add" , " (Ljava/lang/Object;)Z" );
400399 if (_jlist_@ (member .name )_element != nullptr) {
401400 jboolean _jlist_@ (member .name )_add_result = env-> CallBooleanMethod (_jarray_list_@ (member .name )_obj, _jlist_@ (member .name )_add_mid, _jlist_@ (member .name )_element);
402401 assert (_jlist_@ (member .name )_add_result);
0 commit comments