| 85 | |
| 86 | |
| 87 | class wvmStorage(wvmConnect): |
| 88 | def __init__(self, host, login, passwd, conn, pool): |
| 89 | wvmConnect.__init__(self, host, login, passwd, conn) |
| 90 | self.pool = self.get_storage(pool) |
| 91 | |
| 92 | def get_name(self): |
| 93 | return self.pool.name() |
| 94 | |
| 95 | def get_status(self): |
| 96 | status = ['Not running', 'Initializing pool, not available', 'Running normally', 'Running degraded'] |
| 97 | try: |
| 98 | return status[self.pool.info()[0]] |
| 99 | except ValueError: |
| 100 | return 'Unknown' |
| 101 | |
| 102 | def get_size(self): |
| 103 | return [self.pool.info()[1], self.pool.info()[3]] |
| 104 | |
| 105 | def _XMLDesc(self, flags): |
| 106 | return self.pool.XMLDesc(flags) |
| 107 | |
| 108 | def _createXML(self, xml, flags): |
| 109 | self.pool.createXML(xml, flags) |
| 110 | |
| 111 | def _createXMLFrom(self, xml, vol, flags): |
| 112 | self.pool.createXMLFrom(xml, vol, flags) |
| 113 | |
| 114 | def _define(self, xml): |
| 115 | return self.wvm.storagePoolDefineXML(xml, 0) |
| 116 | |
| 117 | def is_active(self): |
| 118 | return self.pool.isActive() |
| 119 | |
| 120 | def get_uuid(self): |
| 121 | return self.pool.UUIDString() |
| 122 | |
| 123 | def start(self): |
| 124 | self.pool.create(0) |
| 125 | |
| 126 | def stop(self): |
| 127 | self.pool.destroy() |
| 128 | |
| 129 | def delete(self): |
| 130 | self.pool.undefine() |
| 131 | |
| 132 | def get_autostart(self): |
| 133 | return self.pool.autostart() |
| 134 | |
| 135 | def set_autostart(self, value): |
| 136 | self.pool.setAutostart(value) |
| 137 | |
| 138 | def get_type(self): |
| 139 | return util.get_xml_path(self._XMLDesc(0), "/pool/@type") |
| 140 | |
| 141 | def get_target_path(self): |
| 142 | return util.get_xml_path(self._XMLDesc(0), "/pool/target/path") |
| 143 | |
| 144 | def get_allocation(self): |