Sha256: 33c4090cba3d1222ec3ed508e37c6366b857e16245a385f02f15588d6cf95721

Contents?: true

Size: 1.81 KB

Versions: 2

Compression:

Stored size: 1.81 KB

Contents

# encoding: utf-8
# Code generated by Microsoft (R) AutoRest Code Generator 0.16.0.0
# Changes may cause incorrect behavior and will be lost if the code is
# regenerated.

module Azure::ARM::Compute
  module Models
    #
    # Describes an upgrade policy - automatic or manual.
    #
    class UpgradePolicy

      include MsRestAzure

      # @return [UpgradeMode] Gets or sets the upgrade mode. Possible values
      # include: 'Automatic', 'Manual'
      attr_accessor :mode

      #
      # Validate the object. Throws ValidationError if validation fails.
      #
      def validate
      end

      #
      # Serializes given Model object into Ruby Hash.
      # @param object Model object to serialize.
      # @return [Hash] Serialized object in form of Ruby Hash.
      #
      def self.serialize_object(object)
        object.validate
        output_object = {}

        serialized_property = object.mode
        output_object['mode'] = serialized_property unless serialized_property.nil?

        output_object
      end

      #
      # Deserializes given Ruby Hash into Model object.
      # @param object [Hash] Ruby Hash object to deserialize.
      # @return [UpgradePolicy] Deserialized object.
      #
      def self.deserialize_object(object)
        return if object.nil?
        output_object = UpgradePolicy.new

        deserialized_property = object['mode']
        if (!deserialized_property.nil? && !deserialized_property.empty?)
          enum_is_valid = UpgradeMode.constants.any? { |e| UpgradeMode.const_get(e).to_s.downcase == deserialized_property.downcase }
          warn 'Enum UpgradeMode does not contain ' + deserialized_property.downcase + ', but was received from the server.' unless enum_is_valid
        end
        output_object.mode = deserialized_property

        output_object
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
azure_mgmt_compute-0.2.1 lib/azure_mgmt_compute/models/upgrade_policy.rb
azure_mgmt_compute-0.2.0 lib/azure_mgmt_compute/models/upgrade_policy.rb