chore: add policy and rol + checkinfo out formats
This commit is contained in:
parent
d813292382
commit
5f7860c748
@ -2,7 +2,8 @@
|
|||||||
// Copyright 2021, Jesús Pérez Lorenzo
|
// Copyright 2021, Jesús Pérez Lorenzo
|
||||||
//
|
//
|
||||||
use std::collections::HashMap;
|
use std::collections::HashMap;
|
||||||
use serde::Deserialize;
|
use serde::{Serialize,Deserialize};
|
||||||
|
use std::fmt;
|
||||||
|
|
||||||
use crate::{
|
use crate::{
|
||||||
config::{Config,WebServer},
|
config::{Config,WebServer},
|
||||||
@ -92,3 +93,115 @@ impl AppEnv {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[derive(Eq, PartialEq, Copy, Clone, Debug, Serialize, Deserialize)]
|
||||||
|
#[allow(non_camel_case_types)]
|
||||||
|
pub enum Language {
|
||||||
|
none,
|
||||||
|
en,
|
||||||
|
es,
|
||||||
|
}
|
||||||
|
impl Language {
|
||||||
|
pub fn set_provider(lang: String) -> Language {
|
||||||
|
match lang.as_str() {
|
||||||
|
"none" => Language::none,
|
||||||
|
"en" => Language::en,
|
||||||
|
"es" => Language::es,
|
||||||
|
_ => Language::none,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
impl Default for Language {
|
||||||
|
fn default() -> Self {
|
||||||
|
Language::none
|
||||||
|
}
|
||||||
|
}
|
||||||
|
impl fmt::Display for Language {
|
||||||
|
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
|
||||||
|
match self {
|
||||||
|
Language::none => write!(f,"none"),
|
||||||
|
Language::en => write!(f,"en"),
|
||||||
|
Language::es => write!(f,"es"),
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#[derive(Eq, PartialEq, Copy, Clone, Debug, Serialize, Deserialize)]
|
||||||
|
#[allow(non_camel_case_types)]
|
||||||
|
pub enum Policy {
|
||||||
|
notset,
|
||||||
|
allow,
|
||||||
|
deny,
|
||||||
|
temporal,
|
||||||
|
ondemand,
|
||||||
|
}
|
||||||
|
impl Policy {
|
||||||
|
pub fn set_provider(lang: String) -> Policy {
|
||||||
|
match lang.as_str() {
|
||||||
|
"notset" => Policy::notset,
|
||||||
|
"allow" => Policy::allow,
|
||||||
|
"deny" => Policy::deny,
|
||||||
|
"temporal" => Policy::temporal,
|
||||||
|
"ondemand" => Policy::ondemand,
|
||||||
|
_ => Policy::notset,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
impl Default for Policy {
|
||||||
|
fn default() -> Self {
|
||||||
|
Policy::notset
|
||||||
|
}
|
||||||
|
}
|
||||||
|
impl fmt::Display for Policy {
|
||||||
|
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
|
||||||
|
match self {
|
||||||
|
Policy::notset => write!(f,"notset"),
|
||||||
|
Policy::allow => write!(f,"allow"),
|
||||||
|
Policy::deny => write!(f,"deny"),
|
||||||
|
Policy::temporal => write!(f,"temporal"),
|
||||||
|
Policy::ondemand => write!(f,"ondemand"),
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#[derive(Eq, PartialEq, Copy, Clone, Debug, Serialize, Deserialize)]
|
||||||
|
#[allow(non_camel_case_types)]
|
||||||
|
pub enum Rol {
|
||||||
|
notset,
|
||||||
|
private,
|
||||||
|
public,
|
||||||
|
user,
|
||||||
|
group,
|
||||||
|
admin,
|
||||||
|
devel,
|
||||||
|
}
|
||||||
|
impl Rol {
|
||||||
|
pub fn set_provider(lang: String) -> Rol {
|
||||||
|
match lang.as_str() {
|
||||||
|
"notset" => Rol::notset,
|
||||||
|
"pivate" => Rol::private,
|
||||||
|
"public" => Rol::public,
|
||||||
|
"user" => Rol::user,
|
||||||
|
"group" => Rol::group,
|
||||||
|
"admin" => Rol::admin,
|
||||||
|
"devel" => Rol::devel,
|
||||||
|
_ => Rol::notset,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
impl Default for Rol {
|
||||||
|
fn default() -> Self {
|
||||||
|
Rol::notset
|
||||||
|
}
|
||||||
|
}
|
||||||
|
impl fmt::Display for Rol {
|
||||||
|
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
|
||||||
|
match self {
|
||||||
|
Rol::notset => write!(f,"notset"),
|
||||||
|
Rol::private => write!(f,"private"),
|
||||||
|
Rol::public => write!(f,"public"),
|
||||||
|
Rol::user => write!(f,"user"),
|
||||||
|
Rol::group => write!(f,"group"),
|
||||||
|
Rol::admin => write!(f,"admin"),
|
||||||
|
Rol::devel => write!(f,"devel"),
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -84,19 +84,19 @@ impl WebServer {
|
|||||||
|
|
||||||
#[derive(Eq, PartialEq, Clone, Serialize, Debug, Deserialize)]
|
#[derive(Eq, PartialEq, Clone, Serialize, Debug, Deserialize)]
|
||||||
pub enum SchedTaskStore {
|
pub enum SchedTaskStore {
|
||||||
None,
|
Notset,
|
||||||
File(String),
|
File(String),
|
||||||
Acid(String),
|
Acid(String),
|
||||||
}
|
}
|
||||||
impl Default for SchedTaskStore {
|
impl Default for SchedTaskStore {
|
||||||
fn default() -> Self {
|
fn default() -> Self {
|
||||||
SchedTaskStore::None
|
SchedTaskStore::Notset
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
impl fmt::Display for SchedTaskStore {
|
impl fmt::Display for SchedTaskStore {
|
||||||
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
|
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
|
||||||
match self {
|
match self {
|
||||||
SchedTaskStore::None => write!(f,"none"),
|
SchedTaskStore::Notset => write!(f,"notset"),
|
||||||
SchedTaskStore::File(p) => write!(f,"file: {}",p),
|
SchedTaskStore::File(p) => write!(f,"file: {}",p),
|
||||||
SchedTaskStore::Acid(p) => write!(f,"acid: {}",p),
|
SchedTaskStore::Acid(p) => write!(f,"acid: {}",p),
|
||||||
}
|
}
|
||||||
@ -107,7 +107,7 @@ impl fmt::Display for SchedTaskStore {
|
|||||||
impl SchedTaskStore {
|
impl SchedTaskStore {
|
||||||
pub fn get_value(&self) -> String {
|
pub fn get_value(&self) -> String {
|
||||||
match self {
|
match self {
|
||||||
SchedTaskStore::None => format!(""),
|
SchedTaskStore::Notset => format!(""),
|
||||||
SchedTaskStore::File(p) => format!("{}",p),
|
SchedTaskStore::File(p) => format!("{}",p),
|
||||||
SchedTaskStore::Acid(p) => format!("{}",p),
|
SchedTaskStore::Acid(p) => format!("{}",p),
|
||||||
}
|
}
|
||||||
@ -122,10 +122,10 @@ where D: Deserializer<'de> {
|
|||||||
Ok(match v[0] {
|
Ok(match v[0] {
|
||||||
"File" => SchedTaskStore::File(v[1].to_owned()),
|
"File" => SchedTaskStore::File(v[1].to_owned()),
|
||||||
"Acid" => SchedTaskStore::Acid(v[1].to_owned()),
|
"Acid" => SchedTaskStore::Acid(v[1].to_owned()),
|
||||||
_ => SchedTaskStore::None
|
_ => SchedTaskStore::Notset
|
||||||
})
|
})
|
||||||
} else {
|
} else {
|
||||||
Ok(SchedTaskStore::None)
|
Ok(SchedTaskStore::Notset)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user