Optimize get_networks function in all plugins

This patch avoids a loop that actually does nothing
when fields is empty inside get_networks.

Change-Id: If0c3e5d25d1f947358b060bea7e4595a58d238bf
This commit is contained in:
Shih-Hao Li 2016-03-22 11:24:00 -07:00
parent f3c58aaaa6
commit b653266abb
4 changed files with 8 additions and 4 deletions

View File

@ -256,7 +256,8 @@ class NsxDvsV2(addr_pair_db.AllowedAddressPairsMixin,
limit, marker, page_reverse))
for net in networks:
self._extend_network_dict_provider(context, net)
return [self._fields(network, fields) for network in networks]
return (networks if not fields else
[self._fields(network, fields) for network in networks])
def update_network(self, context, id, network):
raise nsx_exc.NsxPluginException(

View File

@ -1050,7 +1050,8 @@ class NsxPluginV2(addr_pair_db.AllowedAddressPairsMixin,
limit, marker, page_reverse))
for net in networks:
self._extend_network_dict_provider(context, net)
return [self._fields(network, fields) for network in networks]
return (networks if not fields else
[self._fields(network, fields) for network in networks])
def update_network(self, context, id, network):
pnet._raise_if_updates_provider_attributes(network['network'])

View File

@ -801,7 +801,8 @@ class NsxVPluginV2(addr_pair_db.AllowedAddressPairsMixin,
limit, marker, page_reverse))
for net in networks:
self._extend_network_dict_provider(context, net)
return [self._fields(network, fields) for network in networks]
return (networks if not fields else
[self._fields(network, fields) for network in networks])
def update_network(self, context, id, network):
net_attrs = network['network']

View File

@ -652,7 +652,8 @@ class NsxV3Plugin(addr_pair_db.AllowedAddressPairsMixin,
# Add provider network fields
for net in networks:
self._extend_network_dict_provider(context, net)
return [self._fields(network, fields) for network in networks]
return (networks if not fields else
[self._fields(network, fields) for network in networks])
def _get_data_from_binding_profile(self, context, port):
if (pbin.PROFILE not in port or