# 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::Compute::Mgmt::V2019_12_01 module Models # # List of Virtual Machine Scale Set OS Upgrade History operation response. # class VirtualMachineScaleSetListOSUpgradeHistory include MsRestAzure include MsRest::JSONable # @return [Array] The list of OS # upgrades performed on the virtual machine scale set. attr_accessor :value # @return [String] The uri to fetch the next page of OS Upgrade History. # Call ListNext() with this to fetch the next page of history of # upgrades. attr_accessor :next_link # return [Proc] with next page method call. attr_accessor :next_method # # Gets the rest of the items for the request, enabling auto-pagination. # # @return [Array] operation # results. # def get_all_items items = @value page = self while page.next_link != nil && !page.next_link.strip.empty? do page = page.get_next_page items.concat(page.value) end items end # # Gets the next page of results. # # @return [VirtualMachineScaleSetListOSUpgradeHistory] with next page # content. # def get_next_page response = @next_method.call(@next_link).value! unless @next_method.nil? unless response.nil? @next_link = response.body.next_link @value = response.body.value self end end # # Mapper for VirtualMachineScaleSetListOSUpgradeHistory class as Ruby # Hash. # This will be used for serialization/deserialization. # def self.mapper() { client_side_validation: true, required: false, serialized_name: 'VirtualMachineScaleSetListOSUpgradeHistory', type: { name: 'Composite', class_name: 'VirtualMachineScaleSetListOSUpgradeHistory', model_properties: { value: { client_side_validation: true, required: true, serialized_name: 'value', type: { name: 'Sequence', element: { client_side_validation: true, required: false, serialized_name: 'UpgradeOperationHistoricalStatusInfoElementType', type: { name: 'Composite', class_name: 'UpgradeOperationHistoricalStatusInfo' } } } }, next_link: { client_side_validation: true, required: false, serialized_name: 'nextLink', type: { name: 'String' } } } } } end end end end