From 5724727de91d9bdecc5c89ce31ab12acde2e1232 Mon Sep 17 00:00:00 2001 From: navarro Date: Mon, 5 Mar 2012 11:07:14 +0100 Subject: [PATCH] Replace MSG_get_host_number with MSG_hosts_as_dynar. --- src/jmsg.c | 23 +++++++++++++---------- 1 file changed, 13 insertions(+), 10 deletions(-) diff --git a/src/jmsg.c b/src/jmsg.c index d359c1d24f..2013fd25c2 100644 --- a/src/jmsg.c +++ b/src/jmsg.c @@ -386,7 +386,10 @@ Java_org_simgrid_msg_MsgNative_hostGetName(JNIEnv * env, jclass cls, JNIEXPORT jint JNICALL Java_org_simgrid_msg_MsgNative_hostGetNumber(JNIEnv * env, jclass cls) { - return (jint) MSG_get_host_number(); + xbt_dynar_t hosts = MSG_hosts_as_dynar(); + int nb_host = xbt_dynar_length(hosts); + xbt_dynar_free(&hosts); + return (jint) nb_host; } JNIEXPORT jobject JNICALL @@ -803,7 +806,7 @@ JNIEXPORT void JNICALL { MSG_error_t rv; int index; - m_host_t *hosts; + xbt_dynar_t hosts; jobject jhost; /* Run everything */ @@ -818,14 +821,14 @@ JNIEXPORT void JNICALL XBT_INFO("Clean java world"); /* Cleanup java hosts */ - hosts = MSG_get_host_table(); - for (index = 0; index < MSG_get_host_number() - 1; index++) { - jhost = (jobject) hosts[index]->data; + hosts = MSG_hosts_as_dynar(); + for (index = 0; index < xbt_dynar_length(hosts) - 1; index++) { + jhost = (jobject) xbt_dynar_get_as(hosts,index,m_host_t)->data; if (jhost) jhost_unref(env, jhost); } - + xbt_dynar_free(&hosts); XBT_INFO("Clean native world"); } JNIEXPORT void JNICALL @@ -890,8 +893,8 @@ Java_org_simgrid_msg_MsgNative_allHosts(JNIEnv * env, jclass cls_arg) jstring jname; m_host_t host; - int count = MSG_get_host_number(); - m_host_t *table = MSG_get_host_table(); + xbt_dynar_t table = MSG_hosts_as_dynar(); + int count = xbt_dynar_length(table); jclass cls = jxbt_get_class(env, "org/simgrid/msg/Host"); @@ -907,7 +910,7 @@ Java_org_simgrid_msg_MsgNative_allHosts(JNIEnv * env, jclass cls_arg) } for (index = 0; index < count; index++) { - host = table[index]; + host = xbt_dynar_get_as(table,index,m_host_t); jhost = (jobject) (MSG_host_get_data(host)); if (!jhost) { @@ -920,7 +923,7 @@ Java_org_simgrid_msg_MsgNative_allHosts(JNIEnv * env, jclass cls_arg) (*env)->SetObjectArrayElement(env, jtable, index, jhost); } - + xbt_dynar_free(&table); return jtable; } -- 2.20.1