'Create staticmethods for each service command, e.g. start, stop, restart.
These staticmethods take as an argument the service to be started or stopped.
systemd = SpecificServiceManager(auto_create_specific_service_command_generator())
systemd.start("lldpad")
systemd.stop("lldpad")
:param service_command_generator: a sys_v_init or systemd command generator
:type service_command_generator: _ServiceCommandGenerator
:param run: function to call the run the commands, default utils.run
:type run: function'

def __init__(self, service_command_generator, service_result_parser, run=utils.run):

    for cmd in service_command_generator.commands:
        setattr(self, cmd, self.generate_run_function(run, getattr(service_result_parser, cmd), getattr(service_command_generator, cmd)))
