virt: Fix parsing configuration options
-lv_config function was re-written to use complex config callback
-fixed invalid parsing that caused collectd termination even if values
in config file for virt were correct(ExtraStats and RefreshInterval)
-added return statement to properly finish successful parsing
'ExtraStats' option value - without that, parsing of config file will
fail if 'ExtraStats' option is used in the collectd config file
because return code is the one for unrecognized parameter key.
-fixed parsing of RefreshInterval - previously error was thrown by
mistake if value was not written between double quotes(i.e. "60" was
fine but 60 was not)
-previously validation for boolean option value(such as value of
'IgnoreSelected' parameter) in virt plugin was missing and bad input
in config file could be unnoticed by user(in config file, boolean
value is parsed from its string representation). Now validation is
added and error is thrown whenever value can't be parsed directly as
'true'|'yes'|'on' or 'false'|'no'|'off'.
-additionally error messages have been added in all places where
parsing failed in order to notify the user about the reason of
collectd initialization failure.
Change-Id: I2069977395371e89f4a02eb544ffb7bda8c5c5ce
Signed-off-by: Radoslaw Jablonski <radoslawx.jablonski@intel.com>