ModificationResponse

Struct ModificationResponse 

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

A container for multiple modification requests towards the milter client.

use miltr_common::modifications::{ModificationResponse, headers::AddHeader};

let mut builder = ModificationResponse::builder();
builder.push(AddHeader::new(
     "Test Add Header".as_bytes(),
     "Add Header Value".as_bytes(),
  ));
let response = builder.contin();

§Note on Capabilities

While all ModificationAction can be pushed into this response, they might not all be sent. During option negotiation, client and server agree on supported Capability.

Implementations§

Source§

impl ModificationResponse

Source

pub fn builder() -> ModificationResponseBuilder

Create a builder to assemble a modification response.

Source

pub fn empty_continue() -> Self

Create an empty ModificationResponse just to continue

Source

pub fn filter_mods_by_caps(&mut self, capabilities: Capability)

Filter modification actions in self, keep only those which have been allowed by the specified capabilities.

Source

pub fn modifications(&self) -> &[ModificationAction]

Get the received modification actions

Source

pub fn final_action(&self) -> &Action

Get the final action to be done to the mail

Trait Implementations§

Source§

impl Debug for ModificationResponse

Source§

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

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

impl From<ModificationResponse> for Vec<ServerMessage>

Source§

fn from(value: ModificationResponse) -> Self

Converts to this type from the input type.

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> 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, 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.