Skip to main content

StorageController

Struct StorageController 

Source
pub struct StorageController {
Show 29 fields pub base: Resource, pub status: Option<Status>, pub speed_gbps: Option<Option<Decimal>>, pub firmware_version: Option<Option<String>>, pub manufacturer: Option<Option<String>>, pub model: Option<Option<String>>, pub sku: Option<Option<String>>, pub serial_number: Option<Option<String>>, pub part_number: Option<Option<String>>, pub asset_tag: Option<Option<String>>, pub supported_controller_protocols: Option<Vec<Protocol>>, pub supported_device_protocols: Option<Vec<Protocol>>, pub identifiers: Option<Vec<Identifier>>, pub location: Option<Location>, pub cache_summary: Option<CacheSummary>, pub pcie_interface: Option<PcieInterface>, pub supported_raid_types: Option<Option<Vec<RaidType>>>, pub controller_rates: Option<Rates>, pub nvme_controller_properties: Option<NvmeControllerProperties>, pub links: Option<Links>, pub actions: Option<Actions>, pub measurements: Option<Vec<MeasurementBlock>>, pub is_logical: Option<Option<Boolean>>, pub mpf_properties: Option<Option<MpfProperties>>, pub assembly: Option<NavProperty<Assembly>>, pub ports: Option<ReferenceLeaf>, pub certificates: Option<ReferenceLeaf>, pub environment_metrics: Option<NavProperty<EnvironmentMetrics>>, pub metrics: Option<NavProperty<StorageControllerMetrics>>,
}
Expand description

The StorageController schema describes a storage controller and its properties. A storage controller represents a physical or virtual storage device that produces volumes.

This resource shall represent a storage controller in the Redfish Specification.

Fields§

§base: Resource

Base type

§status: Option<Status>

The status and health of the resource and its subordinate or dependent resources.

This property shall contain any status or health properties of the resource.

§speed_gbps: Option<Option<Decimal>>

The maximum speed of the storage controller’s device interface.

This property shall represent the maximum supported speed of the storage bus interface, in Gbit/s. The specified interface connects the controller to the storage devices, not the controller to a host. For example, SAS bus not PCIe host bus.

§firmware_version: Option<Option<String>>

The firmware version of this storage controller.

This property shall contain the firmware version as defined by the manufacturer for the associated storage controller.

§manufacturer: Option<Option<String>>

The manufacturer of this storage controller.

This property shall contain the name of the organization responsible for producing the storage controller. This organization may be the entity from which the storage controller is purchased, but this is not necessarily true.

§model: Option<Option<String>>

The model number for the storage controller.

This property shall contain the name by which the manufacturer generally refers to the storage controller.

§sku: Option<Option<String>>

The SKU for this storage controller.

This property shall contain the stock-keeping unit number for this storage controller.

§serial_number: Option<Option<String>>

The serial number for this storage controller.

This property shall contain a manufacturer-allocated number that identifies the storage controller.

§part_number: Option<Option<String>>

The part number for this storage controller.

This property shall contain a part number assigned by the organization that is responsible for producing or manufacturing the storage controller.

§asset_tag: Option<Option<String>>

The user-assigned asset tag for this storage controller.

This property shall track the storage controller for inventory purposes.

§supported_controller_protocols: Option<Vec<Protocol>>

The supported set of protocols for communicating with this storage controller.

This property shall contain the supported set of protocols for communicating with this storage controller.

§supported_device_protocols: Option<Vec<Protocol>>

The protocols that the storage controller can use to communicate with attached devices.

This property shall contain the set of protocols this storage controller can use to communicate with attached devices.

§identifiers: Option<Vec<Identifier>>

The durable names for the storage controller.

This property shall contain a list of all known durable names for the associated storage controller.

§location: Option<Location>

The location of the storage controller.

This property shall contain the location information of the associated storage controller.

§cache_summary: Option<CacheSummary>

The cache memory of the storage controller in general detail.

This property shall contain properties that describe the cache memory for this resource.

§pcie_interface: Option<PcieInterface>

The PCIe interface details for this controller.

This property shall contain details on the PCIe interface that connects this PCIe-based controller to its host.

§supported_raid_types: Option<Option<Vec<RaidType>>>

The set of RAID types supported by the storage controller.

This property shall contain an array of all the RAID types supported by this controller.

§controller_rates: Option<Rates>

This property describes the various controller rates used for processes such as volume rebuild or consistency checks.

This object shall contain all the rate settings available on the controller.

§nvme_controller_properties: Option<NvmeControllerProperties>

The NVMe-related properties for this storage controller.

This property shall contain NVMe-related properties for this storage controller.

§links: Option<Links>

The links to other resources that are related to this resource.

This property shall contain links to resources that are related to but are not contained by, or subordinate to, this resource.

§actions: Option<Actions>

The available actions for this resource.

This property shall contain the available actions for this resource.

§measurements: Option<Vec<MeasurementBlock>>

An array of DSP0274-defined measurement blocks.

This property shall contain an array of DSP0274-defined measurement blocks.

§is_logical: Option<Option<Boolean>>

Indicates whether this is a logical storage controller.

This property shall indicate whether this is a logical storage controller.

§mpf_properties: Option<Option<MpfProperties>>

The physical function-related properties for this storage controller within a multiple physical function storage controller.

This property shall contain the physical function-related properties for this storage controller within a multiple physical function storage controller. This property should only be present if IsLogical contains true.

§assembly: Option<NavProperty<Assembly>>

The link to the assembly associated with this storage controller.

This property shall contain a link to a resource of type Assembly.

§ports: Option<ReferenceLeaf>§certificates: Option<ReferenceLeaf>§environment_metrics: Option<NavProperty<EnvironmentMetrics>>

The link to the environment metrics for this storage controller.

This property shall contain a link to a resource of type EnvironmentMetrics that represents the environment metrics for this storage controller.

§metrics: Option<NavProperty<StorageControllerMetrics>>

The link to the metrics associated with this storage controller.

This property shall contain a link to the metrics associated with this storage controller.

Trait Implementations§

Source§

impl Debug for StorageController

Source§

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

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

impl<'de> Deserialize<'de> for StorageController

Source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
Source§

impl EntityTypeRef for StorageController

Source§

fn odata_id(&self) -> &ODataId

Value of @odata.id field of the Entity.
Source§

fn etag(&self) -> Option<&ODataETag>

Value of @odata.etag field of the Entity.
Source§

fn refresh<B>( &self, bmc: &B, ) -> impl Future<Output = Result<Arc<Self>, <B as Bmc>::Error>> + Send
where B: Bmc, Self: Sized + Sync + Send + 'static + for<'de> Deserialize<'de>,

Refresh the entity by fetching it again from the BMC.
Source§

impl Expandable for StorageController

Source§

fn expand<B>( &self, bmc: &B, query: ExpandQuery, ) -> impl Future<Output = Result<Arc<Self>, <B as Bmc>::Error>> + Send
where B: Bmc,

Expand the entity according to the provided query.
Source§

impl RedfishSettings<StorageController> for StorageController

Source§

fn settings_object(&self) -> Option<NavProperty<Self>>

Reference to the enity type object.
Source§

impl Updatable<StorageControllerUpdate> for StorageController

Source§

fn update<B>( &self, bmc: &B, update: &V, ) -> impl Future<Output = Result<ModificationResponse<Self>, <B as Bmc>::Error>> + Send
where B: Bmc,

Update an entity using update as payload.

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> 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> PolicyExt for T
where T: ?Sized,

Source§

fn and<P, B, E>(self, other: P) -> And<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow only if self and other return Action::Follow. Read more
Source§

fn or<P, B, E>(self, other: P) -> Or<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow if either self or other returns Action::Follow. 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
Source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,