Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
do not output empty tags, indent, and cosmetics
authorFrederic Suter <frederic.suter@cc.in2p3.fr>
Thu, 28 Jan 2016 11:32:04 +0000 (12:32 +0100)
committerFrederic Suter <frederic.suter@cc.in2p3.fr>
Thu, 28 Jan 2016 11:32:04 +0000 (12:32 +0100)
src/instr/jedule/jedule_output.c
src/instr/jedule/jedule_sd_binding.c

index 67f15ec..b8195cd 100644 (file)
@@ -29,12 +29,14 @@ static void print_container(jed_simgrid_container_t container);
 static void print_resources(jed_simgrid_container_t resource_parent);
 static void print_key_value_dict(xbt_dict_t meta_info_dict);
 static void print_events(xbt_dynar_t event_list);
-static void get_hierarchy_list(xbt_dynar_t hier_list, jed_simgrid_container_t container);
+static void get_hierarchy_list(xbt_dynar_t hier_list,
+                               jed_simgrid_container_t container);
 
 /*********************************************************/
 
 
-static void get_hierarchy_list(xbt_dynar_t hier_list, jed_simgrid_container_t container) {
+static void get_hierarchy_list(xbt_dynar_t hier_list,
+                               jed_simgrid_container_t container) {
 
   xbt_assert( container != NULL );
 
@@ -49,7 +51,8 @@ static void get_hierarchy_list(xbt_dynar_t hier_list, jed_simgrid_container_t co
       int child_nb = -1;
       jed_simgrid_container_t child_container;
 
-      xbt_dynar_foreach(container->parent->container_children, i, child_container) {
+      xbt_dynar_foreach(container->parent->container_children, i,
+                        child_container) {
         if( child_container == container ) {
           child_nb = i;
           break;
@@ -69,7 +72,8 @@ static void get_hierarchy_list(xbt_dynar_t hier_list, jed_simgrid_container_t co
 
 }
 
-static void get_hierarchy_string(jed_simgrid_container_t container, char *outbuf) {
+static void get_hierarchy_string(jed_simgrid_container_t container,
+                                 char *outbuf) {
     char buf[1024];
     xbt_dynar_t hier_list;
     unsigned int iter;
@@ -100,7 +104,7 @@ static void print_key_value_dict(xbt_dict_t key_value_dict) {
 
   if( key_value_dict != NULL ) {
     xbt_dict_foreach(key_value_dict,cursor,key,data) {
-      fprintf(jed_file, "<prop key=\"%s\" value=\"%s\" />\n",key,data);
+      fprintf(jed_file, "        <prop key=\"%s\" value=\"%s\" />\n",key,data);
     }
   }
 }
@@ -111,7 +115,7 @@ static void print_container(jed_simgrid_container_t container) {
 
   xbt_assert( container != NULL );
 
-  fprintf(jed_file, "<res name=\"%s\">\n", container->name);
+  fprintf(jed_file, "    <res name=\"%s\">\n", container->name);
   if( container->container_children != NULL ) {
     xbt_dynar_foreach(container->container_children, i, child_container) {
       print_container(child_container);
@@ -119,7 +123,7 @@ static void print_container(jed_simgrid_container_t container) {
   } else {
     print_resources(container);
   }
-  fprintf(jed_file, "</res>\n");
+  fprintf(jed_file, "    </res>\n");
 }
 
 static void print_resources(jed_simgrid_container_t resource_parent) {
@@ -133,7 +137,7 @@ static void print_resources(jed_simgrid_container_t resource_parent) {
     
     get_hierarchy_string(resource_parent, resid);
 
-  fprintf(jed_file, "<rset id=\"%s\" nb=\"%d\" names=\"", resid, res_nb);
+  fprintf(jed_file, "      <rset id=\"%s\" nb=\"%d\" names=\"", resid, res_nb);
   xbt_dynar_foreach(resource_parent->resource_list, i, res_name) {
     fprintf(jed_file, "%s", res_name);
     if( i != res_nb-1 ) {
@@ -145,10 +149,9 @@ static void print_resources(jed_simgrid_container_t resource_parent) {
 
 
 static void print_platform(jed_simgrid_container_t root_container) {
-
-  fprintf(jed_file, "<platform>\n");
+  fprintf(jed_file, "  <platform>\n");
   print_container(root_container);
-  fprintf(jed_file, "</platform>\n");
+  fprintf(jed_file, "  </platform>\n");
 }
 
 static void print_event(jed_event_t event) {
@@ -159,15 +162,17 @@ static void print_event(jed_event_t event) {
   xbt_assert( event != NULL );
   xbt_assert( event->resource_subsets != NULL );
 
-  fprintf(jed_file, "<event>\n");
+  fprintf(jed_file, "    <event>\n");
 
 
-  fprintf(jed_file, "<prop key=\"name\" value=\"%s\" />\n", event->name);
-  fprintf(jed_file, "<prop key=\"start\" value=\"%g\" />\n", event->start_time);
-  fprintf(jed_file, "<prop key=\"end\" value=\"%g\" />\n", event->end_time);
-  fprintf(jed_file, "<prop key=\"type\" value=\"%s\" />\n", event->type);
+  fprintf(jed_file, "      <prop key=\"name\" value=\"%s\" />\n", event->name);
+  fprintf(jed_file, "      <prop key=\"start\" value=\"%g\" />\n",
+                    event->start_time);
+  fprintf(jed_file, "      <prop key=\"end\" value=\"%g\" />\n",
+                    event->end_time);
+  fprintf(jed_file, "      <prop key=\"type\" value=\"%s\" />\n", event->type);
 
-  fprintf(jed_file, "<res_util>\n");
+  fprintf(jed_file, "      <res_util>\n");
 
   xbt_dynar_foreach(event->resource_subsets, i, subset) {
 
@@ -177,57 +182,59 @@ static void print_event(jed_event_t event) {
 
     get_hierarchy_string(subset->parent, resid);
         
-    fprintf(jed_file, "<select resources=\"");
+    fprintf(jed_file, "        <select resources=\"");
     fprintf(jed_file, "%s", resid);
     fprintf(jed_file, ".[%d-%d]", start, end);
     fprintf(jed_file, "\" />\n");
 
   }
 
-  fprintf(jed_file, "</res_util>\n");
-
-  fprintf(jed_file, "<characteristics>\n");
-  {
-    char *ch;
-    unsigned int iter;
-    xbt_dynar_foreach(event->characteristics_list, iter, ch) {
-      fprintf(jed_file, "<characteristic name=\"%s\" />\n", ch);
+  fprintf(jed_file, "      </res_util>\n");
+  if (!xbt_dynar_is_empty(event->characteristics_list)){
+    fprintf(jed_file, "      <characteristics>\n");
+    {
+      char *ch;
+      unsigned int iter;
+      xbt_dynar_foreach(event->characteristics_list, iter, ch) {
+        fprintf(jed_file, "          <characteristic name=\"%s\" />\n", ch);
+      }
     }
+    fprintf(jed_file, "      </characteristics>\n");
   }
-  fprintf(jed_file, "</characteristics>\n");
 
-  fprintf(jed_file, "<info>\n");
-  print_key_value_dict(event->info_hash);
-  fprintf(jed_file, "</info>\n");
+  if (!xbt_dict_is_empty(event->info_hash)){
+    fprintf(jed_file, "      <info>\n");
+    print_key_value_dict(event->info_hash);
+    fprintf(jed_file, "      </info>\n");
+  }
 
-  fprintf(jed_file, "</event>\n");
+  fprintf(jed_file, "    </event>\n");
 }
 
 static void print_events(xbt_dynar_t event_list)  {
   unsigned int i;
   jed_event_t event;
 
-  fprintf(jed_file, "<events>\n");
+  fprintf(jed_file, "  <events>\n");
   xbt_dynar_foreach(event_list, i, event) {
     print_event(event);
   }
-  fprintf(jed_file, "</events>\n");
+  fprintf(jed_file, "  </events>\n");
 }
 
-
 void write_jedule_output(FILE *file, jedule_t jedule,
-    xbt_dynar_t event_list, xbt_dict_t meta_info_dict) {
-
-//  xbt_assert( jed_file != NULL );
+                         xbt_dynar_t event_list, xbt_dict_t meta_info_dict) {
 
   jed_file = file;
   if (!xbt_dynar_is_empty(jedule_event_list)){
 
     fprintf(jed_file, "<jedule>\n");
 
-    fprintf(jed_file, "<jedule_meta>\n");
-    print_key_value_dict(jedule->jedule_meta_info);
-    fprintf(jed_file, "</jedule_meta>\n");
+    if (!xbt_dict_is_empty(jedule->jedule_meta_info)){
+      fprintf(jed_file, "  <jedule_meta>\n");
+      print_key_value_dict(jedule->jedule_meta_info);
+      fprintf(jed_file, "  </jedule_meta>\n");
+    }
 
     print_platform(jedule->root_container);
 
index 9d31bdc..25a44a2 100644 (file)
@@ -43,11 +43,8 @@ void jedule_log_sd_event(SD_task_t task)
     xbt_dynar_push(host_list, &hostname);
   }
 
-  create_jed_event(&event,
-      (char*)SD_task_get_name(task),
-      task->start_time,
-      task->finish_time,
-      "SD");
+  create_jed_event(&event, (char*)SD_task_get_name(task),
+      task->start_time, task->finish_time,"SD");
 
   jed_event_add_resources(event, host_list);
   jedule_store_event(event);