Merge "Allow offloading lookups in driver contexts" into stable/newton
This commit is contained in:
commit
d16074b0b5
|
@ -38,12 +38,15 @@ class MechanismDriverContext(object):
|
|||
class NetworkContext(MechanismDriverContext, api.NetworkContext):
|
||||
|
||||
def __init__(self, plugin, plugin_context, network,
|
||||
original_network=None):
|
||||
original_network=None, segments=None):
|
||||
super(NetworkContext, self).__init__(plugin, plugin_context)
|
||||
self._network = network
|
||||
self._original_network = original_network
|
||||
self._segments = segments_db.get_network_segments(
|
||||
plugin_context.session, network['id'])
|
||||
if segments is None:
|
||||
self._segments = segments_db.get_network_segments(
|
||||
plugin_context.session, network['id'])
|
||||
else:
|
||||
self._segments = segments
|
||||
|
||||
@property
|
||||
def current(self):
|
||||
|
@ -88,8 +91,11 @@ class PortContext(MechanismDriverContext, api.PortContext):
|
|||
super(PortContext, self).__init__(plugin, plugin_context)
|
||||
self._port = port
|
||||
self._original_port = original_port
|
||||
self._network_context = NetworkContext(plugin, plugin_context,
|
||||
network) if network else None
|
||||
if isinstance(network, NetworkContext):
|
||||
self._network_context = network
|
||||
else:
|
||||
self._network_context = NetworkContext(
|
||||
plugin, plugin_context, network) if network else None
|
||||
self._binding = binding
|
||||
self._binding_levels = binding_levels
|
||||
self._segments_to_bind = None
|
||||
|
|
Loading…
Reference in New Issue