Esempio n. 1
0
def highest_priority(source):
    """
    Filters pools by highest priority
    """
    max_prio = 0
    pools = list(source)
    for pool in pools:
        name = pool.name
        if not name:
            continue
        if Pools.get_priority(name)>max_prio:
            max_prio = Pools.get_priority(name)

    for pool in pools:
        name = pool.name
        if not name:
            continue
        if Pools.get_priority(name)>=max_prio:
            yield pool
Esempio n. 2
0
def highest_priority(source):
    """
    Filters pools by highest priority
    """
    max_prio = 0
    pools = list(source)
    for pool in pools:
        name = pool.name
        if not name:
            continue
        if Pools.get_priority(name) > max_prio:
            max_prio = Pools.get_priority(name)

    for pool in pools:
        name = pool.name
        if not name:
            continue
        if Pools.get_priority(name) >= max_prio:
            yield pool
Esempio n. 3
0
def get_server():
    """
    Returns an iterator of valid servers
    """
    perc_map = []
    map_ods = 0.0
    percentage = Pools.percentage_server()
    for server, percentage in percentage:
        for perc in range(percentage):
            perc_map.append(server)
            map_ods += 0.01
    if random.random() < map_ods:
        return random.choice(perc_map)

    return _select(Servers).name
Esempio n. 4
0
def get_server():
    """
    Returns an iterator of valid servers
    """
    perc_map = []
    map_ods = 0.0
    percentage = Pools.percentage_server()
    for server, percentage in percentage:
        for perc in range(percentage):
            perc_map.append(server)
            map_ods += 0.01
    if random.random() < map_ods:
        return random.choice(perc_map)

    return _select(Servers).name