# 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 # # Recovery plan action details. # class RecoveryPlanAction include MsRestAzure # @return [String] The action name. attr_accessor :action_name # @return [Array] The list of failover # types. attr_accessor :failover_types # @return [Array] The list of failover # directions. attr_accessor :failover_directions # @return [RecoveryPlanActionDetails] The custom details. attr_accessor :custom_details # # Mapper for RecoveryPlanAction class as Ruby Hash. # This will be used for serialization/deserialization. # def self.mapper() { client_side_validation: true, required: false, serialized_name: 'RecoveryPlanAction', type: { name: 'Composite', class_name: 'RecoveryPlanAction', model_properties: { action_name: { client_side_validation: true, required: true, serialized_name: 'actionName', type: { name: 'String' } }, failover_types: { client_side_validation: true, required: true, serialized_name: 'failoverTypes', type: { name: 'Sequence', element: { client_side_validation: true, required: false, serialized_name: 'ReplicationProtectedItemOperationElementType', type: { name: 'String' } } } }, failover_directions: { client_side_validation: true, required: true, serialized_name: 'failoverDirections', type: { name: 'Sequence', element: { client_side_validation: true, required: false, serialized_name: 'PossibleOperationsDirectionsElementType', type: { name: 'String' } } } }, custom_details: { client_side_validation: true, required: true, serialized_name: 'customDetails', type: { name: 'Composite', polymorphic_discriminator: 'instanceType', uber_parent: 'RecoveryPlanActionDetails', class_name: 'RecoveryPlanActionDetails' } } } } } end end end end