Esempio n. 1
0
 def _update_walk(self):
     logport_keys = [p.getkey() for p,_ in self._lastlogports]
     lognet_keys = [n.getkey() for n,_ in self._lastlognets]
     lognet_mapkeys = [LogicalNetworkMap.default_key(n.id) for n,_ in self._lastlognets]
     self._initialkeys = logport_keys + lognet_keys + lognet_mapkeys
     self._walkerdict = dict(itertools.chain(((n, self._walk_lognet) for n in lognet_keys),
                                             ((p, self._walk_logport) for p in logport_keys)))
     self.subroutine(self.restart_walk(), False)
Esempio n. 2
0
 def _update_walk(self):
     logport_keys = [p.getkey() for p, _ in self._lastlogports]
     lognet_keys = [n.getkey() for n, _ in self._lastlognets]
     lognet_mapkeys = [
         LogicalNetworkMap.default_key(n.id) for n, _ in self._lastlognets
     ]
     self._initialkeys = logport_keys + lognet_keys + lognet_mapkeys
     self._walkerdict = dict(
         itertools.chain(((n, self._walk_lognet) for n in lognet_keys),
                         ((p, self._walk_logport) for p in logport_keys)))
     self.subroutine(self.restart_walk(), False)
Esempio n. 3
0
 def _walk_lognet(self, key, value, walk, save):
     save(key)
     if value is None:
         return
     if self._parent.prepush:
         # Acquire all logical ports
         with suppress(WalkKeyNotRetrieved):
             netmap = walk(LogicalNetworkMap.default_key(value.id))
             save(netmap.getkey())
             for logport in netmap.ports.dataset():
                 with suppress(WalkKeyNotRetrieved):
                     p = walk(logport.getkey())
                     #if p is not None and hasattr(p, 'mac_address') and hasattr(p, 'ip_address'):
                     save(logport.getkey())
Esempio n. 4
0
 def _walk_lognet(key, value, walk, save):
     save(key)
     if value is None:
         return
     try:
         phynet = walk(value.physicalnetwork.getkey())
     except KeyError:
         pass
     else:
         if phynet is not None and getattr(phynet, 'type') == 'vxlan':
             try:
                 vxlan_endpoint_key = VXLANEndpointSet.default_key(value.id)
                 walk(vxlan_endpoint_key)
             except KeyError:
                 pass
             else:
                 save(vxlan_endpoint_key)
             if prepush:
                 # Acquire all logical ports
                 try:
                     netmap = walk(LogicalNetworkMap.default_key(value.id))
                 except KeyError:
                     pass
                 else:
                     save(netmap.getkey())
                     for logport in netmap.ports.dataset():
                         try:
                             _ = walk(logport.getkey())
                         except KeyError:
                             pass
                         else:
                             save(logport.getkey())
                         try:
                             _, (portid, ) = LogicalPort._getIndices(
                                 logport.getkey())
                             portinfokey = LogicalPortVXLANInfo.default_key(
                                 portid)
                             _ = walk(portinfokey)
                         except KeyError:
                             pass
                         else:
                             save(portinfokey)
Esempio n. 5
0
 def _walk_lognet(self, key, value, walk, save):
     save(key)
     if value is None:
         return
     if self._parent.prepush:
         # Acquire all logical ports
         try:
             netmap = walk(LogicalNetworkMap.default_key(value.id))
         except KeyError:
             pass
         else:
             save(netmap.getkey())
             for logport in netmap.ports.dataset():
                 try:
                     p = walk(logport.getkey())
                 except KeyError:
                     pass
                 else:
                     #if p is not None and hasattr(p, 'mac_address') and hasattr(p, 'ip_address'):
                     save(logport.getkey())
Esempio n. 6
0
 def _walk_lognet(self, key, value, walk, save):
     save(key)
     if value is None:
         return
     if self._parent.prepush:
         # Acquire all logical ports
         try:
             netmap = walk(LogicalNetworkMap.default_key(value.id))
         except KeyError:
             pass
         else:
             save(netmap.getkey())
             for logport in netmap.ports.dataset():
                 try:
                     p = walk(logport.getkey())
                 except KeyError:
                     pass
                 else:
                     #if p is not None and hasattr(p, 'mac_address') and hasattr(p, 'ip_address'):
                     save(logport.getkey())
Esempio n. 7
0
def default_logicalnetwork_keys(phynet_id, parameters):
    return (PhysicalNetwork.default_key(phynet_id),
            PhysicalNetworkMap.default_key(phynet_id),
            LogicalNetworkSet.default_key(),
            LogicalNetworkMap.default_key(parameters['id']))