Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Add setName in Task
authorSamuel Lepetit <samuel.lepetit@inria.fr>
Wed, 9 May 2012 15:38:23 +0000 (17:38 +0200)
committerSamuel Lepetit <samuel.lepetit@inria.fr>
Wed, 9 May 2012 15:38:23 +0000 (17:38 +0200)
org/simgrid/msg/Task.java
src/jmsg_task.c
src/jmsg_task.h

index 5242090..e82d8dd 100644 (file)
@@ -123,6 +123,11 @@ public class Task {
        /** Gets the remaining computation of the task
      */
        public native double getRemainingDuration();
+       /**
+        * Sets the name of the task
+        * @param name the new task name.c
+        */
+       public native void setName(String name);
        /**
         * This method sets the priority of the computation of the task.
         * The priority doesn't affect the transfer rate. For example a
index 8b52a30..d0ac22e 100644 (file)
@@ -307,7 +307,21 @@ Java_org_simgrid_msg_Task_getRemainingDuration(JNIEnv * env, jobject jtask)
   }
   return (jdouble) MSG_task_get_remaining_computation(ptask);
 }
+JNIEXPORT void JNICALL
+Java_org_simgrid_msg_Task_setName(JNIEnv *env, jobject jtask, jobject jname) {
+       m_task_t task = jtask_to_native_task(jtask, env);
 
+       if (!task) {
+               jxbt_throw_notbound(env, "task", jtask);
+               return;
+       }
+       const char *name = (*env)->GetStringUTFChars(env, jname, 0);
+
+       (*env)->SetObjectField(env, jtask, jtask_field_Task_name, jname);
+       MSG_task_set_name(task, name);
+
+       (*env)->ReleaseStringUTFChars(env, jname, name);
+}
 JNIEXPORT void JNICALL
 Java_org_simgrid_msg_Task_setPriority(JNIEnv * env,
                                            jobject jtask, jdouble priority)
index d8e7fc7..5cb15e8 100644 (file)
@@ -161,7 +161,13 @@ JNIEXPORT jdouble JNICALL Java_org_simgrid_msg_Task_getComputeDuration
  */
 JNIEXPORT jdouble JNICALL
 Java_org_simgrid_msg_Task_getRemainingDuration(JNIEnv *, jobject);
-
+/**
+ * Class               org_simgrid_msg_Task
+ * Method              setName
+ * Signature   (Ljava/lang/string;)V
+ */
+JNIEXPORT void JNICALL
+Java_org_simgrid_msg_Task_setName(JNIEnv *env, jobject jtask, jobject jname);
 /*
  * Class               org_simgrid_msg_Task
  * Method              setPriority