Files
icarus_dm/src/managers/user_manager.rs
T
2024-05-12 17:36:00 -04:00

43 lines
988 B
Rust

use std::default::Default;
use serde::{Deserialize, Serialize};
use crate::models::{self, user::User};
#[derive(Debug, Deserialize, Serialize)]
pub struct UserManager {
pub user: models::user::User,
pub ica_action: models::icarus_action::IcarusAction,
}
impl Default for UserManager {
fn default() -> Self {
UserManager {
user: models::user::User::default(),
ica_action: models::icarus_action::IcarusAction::default(),
}
}
}
impl UserManager {
pub fn retrieve_user(&self) -> models::user::User {
return self.user.clone();
}
pub fn parse_user_from_actions(&mut self) {
let args = &self.ica_action.flags;
for arg in args {
let flag = &arg.flag;
if flag == "-u" {
self.user.username = String::from(&arg.value);
}
if flag == "-p" {
self.user.password = String::from(&arg.value);
}
}
}
}