'Collect conf files and attempt to spawn the processes for this server'

def launch(self, **kwargs):

    conf_files = self.conf_files(**kwargs)
    if (not conf_files):
        return {}
    pids = self.get_running_pids(**kwargs)
    already_started = False
    for (pid, pid_file) in pids.items():
        conf_file = self.get_conf_file_name(pid_file)
        if (conf_file in conf_files):
            already_started = True
            print((_('%(server)s    running    (%(pid)s    -    %(conf)s)') % {'server': self.server, 'pid': pid, 'conf': conf_file}))
        elif (not kwargs.get('number', 0)):
            already_started = True
            print((_('%(server)s    running    (%(pid)s    -    %(pid_file)s)') % {'server': self.server, 'pid': pid, 'pid_file': pid_file}))
    if already_started:
        print((_('%s    already    started...') % self.server))
        return {}
    if (self.server not in START_ONCE_SERVERS):
        kwargs['once'] = False
    pids = {}
    for conf_file in conf_files:
        if kwargs.get('once'):
            msg = (_('Running    %s    once') % self.server)
        else:
            msg = (_('Starting    %s') % self.server)
        print(('%s...(%s)' % (msg, conf_file)))
        try:
            pid = self.spawn(conf_file, **kwargs)
        except OSError as e:
            if (e.errno == errno.ENOENT):
                print((_('%s    does    not    exist') % self.cmd))
                break
            else:
                raise
        pids[pid] = conf_file
    return pids
