summaryrefslogtreecommitdiff
path: root/src/libvirt.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/libvirt.rs')
-rw-r--r--src/libvirt.rs15
1 files changed, 6 insertions, 9 deletions
diff --git a/src/libvirt.rs b/src/libvirt.rs
index e65ea1e..4bf8590 100644
--- a/src/libvirt.rs
+++ b/src/libvirt.rs
@@ -66,16 +66,13 @@ pub struct Libvirt {
impl Libvirt {
pub fn connect(url: &str) -> Result<Self, VirtError> {
debug!("connecting to libvirtd {}", url);
- let conn = Connect::open(url).map_err(|err| VirtError::Connect(err))?;
+ let conn = Connect::open(url).map_err(VirtError::Connect)?;
Ok(Self { conn })
}
fn get_domains(&self) -> Result<Vec<Domain>, VirtError> {
debug!("listing all domains");
- Ok(self
- .conn
- .list_all_domains(0)
- .map_err(|err| VirtError::Domains(err))?)
+ Ok(self.conn.list_all_domains(0).map_err(VirtError::Domains)?)
}
fn get_domain(&self, name: &str) -> Result<Option<Domain>, VirtError> {
@@ -119,7 +116,7 @@ impl Libvirt {
let disk = find_iso_xml(&xml);
let flags =
VIR_DOMAIN_AFFECT_CONFIG | VIR_DOMAIN_AFFECT_CURRENT | VIR_DOMAIN_AFFECT_LIVE;
- if disk.len() > 0 {
+ if !disk.is_empty() {
domain
.detach_device_flags(&disk, flags)
.map_err(|err| VirtError::DetachIso(name.to_string(), err))?;
@@ -141,7 +138,7 @@ impl Libvirt {
}
pub fn start(&self, name: &str) -> Result<(), VirtError> {
- if let Some(_) = self.get_domain(name)? {
+ if self.get_domain(name)?.is_some() {
self.trigger_start(name)?;
wait_for_ssh(name);
}
@@ -196,7 +193,7 @@ impl Libvirt {
}
fn get_name(domain: &Domain) -> Result<String, VirtError> {
- let name = domain.get_name().map_err(|err| VirtError::GetName(err))?;
+ let name = domain.get_name().map_err(VirtError::GetName)?;
Ok(name)
}
@@ -260,7 +257,7 @@ fn find_iso_xml(xml: &str) -> String {
}
let end = end.unwrap();
let disk = &xml[..end + 7];
- if let Some(_) = disk.find(".iso") {
+ if disk.contains(".iso") {
return disk.to_string();
}
xml = &xml[end..];