Skip to main content

Storage

Struct Storage 

Source
pub struct Storage {
Show 26 fields pub base: Resource, pub links: Option<Links>, pub actions: Option<Actions>, pub status: Option<Status>, pub identifiers: Option<Vec<Identifier>>, pub hotspare_activation_policy: Option<Option<HotspareActivationPolicy>>, pub encryption_mode: Option<Option<EncryptionMode>>, pub local_encryption_key_identifier: Option<Option<String>>, pub auto_volume_create: Option<Option<AutoVolumeCreate>>, pub nvme_subsystem_properties: Option<Option<NvmeSubsystemProperties>>, pub configuration_lock: Option<Option<ConfigurationLock>>, pub target_configuration_lock_level: Option<Option<TargetConfigurationLockLevel>>, pub block_security_id_policy: Option<Option<Boolean>>, pub mpf: Option<Option<Mpf>>, pub storage_controllers: Option<Vec<ReferenceLeaf>>, pub drives: Option<Vec<NavProperty<Drive>>>, pub volumes: Option<NavProperty<VolumeCollection>>, pub redundancy: Option<Vec<ReferenceLeaf>>, pub file_systems: Option<ReferenceLeaf>, pub storage_pools: Option<ReferenceLeaf>, pub storage_groups: Option<ReferenceLeaf>, pub endpoint_groups: Option<ReferenceLeaf>, pub consistency_groups: Option<ReferenceLeaf>, pub controllers: Option<ReferenceLeaf>, pub connections: Option<ReferenceLeaf>, pub metrics: Option<ReferenceLeaf>,
}
Expand description

The Storage schema defines a storage subsystem and its respective properties. A storage subsystem represents a set of physical or virtual storage controllers and the resources, such as volumes, that can be accessed from that subsystem.

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

Fields§

§base: Resource

Base type

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

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

§identifiers: Option<Vec<Identifier>>

The durable names for the storage subsystem.

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

§hotspare_activation_policy: Option<Option<HotspareActivationPolicy>>

The policy under which hot spare drives in this storage domain will activate.

This property shall contain the policy under which all drives operating as hot spares in this storage domain will activate.

§encryption_mode: Option<Option<EncryptionMode>>

The encryption mode of this storage subsystem.

This property shall contain the encryption mode of this storage subsystem.

§local_encryption_key_identifier: Option<Option<String>>

The local encryption key identifier used by the storage subsystem.

This property shall contain the local encryption key identifier used by the storage subsystem when EncryptionMode contains UseLocalKey.

§auto_volume_create: Option<Option<AutoVolumeCreate>>

Indicates if this storage subsystem automatically creates new volumes for unassigned drives.

This property shall indicate if volumes are created automatically for each unassigned drive attached to this storage subsystem.

§nvme_subsystem_properties: Option<Option<NvmeSubsystemProperties>>

Information specific to NVMe subsystems.

This property shall contain information specific to NVMe subsystems. This property shall only be present if this resource represents an NVMe subsystem.

§configuration_lock: Option<Option<ConfigurationLock>>

Indicates whether in-band configuration requests to the storage subsystem are locked. Other properties, such as ConfigurationLockState, contain additional information regarding the status of the configuration lock.

This property shall indicate whether configuration requests to the storage subsystem are locked. Services shall reject modification requests that contain the value Partial. Modifying the value of this property may affect the ConfigurationLock property in Drive resources referenced by the Drives property.

§target_configuration_lock_level: Option<Option<TargetConfigurationLockLevel>>

Indicates the target configuration lock level for the drive based upon the state of the ConfigurationLock property. Other properties, such as ConfigurationLockState, contain additional information regarding the status of the configuration lock.

This property shall contain the target configuration lock level for the drive. For NVMe subsystems, services shall implement the locking requirements specified by SNIA’s Swordfish NVMe Model Overview and Mapping Guide.

§block_security_id_policy: Option<Option<Boolean>>

Indicates if the storage controller sends a command to block establishment of a TCG-defined security ID (SID) during each drive boot sequence for drives that support it.

This property shall indicate if the storage controller sends the TCG-defined ‘Block SID’ command to block establishment of a TCG-defined security ID (SID) during each drive boot sequence for drives that support it. The value true shall indicate the TCG-defined ‘Block SID’ command is sent to supporting drives during each drive boot sequence.

§mpf: Option<Option<Mpf>>

The multiple physical function-related properties for storage controllers in this storage subsystem.

This property shall contain multiple physical function-related properties for storage controllers in this storage subsystem. This property should only be present if the storage subsystem supports the use of multiple physical functions to parallelize data transfer.

§storage_controllers: Option<Vec<ReferenceLeaf>>§drives: Option<Vec<NavProperty<Drive>>>

The set of drives attached to the storage controllers that this resource represents.

This property shall contain a set of the drives attached to the storage controllers that this resource represents.

§volumes: Option<NavProperty<VolumeCollection>>

The set of volumes that the storage controllers produce.

This property shall contain a link to a resource collection of type VolumeCollection.

§redundancy: Option<Vec<ReferenceLeaf>>§file_systems: Option<ReferenceLeaf>§storage_pools: Option<ReferenceLeaf>§storage_groups: Option<ReferenceLeaf>§endpoint_groups: Option<ReferenceLeaf>§consistency_groups: Option<ReferenceLeaf>§controllers: Option<ReferenceLeaf>§connections: Option<ReferenceLeaf>§metrics: Option<ReferenceLeaf>

Trait Implementations§

Source§

impl Debug for Storage

Source§

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

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

impl<'de> Deserialize<'de> for Storage

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 Storage

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 Storage

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<Storage> for Storage

Source§

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

Reference to the enity type object.
Source§

impl Updatable<StorageUpdate> for Storage

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