def get( self, skipCache=0 ): global meaningful_bytes_delta # data = self.parent.get_full() if not data: return None if self.name == 'available': self.value = data[statvfs.F_BAVAIL] * data[statvfs.F_BSIZE] elif self.name == 'size': self.value = data[statvfs.F_BLOCKS] * data[statvfs.F_BSIZE] elif self.name == 'used': free = data[statvfs.F_BFREE] * data[statvfs.F_BSIZE] size = data[statvfs.F_BLOCKS] * data[statvfs.F_BSIZE] self.value = size - free else: raise "Child name (%s) not known" % self.name # diffvals = math.fabs(self.old_value - self.value) if diffvals > meaningful_bytes_delta: # We have a significant change here. Let the world know! e = ResourceChangeEvent(self, self.old_value, self.value) e.name = self.name self.event_generate(e) self.old_value = self.value # return float(self.value)
def get( self, skipCache=0 ): global meaningful_percentage_delta # data = self.get_full() if not data: return None avail = data[statvfs.F_BAVAIL] * data[statvfs.F_BSIZE] size = data[statvfs.F_BLOCKS] * data[statvfs.F_BSIZE] used = size - avail self.value = float(used) / float(size) * 100.0 # diffvals = math.fabs(self.old_value - self.value) if diffvals > meaningful_percentage_delta: # We have a significant change here. Let the world know! e = ResourceChangeEvent(self, self.old_value, self.value) e.available = avail e.used = used self.event_generate(e) self.old_value = self.value return self.value