changeset 36:91a99ff9c4c5

String to &str
author AnaTofuZ <anatofuz@gmail.com>
date Sun, 22 Nov 2020 11:03:09 +0900
parents f589d5baab5f
children 0f966575a56a
files src/command.rs src/main.rs src/xml.rs
diffstat 3 files changed, 40 insertions(+), 40 deletions(-) [+]
line wrap: on
line diff
--- a/src/command.rs	Sun Nov 22 10:11:02 2020 +0900
+++ b/src/command.rs	Sun Nov 22 11:03:09 2020 +0900
@@ -23,55 +23,55 @@
     Ok(())
 }
 
-pub fn define(user: &user::User, vm_name: String) {
+pub fn define(user: &user::User, vm_name: &str) {
     let vm_name = generate_vm_name(&user.name, &vm_name);
-    let vm_arg = xml::Builder::new(user.name.clone(), vm_name).finalize();
-    if let Ok(xml_path) = vm_arg.generate() {
+    let vm_xml = xml::Builder::new(&user.name, &vm_name).finalize();
+    if let Ok(xml_path) = vm_xml.generate() {
         virsh::command_require_vm_name(xml_path, "define")
     }
 }
 
-pub fn start(user_name: &str, vm_name: String) {
-    virsh::command_require_vm_name(get_vm_name(user_name, &vm_name), "start");
+pub fn start(user_name: &str, vm_name: &str) {
+    virsh::command_require_vm_name(get_vm_name(user_name, vm_name), "start");
 }
 
-pub fn shutdown(user_name: &str, vm_name: String) {
-    exec_cmd_from_name_or_id(user_name, &vm_name, "shutdown")
+pub fn shutdown(user_name: &str, vm_name: &str) {
+    exec_cmd_from_name_or_id(user_name, vm_name, "shutdown")
 }
 
-pub fn destroy(user_name: &str, vm_name: String) {
-    exec_cmd_from_name_or_id(user_name, &vm_name, "destroy")
+pub fn destroy(user_name: &str, vm_name: &str) {
+    exec_cmd_from_name_or_id(user_name, vm_name, "destroy")
 }
 
-pub fn console(user_name: &str, vm_name: String) {
-    exec_cmd_from_name_or_id(user_name, &vm_name, "console")
+pub fn console(user_name: &str, vm_name: &str) {
+    exec_cmd_from_name_or_id(user_name, vm_name, "console")
 }
 
-pub fn vncdisplay(user_name: &str, vm_name: String) {
-    exec_cmd_from_name_or_id(user_name, &vm_name, "vncdisplay")
+pub fn vncdisplay(user_name: &str, vm_name: &str) {
+    exec_cmd_from_name_or_id(user_name, vm_name, "vncdisplay")
 }
 
-pub fn ttyconsole(user_name: &str, vm_name: String) {
-    exec_cmd_from_name_or_id(user_name, &vm_name, "ttyconsole")
+pub fn ttyconsole(user_name: &str, vm_name: &str) {
+    exec_cmd_from_name_or_id(user_name, vm_name, "ttyconsole")
 }
 
-pub fn dumpxml(user_name: &str, vm_name: String) {
-    exec_cmd_from_name_or_id(user_name, &vm_name, "dumpxml")
+pub fn dumpxml(user_name: &str, vm_name: &str) {
+    exec_cmd_from_name_or_id(user_name, vm_name, "dumpxml")
 }
 
-pub fn undefine(user_name: &str, vm_name: String) {
-    exec_cmd_from_name_or_id(user_name, &vm_name, "undefine")
+pub fn undefine(user_name: &str, vm_name: &str) {
+    exec_cmd_from_name_or_id(user_name, vm_name, "undefine")
 }
 
-pub fn domiflist(user_name: &str, vm_name: String) {
-    exec_cmd_from_name_or_id(user_name, &vm_name, "domiflist")
+pub fn domiflist(user_name: &str, vm_name: &str) {
+    exec_cmd_from_name_or_id(user_name, vm_name, "domiflist")
 }
 
-pub fn dominfo(user_name: &str, vm_name: String) {
-    exec_cmd_from_name_or_id(user_name, &vm_name, "dominfo")
+pub fn dominfo(user_name: &str, vm_name: &str) {
+    exec_cmd_from_name_or_id(user_name, vm_name, "dominfo")
 }
 
-pub fn dumpvncpasswd(user_name: &str, vm_name: String) {}
+pub fn dumpvncpasswd(_user_name: &str, _vm_name: &str) {}
 
 fn exec_cmd_from_name_or_id(user_name: &str, name_or_id: &str, command: &str) {
     if name_or_id.parse::<u8>().is_ok() {
--- a/src/main.rs	Sun Nov 22 10:11:02 2020 +0900
+++ b/src/main.rs	Sun Nov 22 11:03:09 2020 +0900
@@ -122,7 +122,7 @@
 
         SubCommand::Start(arg) => {
             user::set_root_id();
-            command::start(&user_name, arg.name);
+            command::start(&user_name, &arg.name);
         }
 
         SubCommand::Define(arg) => {
@@ -132,52 +132,52 @@
                 gid,
                 name: user_name,
             };
-            command::define(&user, arg.name);
+            command::define(&user, &arg.name);
         }
 
         SubCommand::Shutdown(arg) => {
             user::set_root_id();
-            command::shutdown(&user_name, arg.name);
+            command::shutdown(&user_name, &arg.name);
         }
 
         SubCommand::Console(arg) => {
             user::set_root_id();
-            command::console(&user_name, arg.name);
+            command::console(&user_name, &arg.name);
         }
 
         SubCommand::Destroy(arg) => {
             user::set_root_id();
-            command::destroy(&user_name, arg.name);
+            command::destroy(&user_name, &arg.name);
         }
 
         SubCommand::Vncdisplay(arg) => {
             user::set_root_id();
-            command::vncdisplay(&user_name, arg.name);
+            command::vncdisplay(&user_name, &arg.name);
         }
 
         SubCommand::Ttyconsole(arg) => {
             user::set_root_id();
-            command::ttyconsole(&user_name, arg.name);
+            command::ttyconsole(&user_name, &arg.name);
         }
 
         SubCommand::Dumpxml(arg) => {
             user::set_root_id();
-            command::dumpxml(&user_name, arg.name);
+            command::dumpxml(&user_name, &arg.name);
         }
 
         SubCommand::Undefine(arg) => {
             user::set_root_id();
-            command::undefine(&user_name, arg.name);
+            command::undefine(&user_name, &arg.name);
         }
 
         SubCommand::Domiflist(arg) => {
             user::set_root_id();
-            command::domiflist(&user_name, arg.name);
+            command::domiflist(&user_name, &arg.name);
         }
 
         SubCommand::Dominfo(arg) => {
             user::set_root_id();
-            command::dominfo(&user_name, arg.name);
+            command::dominfo(&user_name, &arg.name);
         }
 
         SubCommand::Templates(_) => {
--- a/src/xml.rs	Sun Nov 22 10:11:02 2020 +0900
+++ b/src/xml.rs	Sun Nov 22 11:03:09 2020 +0900
@@ -67,10 +67,10 @@
 }
 
 impl Builder {
-    pub fn new(user_name: String, vm_name: String) -> Builder {
+    pub fn new(user_name: &str, vm_name: &str) -> Builder {
         Builder {
-            user_name,
-            vm_name,
+            user_name: user_name.to_string(),
+            vm_name: vm_name.to_string(),
             debug_tcp_port: None,
             backing_file: None,
         }
@@ -86,7 +86,7 @@
         self
     }
 
-    pub fn finalize(&mut self) -> GenerateVM {
+    pub fn finalize(self) -> GenerateVM {
         let year = self.user_name.chars().skip(1).take(2).collect::<String>();
         let affilication = if year.parse::<u8>().is_ok() {
             // /etc/libvirt/qemu/e19/e195729
@@ -117,7 +117,7 @@
             xml_path,
             vnc_password: pw,
             debug_tcp_port: self.debug_tcp_port,
-            backing_file: self.backing_file.clone(),
+            backing_file: self.backing_file,
         }
     }
 }