Vtl2LunBuilder

Struct Vtl2LunBuilder 

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

A builder for a VTL2 LUN, which is a storage device presented from VTL2 to the guest.

A LUN can be one of two flavors: a disk or a DVD (really a virtual optical device, since it’s a CD-ROM when presented over IDE). A DVD can be empty (backed by no physical devices) or it can be backed by one or more physical devices. A disk must be backed by one or more physical devices. (This is not checked, since there may be interesting test cases that need to violate these requirements.)

Implementations§

Source§

impl Vtl2LunBuilder

Source

pub fn disk() -> Self

Creates a new disk LUN builder with default values. Here “disk” is as opposed to NOT a DVD.

Source

pub fn dvd() -> Self

Creates a new dvd LUN builder with default values. Here “dvd” is as opposed to NOT a disk.

Source

pub fn with_location(self, location: u32) -> Self

Guest visible location of the device (aka a guest “LUN”)

Source

pub fn with_physical_devices( self, physical_devices: Vec<Vtl2StorageBackingDeviceBuilder>, ) -> Self

The physical devices backing the LUN.

Overwrites any current physical backing device configuration (one or many).

Source

pub fn with_physical_device( self, physical_device: Vtl2StorageBackingDeviceBuilder, ) -> Self

The single physical device backing the LUN.

Overwrites any current physical backing device configuration (one or many).

Source

pub fn with_chunk_size_in_kb(self, chunk_size_in_kb: u32) -> Self

For striped devices, the size of the stripe chunk in KB.

Source

pub fn build(self) -> Lun

Builds the LUN into the protobuf type used by VTL2 settings.

Trait Implementations§

Source§

impl Debug for Vtl2LunBuilder

Source§

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

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

impl PartialEq for Vtl2LunBuilder

Source§

fn eq(&self, other: &Vtl2LunBuilder) -> 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 Eq for Vtl2LunBuilder

Source§

impl StructuralPartialEq for Vtl2LunBuilder

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
§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T> Instrument for T

§

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

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

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

impl<T> WithSubscriber for T

§

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
§

fn with_current_subscriber(self) -> WithDispatch<Self>

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