def validate(self): if self.base_id not in self.chain: raise se.VolumeIsNotInChain(self.sd_id, self.img_id, self.base_id) if self.top_id not in self.chain: raise se.VolumeIsNotInChain(self.sd_id, self.img_id, self.top_id) # Validate that top volume is the parent of the base. if self.top_vol.getParent() != self.base_id: raise se.WrongParentVolume(self.base_id, self.top_id) if self.base_vol.isShared(): raise se.SharedVolumeNonWritable(self.base_vol) if self.top_vol.isShared(): raise se.SharedVolumeNonWritable(self.top_vol)
def fail(): raise se.VolumeIsNotInChain(None, None, None)