[libgtop] Add a level (DEBUG, WARNING, ERROR) to printing functions.



commit 65c5ca842f4197c3257295fde5068491fb097a36
Author: Benoit Dejean <bdejean gmail com>
Date:   Sun Jun 21 21:05:11 2015 +0200

    Add a level (DEBUG, WARNING, ERROR) to printing functions.

 sysdeps/common/error.c |   39 +++++++++++++++++++++++++++++++--------
 1 files changed, 31 insertions(+), 8 deletions(-)
---
diff --git a/sysdeps/common/error.c b/sysdeps/common/error.c
index a7a4581..c36b81d 100644
--- a/sysdeps/common/error.c
+++ b/sysdeps/common/error.c
@@ -26,22 +26,45 @@
 
 #include <glibtop/error.h>
 
+enum MESSAGE_LEVEL {
+       MESSAGE_DEBUG,
+       MESSAGE_WARNING,
+       MESSAGE_ERROR
+};
+
 #define DEFAULT_NAME   "LibGTop-Server"
 
 /* Prints error message and exits. */
 
 static void
-print_server_name (const glibtop *server)
+print_start (const glibtop *server, int message_level)
 {
-       fprintf (stderr, "%s: ", server && server->name
+       const char *level;
+
+       switch (message_level) {
+       case MESSAGE_DEBUG:
+               level = "DEBUG";
+               break;
+       case MESSAGE_WARNING:
+               level = "WARNING";
+               break;
+       case MESSAGE_ERROR:
+               level = "ERROR";
+               break;
+       default:
+               level = "UNKNOWN";
+       }
+
+       fprintf (stderr, "%s: [%s] ", server && server->name
                 ? server->name
-                : DEFAULT_NAME);
+                : DEFAULT_NAME,
+               level);
 }
 
 void
 glibtop_error_vr (glibtop *server, const char *format, va_list args)
 {
-       print_server_name (server);
+       print_start (server, MESSAGE_ERROR);
        vfprintf (stderr, format, args);
        fputc('\n', stderr);
 
@@ -55,7 +78,7 @@ glibtop_error_vr (glibtop *server, const char *format, va_list args)
 void
 glibtop_error_io_vr (glibtop *server, const char *format, int error, va_list args)
 {
-       print_server_name (server);
+       print_start (server, MESSAGE_ERROR);
        vfprintf (stderr, format, args);
        fprintf (stderr, ": %s\n", g_strerror (error));
 
@@ -69,7 +92,7 @@ glibtop_error_io_vr (glibtop *server, const char *format, int error, va_list arg
 void
 glibtop_warn_vr (glibtop *server, const char *format, va_list args)
 {
-       print_server_name (server);
+       print_start (server, MESSAGE_WARNING);
        vfprintf (stderr, format, args);
        fputc('\n', stderr);
 
@@ -81,7 +104,7 @@ glibtop_warn_vr (glibtop *server, const char *format, va_list args)
 void
 glibtop_warn_io_vr (glibtop *server, const char *format, int error, va_list args)
 {
-       print_server_name (server);
+       print_start (server, MESSAGE_WARNING);
        vfprintf (stderr, format, args);
        fprintf (stderr, ": %s\n", g_strerror (error));
 
@@ -136,7 +159,7 @@ glibtop_warn_io_r (glibtop *server, const char *format, ...)
 void
 glibtop_debug_vr (glibtop *server, const char *format, va_list args)
 {
-       print_server_name (server);
+       print_start (server, MESSAGE_DEBUG);
        vfprintf (stderr, format, args);
        fputc('\n', stderr);
 }


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]