[][src]Struct kubos_service::Config

pub struct Config { /* fields omitted */ }

KubOS config used by either Apps or Services. KubOS config files use the TOML format, and can may contain multiple named Categories. Typically each category corresponds to an App or Service name. This allows one config file to store configuration for multiple Apps / Services at a time.

Example KubOS config files for a Service called my-service with an IP/port binding

[my-service]
my-property = "value"

[my-service.addr]
ip = 0.0.0.0
port = 8181

Methods

impl Config[src]

pub fn new(name: &str) -> Result<Config, Error>[src]

Creates and parses configuration data from the system configuration file or the path passed as the '-c' or '--config' option to this executable.

Arguments

name - Category name used as a key in the config file

pub fn new_from_path(name: &str, path: String) -> Result<Config, Error>[src]

Creates and parses configuration data from the passed in configuration path.

Arguments

name - Category name used as a key in the config file path - Path to configuration file

pub fn new_from_str(name: &str, config: &str) -> Result<Config, Error>[src]

Creates and parses configuration data from the passed in configuration string.

Arguments

name - Category name used as a key in the config config - Config data as a string

pub fn hosturl(&self) -> Option<String>[src]

Returns the configured hosturl string in the following format (using IPv4 addresses) - 0.0.0.0:0000

pub fn raw(&self) -> Value[src]

Returns the category's configuration information in the toml::Value format. This will contain the ip/port if provided, along with any other configuration information found in the config file.

Examples

use kubos_system::Config;

let config = Config::new("example-service").unwrap();
let raw = config.raw();
let bus = raw["bus"].as_str();

pub fn get(&self, key: &str) -> Option<Value>[src]

Performs a get on the raw config data

Arguments

key - Key of value to get from config

Trait Implementations

impl Debug for Config[src]

impl Clone for Config[src]

fn clone_from(&mut self, source: &Self)1.0.0[src]

Performs copy-assignment from source. Read more

impl Default for Config[src]

Auto Trait Implementations

impl Send for Config

impl Sync for Config

Blanket Implementations

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Erased for T

impl<T> Same<T> for T

type Output = T

Should always be Self