# encoding: utf-8 # Code generated by Microsoft (R) AutoRest Code Generator. # Changes may cause incorrect behavior and will be lost if the code is # regenerated. module Azure::ARM::RecoveryServicesSiteRecovery module Models # # Hyper-V Replica Azure specific protection profile details. # class HyperVReplicaAzurePolicyDetails < PolicyProviderSpecificDetails include MsRestAzure def initialize @instanceType = "HyperVReplicaAzure" end attr_accessor :instanceType # @return [Integer] The duration (in hours) to which point the recovery # history needs to be maintained. attr_accessor :recovery_point_history_duration_in_hours # @return [Integer] The interval (in hours) at which Hyper-V Replica # should create an application consistent snapshot within the VM. attr_accessor :application_consistent_snapshot_frequency_in_hours # @return [Integer] The replication interval. attr_accessor :replication_interval # @return [String] The scheduled start time for the initial replication. # If this parameter is Null, the initial replication starts immediately. attr_accessor :online_replication_start_time # @return [String] A value indicating whether encryption is enabled for # virtual machines in this cloud. attr_accessor :encryption # @return [String] The active storage account Id. attr_accessor :active_storage_account_id # # Mapper for HyperVReplicaAzurePolicyDetails class as Ruby Hash. # This will be used for serialization/deserialization. # def self.mapper() { required: false, serialized_name: 'HyperVReplicaAzure', type: { name: 'Composite', class_name: 'HyperVReplicaAzurePolicyDetails', model_properties: { instanceType: { required: true, serialized_name: 'instanceType', type: { name: 'String' } }, recovery_point_history_duration_in_hours: { required: false, serialized_name: 'recoveryPointHistoryDurationInHours', type: { name: 'Number' } }, application_consistent_snapshot_frequency_in_hours: { required: false, serialized_name: 'applicationConsistentSnapshotFrequencyInHours', type: { name: 'Number' } }, replication_interval: { required: false, serialized_name: 'replicationInterval', type: { name: 'Number' } }, online_replication_start_time: { required: false, serialized_name: 'onlineReplicationStartTime', type: { name: 'String' } }, encryption: { required: false, serialized_name: 'encryption', type: { name: 'String' } }, active_storage_account_id: { required: false, serialized_name: 'activeStorageAccountId', type: { name: 'String' } } } } } end end end end