# 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 OS profile. # class OSProfile include MsRestAzure # @return [String] Gets or sets the computer name. attr_accessor :computer_name # @return [String] Gets or sets the admin user name. attr_accessor :admin_username # @return [String] Gets or sets the admin user password. attr_accessor :admin_password # @return [String] Gets or sets a base-64 encoded string of custom data. attr_accessor :custom_data # @return [WindowsConfiguration] Gets or sets the Windows Configuration # of the OS profile. attr_accessor :windows_configuration # @return [LinuxConfiguration] Gets or sets the Linux Configuration of # the OS profile. attr_accessor :linux_configuration # @return [Array] Gets or sets the List of # certificates for addition to the VM. attr_accessor :secrets # # Validate the object. Throws ValidationError if validation fails. # def validate @windows_configuration.validate unless @windows_configuration.nil? @linux_configuration.validate unless @linux_configuration.nil? @secrets.each{ |e| e.validate if e.respond_to?(:validate) } unless @secrets.nil? 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.computer_name output_object['computerName'] = serialized_property unless serialized_property.nil? serialized_property = object.admin_username output_object['adminUsername'] = serialized_property unless serialized_property.nil? serialized_property = object.admin_password output_object['adminPassword'] = serialized_property unless serialized_property.nil? serialized_property = object.custom_data output_object['customData'] = serialized_property unless serialized_property.nil? serialized_property = object.windows_configuration unless serialized_property.nil? serialized_property = WindowsConfiguration.serialize_object(serialized_property) end output_object['windowsConfiguration'] = serialized_property unless serialized_property.nil? serialized_property = object.linux_configuration unless serialized_property.nil? serialized_property = LinuxConfiguration.serialize_object(serialized_property) end output_object['linuxConfiguration'] = serialized_property unless serialized_property.nil? serialized_property = object.secrets unless serialized_property.nil? serializedArray = [] serialized_property.each do |element| unless element.nil? element = VaultSecretGroup.serialize_object(element) end serializedArray.push(element) end serialized_property = serializedArray end output_object['secrets'] = 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 [OSProfile] Deserialized object. # def self.deserialize_object(object) return if object.nil? output_object = OSProfile.new deserialized_property = object['computerName'] output_object.computer_name = deserialized_property deserialized_property = object['adminUsername'] output_object.admin_username = deserialized_property deserialized_property = object['adminPassword'] output_object.admin_password = deserialized_property deserialized_property = object['customData'] output_object.custom_data = deserialized_property deserialized_property = object['windowsConfiguration'] unless deserialized_property.nil? deserialized_property = WindowsConfiguration.deserialize_object(deserialized_property) end output_object.windows_configuration = deserialized_property deserialized_property = object['linuxConfiguration'] unless deserialized_property.nil? deserialized_property = LinuxConfiguration.deserialize_object(deserialized_property) end output_object.linux_configuration = deserialized_property deserialized_property = object['secrets'] unless deserialized_property.nil? deserialized_array = [] deserialized_property.each do |element1| unless element1.nil? element1 = VaultSecretGroup.deserialize_object(element1) end deserialized_array.push(element1) end deserialized_property = deserialized_array end output_object.secrets = deserialized_property output_object end end end end