'Generate the wrapped call to utils.run for the service command, "service" or "systemctl"
:param run_func:  utils.run
:type run_func:  function
:param command: partial function that generates the command list
:type command: function
:return: wrapped utils.run function.
:rtype: function'

@staticmethod
def generate_run_function(run_func, parse_func, command):

    def run(service='', **kwargs):
        '\n                                                Wrapped    utils.run    invocation    that    will    start,    stop,    restart,    etc.    a    service.\n\n                                                :param    service:    service    name,    e.g.    crond,    dbus,    etc.\n                                                :param    kwargs:    extra    arguments    to    utils.run,    .e.g.    timeout.    But    not    for    ignore_status.\n                                                                                                            We    need    a    CmdResult    to    parse    and    raise    a    error.TestError    if    command    failed.\n                                                                                                            We    will    not    let    the    CmdError    out.\n                                                :return:    result    of    parse_func.\n                                                '
        if (run_func is utils.run):
            logging.debug('Setting    ignore_status    to    True.')
            kwargs['ignore_status'] = True
        result = run_func('    '.join(command(service)), **kwargs)
        return parse_func(result)
    return run
