示例#1
0
 def _update_pools(self, dopoll):
     keymap = dict((o.get_connkey(), o) for o in self.list_pools())
     if not dopoll or not self.is_storage_capable():
         return [], [], keymap.values()
     return pollhelpers.fetch_pools(
         self._backend, keymap,
         (lambda obj, key: vmmStoragePool(self, obj, key)))
示例#2
0
    def _fetch_all_pools_cached(self):
        key = self._FETCH_KEY_POOLS
        if key in self._fetch_cache:
            return self._fetch_cache[key]

        ignore, ignore, ret = pollhelpers.fetch_pools(self, {},
                                                    lambda obj, ignore: obj)
        ret = [StoragePool(weakref.ref(self), parsexml=obj.XMLDesc(0))
               for obj in ret.values()]
        if self.cache_object_fetch:
            self._fetch_cache[key] = ret
        return ret
示例#3
0
    def fetch_all_pools(self):
        # pylint: disable=E1102
        if self.cb_fetch_all_pools:
            return self.cb_fetch_all_pools()
        # pylint: enable=E1102

        key = "pools"
        if key in self._fetch_cache:
            return self._fetch_cache[key]

        ignore, ignore, ret = pollhelpers.fetch_pools(self, {},
                                                    lambda obj, ignore: obj)
        ret = [_FetchObjWrapper(obj) for obj in ret.values()]
        if self.cache_object_fetch:
            self._fetch_cache[key] = ret
        return ret
示例#4
0
 def _update_pools(self, dopoll):
     keymap = dict((o.get_connkey(), o) for o in self.list_pools())
     if not dopoll or not self.is_storage_capable():
         return [], [], keymap.values()
     return pollhelpers.fetch_pools(self._backend, keymap,
                 (lambda obj, key: vmmStoragePool(self, obj, key)))
示例#5
0
 def _update_pools(self, dopoll):
     if not dopoll or not self.is_storage_capable():
         return {}, {}, self.pools
     return pollhelpers.fetch_pools(self._backend, self.pools.copy(),
                 (lambda obj, key: vmmStoragePool(self, obj, key)))
示例#6
0
 def _update_pools(self, dopoll):
     if not dopoll or not self.is_storage_capable():
         return {}, {}, self._pools
     return pollhelpers.fetch_pools(self._backend, self._pools.copy(),
                 (lambda obj, key: vmmStoragePool(self, obj, key)))
示例#7
0
 def _update_pools(self):
     keymap = dict((o.get_connkey(), o) for o in self.list_pools())
     def cb(obj, key):
         return vmmStoragePool(self, obj, key)
     return pollhelpers.fetch_pools(self._backend, keymap, cb)