# 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::RecoveryServicesSiteRecovery::Mgmt::V2018_01_10 module Models # # Hyper V Replica Azure provider specific settings. # class HyperVReplicaAzureReplicationDetails < ReplicationProviderSpecificSettings include MsRestAzure def initialize @instanceType = "HyperVReplicaAzure" end attr_accessor :instanceType # @return [Array] Azure VM Disk details. attr_accessor :azure_vm_disk_details # @return [String] Recovery Azure given name. attr_accessor :recovery_azure_vm_name # @return [String] The Recovery Azure VM size. attr_accessor :recovery_azure_vmsize # @return [String] The recovery Azure storage account. attr_accessor :recovery_azure_storage_account # @return [String] The ARM id of the log storage account used for # replication. This will be set to null if no log storage account was # provided during enable protection. attr_accessor :recovery_azure_log_storage_account_id # @return [DateTime] The Last replication time. attr_accessor :last_replicated_time # @return [Integer] Last RPO value. attr_accessor :rpo_in_seconds # @return [DateTime] The last RPO calculated time. attr_accessor :last_rpo_calculated_time # @return [String] The virtual machine Id. attr_accessor :vm_id # @return [String] The protection state for the vm. attr_accessor :vm_protection_state # @return [String] The protection state description for the vm. attr_accessor :vm_protection_state_description # @return [InitialReplicationDetails] Initial replication details. attr_accessor :initial_replication_details # @return [Array] The PE Network details. attr_accessor :vm_nics # @return [String] The selected recovery azure network Id. attr_accessor :selected_recovery_azure_network_id # @return [String] The selected source nic Id which will be used as the # primary nic during failover. attr_accessor :selected_source_nic_id # @return [String] The encryption info. attr_accessor :encryption # @return [OSDetails] The operating system info. attr_accessor :o_sdetails # @return [Integer] The RAM size of the VM on the primary side. attr_accessor :source_vm_ram_size_in_mb # @return [Integer] The CPU count of the VM on the primary side. attr_accessor :source_vm_cpu_count # @return [String] The selected option to enable RDP\SSH on target vm # after failover. String value of # {SrsDataContract.EnableRDPOnTargetOption} enum. attr_accessor :enable_rdp_on_target_option # @return [String] The target resource group Id. attr_accessor :recovery_azure_resource_group_id # @return [String] The recovery availability set Id. attr_accessor :recovery_availability_set_id # @return [String] A value indicating whether managed disks should be # used during failover. attr_accessor :use_managed_disks # @return [String] License Type of the VM to be used. attr_accessor :license_type # # Mapper for HyperVReplicaAzureReplicationDetails class as Ruby Hash. # This will be used for serialization/deserialization. # def self.mapper() { client_side_validation: true, required: false, serialized_name: 'HyperVReplicaAzure', type: { name: 'Composite', class_name: 'HyperVReplicaAzureReplicationDetails', model_properties: { instanceType: { client_side_validation: true, required: true, serialized_name: 'instanceType', type: { name: 'String' } }, azure_vm_disk_details: { client_side_validation: true, required: false, serialized_name: 'azureVmDiskDetails', type: { name: 'Sequence', element: { client_side_validation: true, required: false, serialized_name: 'AzureVmDiskDetailsElementType', type: { name: 'Composite', class_name: 'AzureVmDiskDetails' } } } }, recovery_azure_vm_name: { client_side_validation: true, required: false, serialized_name: 'recoveryAzureVmName', type: { name: 'String' } }, recovery_azure_vmsize: { client_side_validation: true, required: false, serialized_name: 'recoveryAzureVMSize', type: { name: 'String' } }, recovery_azure_storage_account: { client_side_validation: true, required: false, serialized_name: 'recoveryAzureStorageAccount', type: { name: 'String' } }, recovery_azure_log_storage_account_id: { client_side_validation: true, required: false, serialized_name: 'recoveryAzureLogStorageAccountId', type: { name: 'String' } }, last_replicated_time: { client_side_validation: true, required: false, serialized_name: 'lastReplicatedTime', type: { name: 'DateTime' } }, rpo_in_seconds: { client_side_validation: true, required: false, serialized_name: 'rpoInSeconds', type: { name: 'Number' } }, last_rpo_calculated_time: { client_side_validation: true, required: false, serialized_name: 'lastRpoCalculatedTime', type: { name: 'DateTime' } }, vm_id: { client_side_validation: true, required: false, serialized_name: 'vmId', type: { name: 'String' } }, vm_protection_state: { client_side_validation: true, required: false, serialized_name: 'vmProtectionState', type: { name: 'String' } }, vm_protection_state_description: { client_side_validation: true, required: false, serialized_name: 'vmProtectionStateDescription', type: { name: 'String' } }, initial_replication_details: { client_side_validation: true, required: false, serialized_name: 'initialReplicationDetails', type: { name: 'Composite', class_name: 'InitialReplicationDetails' } }, vm_nics: { client_side_validation: true, required: false, serialized_name: 'vmNics', type: { name: 'Sequence', element: { client_side_validation: true, required: false, serialized_name: 'VMNicDetailsElementType', type: { name: 'Composite', class_name: 'VMNicDetails' } } } }, selected_recovery_azure_network_id: { client_side_validation: true, required: false, serialized_name: 'selectedRecoveryAzureNetworkId', type: { name: 'String' } }, selected_source_nic_id: { client_side_validation: true, required: false, serialized_name: 'selectedSourceNicId', type: { name: 'String' } }, encryption: { client_side_validation: true, required: false, serialized_name: 'encryption', type: { name: 'String' } }, o_sdetails: { client_side_validation: true, required: false, serialized_name: 'oSDetails', type: { name: 'Composite', class_name: 'OSDetails' } }, source_vm_ram_size_in_mb: { client_side_validation: true, required: false, serialized_name: 'sourceVmRamSizeInMB', type: { name: 'Number' } }, source_vm_cpu_count: { client_side_validation: true, required: false, serialized_name: 'sourceVmCpuCount', type: { name: 'Number' } }, enable_rdp_on_target_option: { client_side_validation: true, required: false, serialized_name: 'enableRdpOnTargetOption', type: { name: 'String' } }, recovery_azure_resource_group_id: { client_side_validation: true, required: false, serialized_name: 'recoveryAzureResourceGroupId', type: { name: 'String' } }, recovery_availability_set_id: { client_side_validation: true, required: false, serialized_name: 'recoveryAvailabilitySetId', type: { name: 'String' } }, use_managed_disks: { client_side_validation: true, required: false, serialized_name: 'useManagedDisks', type: { name: 'String' } }, license_type: { client_side_validation: true, required: false, serialized_name: 'licenseType', type: { name: 'String' } } } } } end end end end