Class: Azure::Storage::Mgmt::V2021_01_01::Models::FileShareItems

Inherits:
Object
  • Object
show all
Includes:
MsRest::JSONable, MsRestAzure
Defined in:
lib/2021-01-01/generated/azure_mgmt_storage/models/file_share_items.rb

Overview

Response schema. Contains list of shares returned, and if paging is requested or required, a URL to next page of shares.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Instance Attribute Details

shares. Returned when total number of requested shares exceed maximum page size.

Returns:

  • (String)

    Request URL that can be used to query next page of



23
24
25
# File 'lib/2021-01-01/generated/azure_mgmt_storage/models/file_share_items.rb', line 23

def next_link
  @next_link
end

#next_methodObject

return [Proc] with next page method call.



26
27
28
# File 'lib/2021-01-01/generated/azure_mgmt_storage/models/file_share_items.rb', line 26

def next_method
  @next_method
end

#valueArray<FileShareItem>

Returns List of file shares returned.

Returns:



18
19
20
# File 'lib/2021-01-01/generated/azure_mgmt_storage/models/file_share_items.rb', line 18

def value
  @value
end

Class Method Details

.mapperObject

Mapper for FileShareItems class as Ruby Hash. This will be used for serialization/deserialization.



61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
# File 'lib/2021-01-01/generated/azure_mgmt_storage/models/file_share_items.rb', line 61

def self.mapper()
  {
    client_side_validation: true,
    required: false,
    serialized_name: 'FileShareItems',
    type: {
      name: 'Composite',
      class_name: 'FileShareItems',
      model_properties: {
        value: {
          client_side_validation: true,
          required: false,
          read_only: true,
          serialized_name: 'value',
          type: {
            name: 'Sequence',
            element: {
                client_side_validation: true,
                required: false,
                serialized_name: 'FileShareItemElementType',
                type: {
                  name: 'Composite',
                  class_name: 'FileShareItem'
                }
            }
          }
        },
        next_link: {
          client_side_validation: true,
          required: false,
          read_only: true,
          serialized_name: 'nextLink',
          type: {
            name: 'String'
          }
        }
      }
    }
  }
end

Instance Method Details

#get_all_itemsArray<FileShareItem>

Gets the rest of the items for the request, enabling auto-pagination.

Returns:



33
34
35
36
37
38
39
40
41
# File 'lib/2021-01-01/generated/azure_mgmt_storage/models/file_share_items.rb', line 33

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

#get_next_pageFileShareItems

Gets the next page of results.

Returns:



48
49
50
51
52
53
54
55
# File 'lib/2021-01-01/generated/azure_mgmt_storage/models/file_share_items.rb', line 48

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