Skip to main content

VasaProviderInfo

Struct VasaProviderInfo 

Source
pub struct VasaProviderInfo {
Show 24 fields pub sms_provider_info_: SmsProviderInfo, pub url: String, pub certificate: Option<String>, pub status: Option<String>, pub status_fault: Option<MethodFault>, pub vasa_version: Option<String>, pub namespace: Option<String>, pub last_sync_time: Option<String>, pub supported_vendor_model_mapping: Option<Vec<SupportedVendorModelMapping>>, pub supported_profile: Option<Vec<String>>, pub supported_provider_profile: Option<Vec<String>>, pub related_storage_array: Option<Vec<RelatedStorageArray>>, pub provider_id: Option<String>, pub certificate_expiry_date: Option<String>, pub certificate_status: Option<String>, pub service_location: Option<String>, pub needs_explicit_activation: Option<bool>, pub max_batch_size: Option<i64>, pub retain_vasa_provider_certificate: Option<bool>, pub array_independent_provider: Option<bool>, pub type: Option<String>, pub category: Option<String>, pub priority: Option<i32>, pub failover_group_id: Option<String>,
}
Expand description

Information about VASA (vStorage APIs for Storage Awareness) providers.

This structure may be used only with operations rendered under /sms.

§How to access

  • SmsProvider::query_provider_info()→VasaProviderInfo
  • VasaProvider::query_provider_info()→VasaProviderInfo
  • SmsStorageManager::query_storage_container().provider_info?[*]→VasaProviderInfo

Fields§

§sms_provider_info_: SmsProviderInfo§url: String

Provider URL

§certificate: Option<String>

Provider certificate

§status: Option<String>

The operational state of VASA Provider.

§status_fault: Option<MethodFault>

A fault that describes the cause of the current operational status.

§vasa_version: Option<String>

Supported VASA(vStorage APIs for Storage Awareness) version

§namespace: Option<String>

Namespace to categorize storage capabilities provided by arrays managed by the provider

§last_sync_time: Option<String>

Time stamp to indicate when last sync operation was completed successfully.

§supported_vendor_model_mapping: Option<Vec<SupportedVendorModelMapping>>

List containing mapping between the supported vendorID and corresponding modelID

§supported_profile: Option<Vec<String>>

Deprecated as of SMS API 3.0, use StorageArray.supportedProfile.

List of supported profiles

§supported_provider_profile: Option<Vec<String>>

List of supported profiles at provider level.

Must be one of the string values from ProviderProfile_enum.

§related_storage_array: Option<Vec<RelatedStorageArray>>

List containing mapping between storage arrays reported by the provider and information such as whether the provider is considered active for them.

§provider_id: Option<String>

Provider identifier reported by the provider which is unique within the provider namespace.

§certificate_expiry_date: Option<String>

Provider certificate expiry date.

§certificate_status: Option<String>

Provider certificate status This field holds values from VasaProviderCertificateStatus_enum

§service_location: Option<String>

Service location for the VASA endpoint that SMS is using to communicate with the provider.

§needs_explicit_activation: Option<bool>

Indicates the type of deployment supported by the provider.

If true, it is an active/passive deployment and the provider needs to be activated explicitly using activateProviderEx() VASA API. If false, it is an active/active deployment and provider does not need any explicit activation to respond to VASA calls.

§max_batch_size: Option<i64>

Maximum number of elements in batch APIs that the VASA Provider can support.

This value is common to all batch APIs supported by the provider. However, for each specific API, the provider may still throw or return TooMany fault in which a different value of maxBatchSize can be specified. If the value is not specified (zero) or invalid (negative), client will assume there’s no common limit for the number of elements that can be handled in all batch APIs.

§retain_vasa_provider_certificate: Option<bool>

Indicate whether the provider wants to retain its certificate after bootstrapping.

If true, SMS will not provision a VMCA signed certificate for the provider and all certificate life cycle management workflows are disabled for this provider certificate. If false, SMS will provision a VMCA signed certificate for the provider and all certificate life cycle management workflows are enabled for this provider certificate.

§array_independent_provider: Option<bool>

Indicates if this provider is independent of arrays.

Default value for this flag is false, which means this provider supports arrays. Arrays will be queried for this provider during sync. If this flag is set to true, arrays will not be synced for this provider and array related API will not be invoked on this provider.

§type: Option<String>

Type of this VASA provider.

This field will be equal to one of the values of VpType_enum.

§category: Option<String>

This field indicates the category of the provider and will be equal to one of the values of VpCategory_enum.

§priority: Option<i32>

Priority level of the provider within a VASA HA group.

For a stand-alone provider which does not participate in VASA HA, this field will be ignored.

The priority value is an integer with valid range from 0 to 255.

§failover_group_id: Option<String>

Unique identifier of a VASA HA group.

Providers should report this identifier to utilize HA feature supported by vSphere. Different providers reporting the same failoverGroupId will be treated as an HA group. Failover/failback will be done within one group.

Trait Implementations§

Source§

impl Debug for VasaProviderInfo

Source§

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

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

impl Deref for VasaProviderInfo

Source§

type Target = SmsProviderInfo

The resulting type after dereferencing.
Source§

fn deref(&self) -> &Self::Target

Dereferences the value.
Source§

impl DerefMut for VasaProviderInfo

Source§

fn deref_mut(&mut self) -> &mut Self::Target

Mutably dereferences the value.
Source§

impl Deserialize for VasaProviderInfo

Source§

fn begin(out: &mut Option<Self>) -> &mut dyn Visitor

The only correct implementation of this method is: Read more
Source§

impl Serialize for VasaProviderInfo

Source§

fn begin(&self) -> Fragment<'_>

Source§

impl SmsProviderInfoTrait for VasaProviderInfo

Source§

fn get_sms_provider_info(&self) -> &SmsProviderInfo

Get a reference to the SmsProviderInfo parent struct
Source§

fn get_sms_provider_info_mut(&mut self) -> &mut SmsProviderInfo

Get a mutable reference to the SmsProviderInfo parent struct
Source§

impl VimObjectTrait for VasaProviderInfo

Source§

impl DataObjectTrait for VasaProviderInfo

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> AsAny for T
where T: 'static,

Source§

fn as_any_ref<'a>(&'a self) -> &'a (dyn Any + 'static)

Cast a reference to Any trait.

Source§

fn as_any_box(self: Box<T>) -> Box<dyn Any>

Cast to a boxed reference to Any trait.

Source§

fn type_id(&self) -> TypeId

Get the underlying type identifier.
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<To, T> CastInto<To> for T
where To: CastFrom<T> + ?Sized, T: 'static + ?Sized,

Source§

fn into_ref<'a>(&'a self) -> Option<&'a To>

Casts a reference to a trait object. If the cast fails, std::option::Option::None is returned.
Source§

fn into_box(self: Box<T>) -> Result<Box<To>, Box<dyn Any>>

Casts a boxed trait object to another trait object. If the cast fails, the original boxed trait object is returned in std::result::Result::Err.
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<P, T> Receiver for P
where P: Deref<Target = T> + ?Sized, T: ?Sized,

Source§

type Target = T

🔬This is a nightly-only experimental API. (arbitrary_self_types)
The target type on which the method may be called.
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> ErasedDestructor for T
where T: 'static,