implem_command #9

Merged
statzitz merged 13 commits from implem_command into main 2024-04-18 01:30:48 +02:00
2 changed files with 41 additions and 6 deletions
Showing only changes of commit 7fe2443144 - Show all commits

View file

@ -26,11 +26,29 @@ pub fn sent_signal( svwait_var: i32, verbose: i8, command: &str, mut sv: status_
"p" => {
// case where it's the pause command which is entered.
return misc::pause_verbose(sv.sent_signal(b"p"), true, verbose, svwait_var, sv);
}
},
"c" => {
// case where it's the continue command which is entered.
return misc::pause_verbose(sv.sent_signal(b"c"), false, verbose, svwait_var, sv);
}
},
"h" => {
return misc::noexcept_verbose(sv.sent_signal(b"h"), verbose, sv);
},
"a" => {
return misc::noexcept_verbose(sv.sent_signal(b"a"), verbose, sv);
},
"i" => {
return misc::noexcept_verbose(sv.sent_signal(b"i"), verbose, sv);
},
"q" => {
return misc::noexcept_verbose(sv.sent_signal(b"q"), verbose, sv);
},
"1" => {
return misc::noexcept_verbose(sv.sent_signal(b"1"), verbose, sv);
},
"2" => {
return misc::noexcept_verbose(sv.sent_signal(b"1"), verbose, sv);
},
other => {
println!("Error, command {} not implemented.", other); // TODO : Put the real error
// message.

View file

@ -25,8 +25,8 @@ pub fn print_status(mut sv: status_obj::StatusObj) -> i32 {
pub fn run_verbose(sent_signal: bool, expected: bool, verbose: i8, svwait_var: i32, mut sv: status_obj::StatusObj) -> i32 {
// if the state is true, wait for the service to run.
// If the state is false, wait for the service to down.
// if the excepted is true, wait for the service to run.
// If the excepted is false, wait for the service to down.
if sent_signal && verbose == 1 {
let mut time_wait = 0;
loop {
@ -54,8 +54,8 @@ pub fn run_verbose(sent_signal: bool, expected: bool, verbose: i8, svwait_var: i
}
pub fn pause_verbose(sent_signal: bool, expected: bool, verbose: i8, svwait_var: i32, mut sv: status_obj::StatusObj) -> i32 {
// if the state is true, wait for the service to pause.
// if the state is false, wait for the service to continue.
// if the excepted is true, wait for the service to pause.
// if the excepted is false, wait for the service to continue.
if sent_signal && verbose == 1 {
let mut time_wait = 0;
loop {
@ -81,3 +81,20 @@ pub fn pause_verbose(sent_signal: bool, expected: bool, verbose: i8, svwait_var:
return 1
}
}
pub fn noexcept_verbose(sent_signal: bool, verbose: i8, mut sv: status_obj::StatusObj) -> i32 {
if sent_signal && verbose == 1 {
let status = sv.update_status();
if status == 1 {
return 1;
}
println!("ok: {}", sv.get_status_string());
return 0
} else if sent_signal && verbose == 0 {
return 0
} else {
// Case sent_signal != true.
return 1
}
}