GNOME Bugzilla – Bug 504936
Logging warnings/errors
Last modified: 2014-03-04 18:48:10 UTC
It would be nice if the engine had some way to log warnings and errors. I was wondering if objects couldn't have chains of responsibility for that, like the following : 1. a plain function has a std::cout << message ; 2. it is connected as handler on a chain of responsibility of (for example) Ekiga::ContactCore ; 3. said core knows about sources, and is connected as handler on chains of responsibility for them ; 4. said sources know about books, and are connected as handler on chains of responsibility for them ; 5. said contacts have chain of responsibilities for messages. This could allow displaying warnings like : *WARNING* Ekiga::ContactCore->Evolution::Source->Evolution::Book("Personal")->Evolution::Contact("Foo"): something very wrong happened.
I see three uses for such logging : (-) we get a successful registration : a flashing message in the status line is enough ; (-) we get a failed registration : a flashing message is definitely not enough, we need something that sticks! Another example of such situation is the number of unread messages attached to an *opal* account (it doesn't make sense for a generic account). (-) we get a developer-oriented error : all the FIXMEs about bad forms come to mind. I'd really like to see a good system come up fast : we need it pretty badly.
We already have glib's functions to handle such things : we should just use it more. In retrospect, we didn't need that this fast or this badly...