-/* Copyright (c) 2007-2015. The SimGrid Team.
- * All rights reserved. */
+/* Copyright (c) 2007-2016. The SimGrid Team. All rights reserved. */
/* This program is free software; you can redistribute it and/or modify it
* under the terms of the license (GNU LGPL) which comes with this package. */
#include "simgrid/msg.h"
-/** @addtogroup MSG_examples
- *
- * - <b>User-defined properties: properties/properties.c</b> Attaching arbitrary informations to host, processes and
- * such, and retrieving them with @ref MSG_host_get_properties, @ref MSG_host_get_property_value,
- * @ref MSG_process_get_properties, and @ref MSG_process_get_property_value. Also make sure to read the platform and
- * deployment XML files to see how to declare these data.
- */
-
XBT_LOG_NEW_DEFAULT_CATEGORY(test, "Property test");
-static void test_host(const char*hostname)
+static void test_host(const char*hostname)
{
msg_host_t thehost = MSG_host_by_name(hostname);
xbt_dict_t props = MSG_host_get_properties(thehost);
xbt_dict_cursor_t cursor = NULL;
- char *key, *data;
+ char *key;
+ char *data;
const char *noexist = "Unknown";
const char *value;
char exist[] = "Hdd";
XBT_INFO(" Property: %s old value: %s", exist, value);
XBT_INFO("== Trying to modify a host property");
- MSG_host_set_property_value(thehost, exist, xbt_strdup("250"), xbt_free_f);
+ MSG_host_set_property_value(thehost, exist, xbt_strdup("250"));
/* Test if we have changed the value */
value = MSG_host_get_property_value(thehost, exist);
XBT_INFO(" Property: %s old value: %s", exist, value);
/* Restore the value for the next test */
- MSG_host_set_property_value(thehost, exist, xbt_strdup("180"), xbt_free_f);
+ MSG_host_set_property_value(thehost, exist, xbt_strdup("180"));
}
static int alice(int argc, char *argv[]) { /* Dump what we have on the current host */
static int bob(int argc, char *argv[])
{
+ /* this host also tests the properties of the AS*/
+ msg_as_t root = MSG_zone_get_root();
+ XBT_INFO("== Print the properties of the AS");
+ XBT_INFO(" Process property: filename -> %s", MSG_zone_get_property_value(root, "filename"));
+ XBT_INFO(" Process property: date -> %s", MSG_zone_get_property_value(root, "date"));
+ XBT_INFO(" Process property: author -> %s", MSG_zone_get_property_value(root, "author"));
+
/* Get the property list of current bob process */
xbt_dict_t props = MSG_process_get_properties(MSG_process_self());
xbt_dict_cursor_t cursor = NULL;
- char *key, *data;
+ char *key;
+ char *data;
const char *noexist = "UnknownProcessProp";
XBT_ATTRIB_UNUSED const char *value;