272
272
def hydrate(cls, network_info):
273
273
if isinstance(network_info, basestring):
274
network_info = json.loads(network_info)
274
network_info = jsonutils.loads(network_info)
275
275
return NetworkInfo([VIF.hydrate(vif) for vif in network_info])
278
return json.dumps(self)
278
return jsonutils.dumps(self)
280
280
def legacy(self):
344
344
gateway = get_ip(subnet_v4['gateway'])
345
345
dhcp_server = subnet_v4.get_meta('dhcp_server', gateway)
348
{'bridge': network['bridge'],
350
'cidr': subnet_v4['cidr'],
351
'cidr_v6': subnet_v6['cidr'] if subnet_v6 else None,
352
'vlan': network.get_meta('vlan'),
353
'injected': network.get_meta('injected', False),
354
'multi_host': network.get_meta('multi_host', False),
355
'bridge_interface': network.get_meta('bridge_interface')}
348
'bridge': network['bridge'],
350
'cidr': subnet_v4['cidr'],
351
'cidr_v6': subnet_v6['cidr'] if subnet_v6 else None,
352
'vlan': network.get_meta('vlan'),
353
'injected': network.get_meta('injected', False),
354
'multi_host': network.get_meta('multi_host', False),
355
'bridge_interface': network.get_meta('bridge_interface')
356
357
# NOTE(tr3buchet): 'ips' bit here is tricky, we support a single
357
358
# subnet but we want all the IPs to be there
358
359
# so use the v4_subnets[0] and its IPs are first