public PowerState getVmState(final Connect conn, final String vmName) { int retry = 3; Domain vms = null; while (retry-- > 0) { try { vms = conn.domainLookupByName(vmName); final PowerState s = convertToPowerState(vms.getInfo().state); return s; } catch (final LibvirtException e) { s_logger.warn("Can't get vm state " + vmName + e.getMessage() + "retry:" + retry); } finally { try { if (vms != null) { vms.free(); } } catch (final LibvirtException l) { s_logger.trace("Ignoring libvirt error.", l); } } } return PowerState.PowerOff; }
try { dm = conn.domainLookupByName(vmName); state = dm.getInfo().state; break; } catch (final LibvirtException e) {
DomainState state = null; try { state = dm.getInfo().state; } catch (final LibvirtException e) { s_logger.info("Couldn't get VM domain state after " + sleeptime + "ms: " + e.getMessage());
final Connect conn = libvirtUtilitiesHelper.getConnectionByVmName(vmName); final Domain vm = conn.domainLookupByName(command.getVmName()); if (vm != null && vm.getInfo().state == DomainState.VIR_DOMAIN_RUNNING) { return new StopAnswer(command, "vm is still running on host", false);
DomainState domainState = dm.getInfo().state ; if (domainState != DomainState.VIR_DOMAIN_RUNNING) { return new CreateVMSnapshotAnswer(cmd, false,
return null; DomainInfo info = dm.getInfo(); final VmStatsEntry stats = new VmStatsEntry();
public DomainState getState() { try { return domain.getInfo().state; } catch (LibvirtException e) { throw new LibvirtRuntimeException("Unable to get domain state", e); } }
VMInfo info = new VMInfo(); info.name = d.getName(); switch (d.getInfo().state) { case VIR_DOMAIN_BLOCKED: info.status = "Blocked";
public void destroyWithDisks() { try { // look up state before undefining the domain... boolean isRunning = (domain.getInfo().state == DomainState.VIR_DOMAIN_RUNNING); List<Disk> disks = getDisks(domain.getConnect(), domainXml); logger.info("Undefining domain '{}'", domain.getName()); domain.undefine(3); // also remove snapshot data and managed save data if (isRunning) { logger.info("Shutting down domain '{}'", domain.getName()); domain.destroy(); } // this will not destroy the backing store disks. for (Disk disk : disks) { logger.info("Removing disk {}", disk.getName()); disk.getVolume().delete(0); } } catch (LibvirtException e) { throw new LibvirtRuntimeException("Unable to destroy domain", e); } }