#[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
pub fn new() -> Self
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("example");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
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 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more