Struct ArgConfig

Source
pub struct ArgConfig {
    pub uuid: Uuid,
    pub uuid_gen: bool,
    pub db_url: String,
    pub table: String,
    pub cfg: HashMap<String, String>,
    pub token: Token,
    pub pk: Option<KeyFile>,
}
Expand description

App startup args:

  • db connection url: usually the first arg

    • or prefix with: ’–db ’ (optional, default postgres:// )
  • config table name in format: schema.table, usually the second arg.

    • or prefix with: ’–config ’ (optional, default public.{the_appname})
  • token (db pwd) script name usually the third arg (required feature ‘token’)

    • or prefix with ’–token ’
  • token live in minutes, usually the forth arg (required feature ‘token’)

    • or prefix with ’–ttl ’
  • UUID this app instance to use as a node id or config recognition. Identified as UUID formatted string.

    • or prefix with ’–uuid ’
  • (Private) Key text file name to use with RSA OR AES encryption (required feature ‘rsa’)

    • or prefix with ’–key ’

Alternative configuration:

  • file name, usually the first arg
    • or prefix with ’–file ’

File format:

  • db: OR db=
  • config: OR config=
  • token: OR token=
  • uuid: OR uuid=
  • ttl: OR ttl=
  • pk: OR pk=

params passed in cmd line override params loaded from file & env.

env: PGPASSWORD, in case of postgres db url, use to connect to the DB PASSPHRASE, in case of RSA private key required a passphrase

Fields§

§uuid: Uuid§uuid_gen: bool§db_url: String§table: String

Format: schema.talbe

§cfg: HashMap<String, String>§token: Token§pk: Option<KeyFile>

Implementations§

Source§

impl ArgConfig

Source

pub fn from_args() -> Result<ArgConfig, String>

Source

pub fn db_url(&self) -> String

append with password if $PWD present in ‘db’

Trait Implementations§

Source§

impl Clone for ArgConfig

Source§

fn clone(&self) -> ArgConfig

Returns a copy of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for ArgConfig

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.