#[non_exhaustive]pub struct Replication {Show 18 fields
pub name: String,
pub state: State,
pub state_details: String,
pub role: ReplicationRole,
pub replication_schedule: ReplicationSchedule,
pub mirror_state: MirrorState,
pub healthy: Option<bool>,
pub create_time: Option<Timestamp>,
pub destination_volume: String,
pub transfer_stats: Option<TransferStats>,
pub labels: HashMap<String, String>,
pub description: Option<String>,
pub destination_volume_parameters: Option<DestinationVolumeParameters>,
pub source_volume: String,
pub hybrid_peering_details: Option<HybridPeeringDetails>,
pub cluster_location: String,
pub hybrid_replication_type: HybridReplicationType,
pub hybrid_replication_user_commands: Option<UserCommands>,
/* private fields */
}Expand description
Replication is a nested resource under Volume, that describes a cross-region replication relationship between 2 volumes in different regions.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.name: StringIdentifier. The resource name of the Replication.
Format:
projects/{project_id}/locations/{location}/volumes/{volume_id}/replications/{replication_id}.
state: StateOutput only. State of the replication.
state_details: StringOutput only. State details of the replication.
role: ReplicationRoleOutput only. Indicates whether this points to source or destination.
replication_schedule: ReplicationScheduleRequired. Indicates the schedule for replication.
mirror_state: MirrorStateOutput only. Indicates the state of mirroring.
healthy: Option<bool>Output only. Condition of the relationship. Can be one of the following:
- true: The replication relationship is healthy. It has not missed the most recent scheduled transfer.
- false: The replication relationship is not healthy. It has missed the most recent scheduled transfer.
create_time: Option<Timestamp>Output only. Replication create time.
destination_volume: StringOutput only. Full name of destination volume resource. Example : “projects/{project}/locations/{location}/volumes/{volume_id}”
transfer_stats: Option<TransferStats>Output only. Replication transfer statistics.
labels: HashMap<String, String>Resource labels to represent user provided metadata.
description: Option<String>A description about this replication relationship.
destination_volume_parameters: Option<DestinationVolumeParameters>Required. Input only. Destination volume parameters
source_volume: StringOutput only. Full name of source volume resource. Example : “projects/{project}/locations/{location}/volumes/{volume_id}”
hybrid_peering_details: Option<HybridPeeringDetails>Output only. Hybrid peering details.
cluster_location: StringOptional. Location of the user cluster.
hybrid_replication_type: HybridReplicationTypeOutput only. Type of the hybrid replication.
hybrid_replication_user_commands: Option<UserCommands>Output only. Copy pastable snapmirror commands to be executed on onprem cluster by the customer.
Implementations§
Source§impl Replication
impl Replication
Sourcepub fn set_state_details<T: Into<String>>(self, v: T) -> Self
pub fn set_state_details<T: Into<String>>(self, v: T) -> Self
Sourcepub fn set_role<T: Into<ReplicationRole>>(self, v: T) -> Self
pub fn set_role<T: Into<ReplicationRole>>(self, v: T) -> Self
Sourcepub fn set_replication_schedule<T: Into<ReplicationSchedule>>(
self,
v: T,
) -> Self
pub fn set_replication_schedule<T: Into<ReplicationSchedule>>( self, v: T, ) -> Self
Sets the value of replication_schedule.
§Example
use google_cloud_netapp_v1::model::replication::ReplicationSchedule;
let x0 = Replication::new().set_replication_schedule(ReplicationSchedule::Every10Minutes);
let x1 = Replication::new().set_replication_schedule(ReplicationSchedule::Hourly);
let x2 = Replication::new().set_replication_schedule(ReplicationSchedule::Daily);Sourcepub fn set_mirror_state<T: Into<MirrorState>>(self, v: T) -> Self
pub fn set_mirror_state<T: Into<MirrorState>>(self, v: T) -> Self
Sets the value of mirror_state.
§Example
use google_cloud_netapp_v1::model::replication::MirrorState;
let x0 = Replication::new().set_mirror_state(MirrorState::Preparing);
let x1 = Replication::new().set_mirror_state(MirrorState::Mirrored);
let x2 = Replication::new().set_mirror_state(MirrorState::Stopped);Sourcepub fn set_healthy<T>(self, v: T) -> Self
pub fn set_healthy<T>(self, v: T) -> Self
Sourcepub fn set_or_clear_healthy<T>(self, v: Option<T>) -> Self
pub fn set_or_clear_healthy<T>(self, v: Option<T>) -> Self
Sourcepub fn set_create_time<T>(self, v: T) -> Self
pub fn set_create_time<T>(self, v: T) -> Self
Sets the value of create_time.
§Example
use wkt::Timestamp;
let x = Replication::new().set_create_time(Timestamp::default()/* use setters */);Sourcepub fn set_or_clear_create_time<T>(self, v: Option<T>) -> Self
pub fn set_or_clear_create_time<T>(self, v: Option<T>) -> Self
Sets or clears the value of create_time.
§Example
use wkt::Timestamp;
let x = Replication::new().set_or_clear_create_time(Some(Timestamp::default()/* use setters */));
let x = Replication::new().set_or_clear_create_time(None::<Timestamp>);Sourcepub fn set_destination_volume<T: Into<String>>(self, v: T) -> Self
pub fn set_destination_volume<T: Into<String>>(self, v: T) -> Self
Sets the value of destination_volume.
§Example
let x = Replication::new().set_destination_volume(format!("projects/{project_id}/locations/{location_id}/volumes/{volume_id}"));Sourcepub fn set_transfer_stats<T>(self, v: T) -> Selfwhere
T: Into<TransferStats>,
pub fn set_transfer_stats<T>(self, v: T) -> Selfwhere
T: Into<TransferStats>,
Sets the value of transfer_stats.
§Example
use google_cloud_netapp_v1::model::TransferStats;
let x = Replication::new().set_transfer_stats(TransferStats::default()/* use setters */);Sourcepub fn set_or_clear_transfer_stats<T>(self, v: Option<T>) -> Selfwhere
T: Into<TransferStats>,
pub fn set_or_clear_transfer_stats<T>(self, v: Option<T>) -> Selfwhere
T: Into<TransferStats>,
Sets or clears the value of transfer_stats.
§Example
use google_cloud_netapp_v1::model::TransferStats;
let x = Replication::new().set_or_clear_transfer_stats(Some(TransferStats::default()/* use setters */));
let x = Replication::new().set_or_clear_transfer_stats(None::<TransferStats>);Sourcepub fn set_labels<T, K, V>(self, v: T) -> Self
pub fn set_labels<T, K, V>(self, v: T) -> Self
Sourcepub fn set_description<T>(self, v: T) -> Self
pub fn set_description<T>(self, v: T) -> Self
Sourcepub fn set_or_clear_description<T>(self, v: Option<T>) -> Self
pub fn set_or_clear_description<T>(self, v: Option<T>) -> Self
Sets or clears the value of description.
§Example
let x = Replication::new().set_or_clear_description(Some("example"));
let x = Replication::new().set_or_clear_description(None::<String>);Sourcepub fn set_destination_volume_parameters<T>(self, v: T) -> Selfwhere
T: Into<DestinationVolumeParameters>,
pub fn set_destination_volume_parameters<T>(self, v: T) -> Selfwhere
T: Into<DestinationVolumeParameters>,
Sets the value of destination_volume_parameters.
§Example
use google_cloud_netapp_v1::model::DestinationVolumeParameters;
let x = Replication::new().set_destination_volume_parameters(DestinationVolumeParameters::default()/* use setters */);Sourcepub fn set_or_clear_destination_volume_parameters<T>(self, v: Option<T>) -> Selfwhere
T: Into<DestinationVolumeParameters>,
pub fn set_or_clear_destination_volume_parameters<T>(self, v: Option<T>) -> Selfwhere
T: Into<DestinationVolumeParameters>,
Sets or clears the value of destination_volume_parameters.
§Example
use google_cloud_netapp_v1::model::DestinationVolumeParameters;
let x = Replication::new().set_or_clear_destination_volume_parameters(Some(DestinationVolumeParameters::default()/* use setters */));
let x = Replication::new().set_or_clear_destination_volume_parameters(None::<DestinationVolumeParameters>);Sourcepub fn set_source_volume<T: Into<String>>(self, v: T) -> Self
pub fn set_source_volume<T: Into<String>>(self, v: T) -> Self
Sets the value of source_volume.
§Example
let x = Replication::new().set_source_volume(format!("projects/{project_id}/locations/{location_id}/volumes/{volume_id}"));Sourcepub fn set_hybrid_peering_details<T>(self, v: T) -> Selfwhere
T: Into<HybridPeeringDetails>,
pub fn set_hybrid_peering_details<T>(self, v: T) -> Selfwhere
T: Into<HybridPeeringDetails>,
Sets the value of hybrid_peering_details.
§Example
use google_cloud_netapp_v1::model::HybridPeeringDetails;
let x = Replication::new().set_hybrid_peering_details(HybridPeeringDetails::default()/* use setters */);Sourcepub fn set_or_clear_hybrid_peering_details<T>(self, v: Option<T>) -> Selfwhere
T: Into<HybridPeeringDetails>,
pub fn set_or_clear_hybrid_peering_details<T>(self, v: Option<T>) -> Selfwhere
T: Into<HybridPeeringDetails>,
Sets or clears the value of hybrid_peering_details.
§Example
use google_cloud_netapp_v1::model::HybridPeeringDetails;
let x = Replication::new().set_or_clear_hybrid_peering_details(Some(HybridPeeringDetails::default()/* use setters */));
let x = Replication::new().set_or_clear_hybrid_peering_details(None::<HybridPeeringDetails>);Sourcepub fn set_cluster_location<T: Into<String>>(self, v: T) -> Self
pub fn set_cluster_location<T: Into<String>>(self, v: T) -> Self
Sets the value of cluster_location.
§Example
let x = Replication::new().set_cluster_location("example");Sourcepub fn set_hybrid_replication_type<T: Into<HybridReplicationType>>(
self,
v: T,
) -> Self
pub fn set_hybrid_replication_type<T: Into<HybridReplicationType>>( self, v: T, ) -> Self
Sets the value of hybrid_replication_type.
§Example
use google_cloud_netapp_v1::model::replication::HybridReplicationType;
let x0 = Replication::new().set_hybrid_replication_type(HybridReplicationType::Migration);
let x1 = Replication::new().set_hybrid_replication_type(HybridReplicationType::ContinuousReplication);
let x2 = Replication::new().set_hybrid_replication_type(HybridReplicationType::OnpremReplication);Sourcepub fn set_hybrid_replication_user_commands<T>(self, v: T) -> Selfwhere
T: Into<UserCommands>,
pub fn set_hybrid_replication_user_commands<T>(self, v: T) -> Selfwhere
T: Into<UserCommands>,
Sets the value of hybrid_replication_user_commands.
§Example
use google_cloud_netapp_v1::model::UserCommands;
let x = Replication::new().set_hybrid_replication_user_commands(UserCommands::default()/* use setters */);Sourcepub fn set_or_clear_hybrid_replication_user_commands<T>(
self,
v: Option<T>,
) -> Selfwhere
T: Into<UserCommands>,
pub fn set_or_clear_hybrid_replication_user_commands<T>(
self,
v: Option<T>,
) -> Selfwhere
T: Into<UserCommands>,
Sets or clears the value of hybrid_replication_user_commands.
§Example
use google_cloud_netapp_v1::model::UserCommands;
let x = Replication::new().set_or_clear_hybrid_replication_user_commands(Some(UserCommands::default()/* use setters */));
let x = Replication::new().set_or_clear_hybrid_replication_user_commands(None::<UserCommands>);Trait Implementations§
Source§impl Clone for Replication
impl Clone for Replication
Source§fn clone(&self) -> Replication
fn clone(&self) -> Replication
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for Replication
impl Debug for Replication
Source§impl Default for Replication
impl Default for Replication
Source§fn default() -> Replication
fn default() -> Replication
Source§impl Message for Replication
impl Message for Replication
Source§impl PartialEq for Replication
impl PartialEq for Replication
impl StructuralPartialEq for Replication
Auto Trait Implementations§
impl Freeze for Replication
impl RefUnwindSafe for Replication
impl Send for Replication
impl Sync for Replication
impl Unpin for Replication
impl UnsafeUnpin for Replication
impl UnwindSafe for Replication
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
Source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
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