Source code for cobald_hep_plugins.example

from cobald.interfaces import PoolDecorator


[docs]class DemandScale(PoolDecorator): """ Example decorator that scales demand """ def __init__(self, target, scale: int = 1): if scale <= 0: raise ValueError(f"scale must be larger than 0, not {scale}") super().__init__(target) self.scale = scale @property def demand(self): return self.target.demand / self.scale @demand.setter def demand(self, value): self.target.demand = self.scale * value