Author

Struct Author 

Source
pub struct Author { /* private fields */ }
Expand description

The author or creator of the message.

The base author will contain the hostname of the OS that sent to message. This helps identify which machine the message came from. If this is not available then ‘?’ will be used.

A good author should allow the user to quickly and easily identify where the message originates from. To make a good author, think, could you quickly and easily stop the source of the messages just based on the author?

Filtering should not be performed based on an Author, rather you should filter instead based on Level and Component

Implementations§

Source§

impl Author

Source

pub fn parse(parts: String) -> Author

Parses an Author from the given string.

// A good Author for a message originating from the db_checker program
// which is invoked by user's crontab.
use rnotifylib::message::author::Author;

let author = Author::parse("user/cron/db_checker".to_owned());
Source

pub fn base() -> Author

Provides the base Author, of either the hostname. If the hostname cannot be found, uses base_incognito

Source

pub fn base_incognito() -> Author

Creates an Author with an unknown hostname. You should use base whenever possible, but if you do not want to expose the hostname of the sender, you can use this method.

Source

pub fn parse_incognito(s: String) -> Author

Parses an author, using an unknown hostname You should use parse whenever possible, but if you do not want to expose the hostname of the sender, you can use this method.

Source

pub fn extend(&mut self, parts: String)

Adds more information to the author of this

use rnotifylib::message::author::Author;

// Normally you should use Author::base(), but we want predictable output for this test.
let mut author = Author::base_incognito();
author.extend("user".to_owned());
author.extend("cron".to_owned());
author.extend("db_checker".to_owned());

assert_eq!(author.to_string(), "?/user/cron/db_checker");

Trait Implementations§

Source§

impl Clone for Author

Source§

fn clone(&self) -> Author

Returns a duplicate 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 Author

Source§

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

Formats the value using the given formatter. Read more
Source§

impl Display for Author

Source§

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

Formats the value using the given formatter. Read more
Source§

impl PartialEq for Author

Source§

fn eq(&self, other: &Author) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl StructuralPartialEq for Author

Auto Trait Implementations§

§

impl Freeze for Author

§

impl RefUnwindSafe for Author

§

impl Send for Author

§

impl Sync for Author

§

impl Unpin for Author

§

impl UnwindSafe for Author

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> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
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> ToString for T
where T: Display + ?Sized,

Source§

fn to_string(&self) -> String

Converts the given value to a String. 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.
Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more