예제 #1
0
def network_to_dict(network, detail=True):
    d = {'id': str(network.id), 'name': network.name}
    d['links'] = util.network_to_links(network.id)
    if detail:
        # Loop over subnets. Do not perform any extra query because of prefetch
        # related!
        subnet_ids = []
        for subnet in network.subnets.all():
            subnet_ids.append(subnet.id)

        state = "SNF:DRAINED" if network.drained else network.state
        d['user_id'] = network.userid
        d['tenant_id'] = network.userid
        d['type'] = network.flavor
        d['updated'] = api.utils.isoformat(network.updated)
        d['created'] = api.utils.isoformat(network.created)
        d['status'] = state
        d['public'] = network.public
        d['shared'] = network.public
        d['router:external'] = network.external_router
        d['admin_state_up'] = True
        d['subnets'] = subnet_ids
        d['SNF:floating_ip_pool'] = network.floating_ip_pool
        d['deleted'] = network.deleted
    return d
예제 #2
0
def network_to_dict(network, detail=True):
    d = {'id': str(network.id), 'name': network.name}
    d['links'] = util.network_to_links(network.id)
    if detail:
        # Loop over subnets. Do not perform any extra query because of prefetch
        # related!
        subnet_ids = []
        for subnet in network.subnets.all():
            subnet_ids.append(subnet.id)

        state = "SNF:DRAINED" if network.drained else network.state
        d['user_id'] = network.userid
        d['tenant_id'] = network.userid
        d['type'] = network.flavor
        d['updated'] = api.utils.isoformat(network.updated)
        d['created'] = api.utils.isoformat(network.created)
        d['status'] = state
        d['public'] = network.public
        d['shared'] = network.public
        d['router:external'] = network.external_router
        d['admin_state_up'] = True
        d['subnets'] = subnet_ids
        d['SNF:floating_ip_pool'] = network.floating_ip_pool
        d['deleted'] = network.deleted
    return d
예제 #3
0
파일: networks.py 프로젝트: AthinaB/synnefo
def network_to_dict(network, detail=True):
    d = {'id': str(network.id), 'name': network.name}
    d['links'] = util.network_to_links(network.id)
    if detail:
        state = "SNF:DRAINED" if network.drained else network.state
        d['user_id'] = network.userid
        d['tenant_id'] = network.project
        d['type'] = network.flavor
        d['updated'] = api.utils.isoformat(network.updated)
        d['created'] = api.utils.isoformat(network.created)
        d['status'] = state
        d['public'] = network.public
        d['shared'] = network.public
        d['router:external'] = network.external_router
        d['admin_state_up'] = True
        d['subnets'] = network.subnet_ids
        d['SNF:floating_ip_pool'] = network.floating_ip_pool
        d['deleted'] = network.deleted
    return d
예제 #4
0
def network_to_dict(network, detail=True):
    d = {'id': str(network.id), 'name': network.name}
    d['links'] = util.network_to_links(network.id)
    if detail:
        state = "SNF:DRAINED" if network.drained else network.state
        d['user_id'] = network.userid
        d['tenant_id'] = network.project
        d['type'] = network.flavor
        d['updated'] = api.utils.isoformat(network.updated)
        d['created'] = api.utils.isoformat(network.created)
        d['status'] = state
        d['public'] = network.public
        d['shared'] = network.public
        d['router:external'] = network.external_router
        d['admin_state_up'] = True
        d['subnets'] = network.subnet_ids
        d['SNF:floating_ip_pool'] = network.floating_ip_pool
        d['deleted'] = network.deleted
    return d
예제 #5
0
파일: networks.py 프로젝트: cstavr/synnefo
def network_to_dict(network, user_id, detail=True):
    d = {'id': str(network.id), 'name': network.name}
    d['links'] = util.network_to_links(network.id)
    if detail:
        d['user_id'] = network.userid
        d['tenant_id'] = network.userid
        d['cidr'] = network.subnet
        d['cidr6'] = network.subnet6
        d['gateway'] = network.gateway
        d['gateway6'] = network.gateway6
        d['dhcp'] = network.dhcp
        d['type'] = network.flavor
        d['updated'] = utils.isoformat(network.updated)
        d['created'] = utils.isoformat(network.created)
        d['status'] = network.state
        d['public'] = network.public

        attachments = [util.construct_nic_id(nic)
                       for nic in network.nics.filter(machine__userid=user_id)
                                              .filter(state="ACTIVE")
                                              .order_by('machine')]
        d['attachments'] = attachments
    return d
예제 #6
0
def network_to_dict(network, user_id, detail=True):
    d = {'id': str(network.id), 'name': network.name}
    d['links'] = util.network_to_links(network.id)
    if detail:
        d['user_id'] = network.userid
        d['tenant_id'] = network.userid
        d['cidr'] = network.subnet
        d['cidr6'] = network.subnet6
        d['gateway'] = network.gateway
        d['gateway6'] = network.gateway6
        d['dhcp'] = network.dhcp
        d['type'] = network.flavor
        d['updated'] = utils.isoformat(network.updated)
        d['created'] = utils.isoformat(network.created)
        d['status'] = network.state
        d['public'] = network.public

        attachments = [util.construct_nic_id(nic)
                       for nic in network.nics.filter(machine__userid=user_id)
                                              .filter(state="ACTIVE")
                                              .order_by('machine')]
        d['attachments'] = attachments
    return d