pub struct Snapshot {
pub size_bytes: i64,
pub snapshot_id: String,
pub source_volume_id: String,
pub creation_time: Option<Timestamp>,
pub ready_to_use: bool,
}Expand description
Information about a specific snapshot.
Fields§
§size_bytes: i64This is the complete size of the snapshot in bytes. The purpose of this field is to give CO guidance on how much space is needed to create a volume from this snapshot. The size of the volume MUST NOT be less than the size of the source snapshot. This field is OPTIONAL. If this field is not set, it indicates that this size is unknown. The value of this field MUST NOT be negative and a size of zero means it is unspecified.
snapshot_id: StringThe identifier for this snapshot, generated by the plugin. This field is REQUIRED. This field MUST contain enough information to uniquely identify this specific snapshot vs all other snapshots supported by this plugin. This field SHALL be used by the CO in subsequent calls to refer to this snapshot. The SP is NOT responsible for global uniqueness of snapshot_id across multiple SPs.
source_volume_id: StringIdentity information for the source volume. Note that creating a snapshot from a snapshot is not supported here so the source has to be a volume. This field is REQUIRED.
creation_time: Option<Timestamp>Timestamp when the point-in-time snapshot is taken on the storage system. This field is REQUIRED.
ready_to_use: boolIndicates if a snapshot is ready to use as a
volume_content_source in a CreateVolumeRequest. The default
value is false. This field is REQUIRED.
Trait Implementations§
Source§impl Message for Snapshot
impl Message for Snapshot
Source§fn encoded_len(&self) -> usize
fn encoded_len(&self) -> usize
Source§fn encode<B>(&self, buf: &mut B) -> Result<(), EncodeError>
fn encode<B>(&self, buf: &mut B) -> Result<(), EncodeError>
Source§fn encode_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
fn encode_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
Source§fn encode_length_delimited<B>(&self, buf: &mut B) -> Result<(), EncodeError>
fn encode_length_delimited<B>(&self, buf: &mut B) -> Result<(), EncodeError>
Source§fn encode_length_delimited_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
fn encode_length_delimited_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
Source§fn decode<B>(buf: B) -> Result<Self, DecodeError>
fn decode<B>(buf: B) -> Result<Self, DecodeError>
Source§fn decode_length_delimited<B>(buf: B) -> Result<Self, DecodeError>
fn decode_length_delimited<B>(buf: B) -> Result<Self, DecodeError>
Source§fn merge<B>(&mut self, buf: B) -> Result<(), DecodeError>
fn merge<B>(&mut self, buf: B) -> Result<(), DecodeError>
self. Read moreSource§fn merge_length_delimited<B>(&mut self, buf: B) -> Result<(), DecodeError>
fn merge_length_delimited<B>(&mut self, buf: B) -> Result<(), DecodeError>
self.impl StructuralPartialEq for Snapshot
Auto Trait Implementations§
impl Freeze for Snapshot
impl RefUnwindSafe for Snapshot
impl Send for Snapshot
impl Sync for Snapshot
impl Unpin for Snapshot
impl UnwindSafe for Snapshot
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T in a tonic::Request