azure_mgmt_authorization 0.16.0 → 0.16.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (40) hide show
  1. checksums.yaml +4 -4
  2. data/lib/2015-06-01/generated/azure_mgmt_authorization/authorization_management_client.rb +130 -0
  3. data/lib/2015-06-01/generated/azure_mgmt_authorization/classic_administrators.rb +228 -0
  4. data/lib/2015-06-01/generated/azure_mgmt_authorization/models/classic_administrator.rb +90 -0
  5. data/lib/2015-06-01/generated/azure_mgmt_authorization/models/classic_administrator_list_result.rb +98 -0
  6. data/lib/2015-06-01/generated/azure_mgmt_authorization/module_definition.rb +9 -0
  7. data/lib/2015-06-01/generated/azure_mgmt_authorization.rb +30 -0
  8. data/lib/2015-07-01/generated/azure_mgmt_authorization/authorization_management_client.rb +1 -1
  9. data/lib/2017-10-01-preview/generated/azure_mgmt_authorization/authorization_management_client.rb +130 -0
  10. data/lib/2017-10-01-preview/generated/azure_mgmt_authorization/models/role_assignment.rb +115 -0
  11. data/lib/2017-10-01-preview/generated/azure_mgmt_authorization/models/role_assignment_create_parameters.rb +71 -0
  12. data/lib/2017-10-01-preview/generated/azure_mgmt_authorization/models/role_assignment_filter.rb +57 -0
  13. data/lib/2017-10-01-preview/generated/azure_mgmt_authorization/models/role_assignment_list_result.rb +98 -0
  14. data/lib/2017-10-01-preview/generated/azure_mgmt_authorization/module_definition.rb +9 -0
  15. data/lib/2017-10-01-preview/generated/azure_mgmt_authorization/role_assignments.rb +1493 -0
  16. data/lib/2017-10-01-preview/generated/azure_mgmt_authorization.rb +32 -0
  17. data/lib/2018-01-01-preview/generated/azure_mgmt_authorization/authorization_management_client.rb +143 -0
  18. data/lib/2018-01-01-preview/generated/azure_mgmt_authorization/models/permission.rb +111 -0
  19. data/lib/2018-01-01-preview/generated/azure_mgmt_authorization/models/permission_get_result.rb +98 -0
  20. data/lib/2018-01-01-preview/generated/azure_mgmt_authorization/models/provider_operation.rb +101 -0
  21. data/lib/2018-01-01-preview/generated/azure_mgmt_authorization/models/provider_operations_metadata.rb +119 -0
  22. data/lib/2018-01-01-preview/generated/azure_mgmt_authorization/models/provider_operations_metadata_list_result.rb +98 -0
  23. data/lib/2018-01-01-preview/generated/azure_mgmt_authorization/models/resource_type.rb +77 -0
  24. data/lib/2018-01-01-preview/generated/azure_mgmt_authorization/models/role_assignment.rb +115 -0
  25. data/lib/2018-01-01-preview/generated/azure_mgmt_authorization/models/role_assignment_create_parameters.rb +71 -0
  26. data/lib/2018-01-01-preview/generated/azure_mgmt_authorization/models/role_assignment_filter.rb +57 -0
  27. data/lib/2018-01-01-preview/generated/azure_mgmt_authorization/models/role_assignment_list_result.rb +98 -0
  28. data/lib/2018-01-01-preview/generated/azure_mgmt_authorization/models/role_definition.rb +143 -0
  29. data/lib/2018-01-01-preview/generated/azure_mgmt_authorization/models/role_definition_filter.rb +57 -0
  30. data/lib/2018-01-01-preview/generated/azure_mgmt_authorization/models/role_definition_list_result.rb +98 -0
  31. data/lib/2018-01-01-preview/generated/azure_mgmt_authorization/module_definition.rb +9 -0
  32. data/lib/2018-01-01-preview/generated/azure_mgmt_authorization/permissions.rb +452 -0
  33. data/lib/2018-01-01-preview/generated/azure_mgmt_authorization/provider_operations_metadata_operations.rb +316 -0
  34. data/lib/2018-01-01-preview/generated/azure_mgmt_authorization/role_assignments.rb +1493 -0
  35. data/lib/2018-01-01-preview/generated/azure_mgmt_authorization/role_definitions.rb +622 -0
  36. data/lib/2018-01-01-preview/generated/azure_mgmt_authorization.rb +44 -0
  37. data/lib/azure_mgmt_authorization.rb +3 -0
  38. data/lib/profiles/latest/modules/authorization_profile_module.rb +63 -71
  39. data/lib/version.rb +1 -1
  40. metadata +36 -2
@@ -0,0 +1,32 @@
1
+ # encoding: utf-8
2
+ # Code generated by Microsoft (R) AutoRest Code Generator.
3
+ # Changes may cause incorrect behavior and will be lost if the code is
4
+ # regenerated.
5
+
6
+ require 'uri'
7
+ require 'cgi'
8
+ require 'date'
9
+ require 'json'
10
+ require 'base64'
11
+ require 'erb'
12
+ require 'securerandom'
13
+ require 'time'
14
+ require 'timeliness'
15
+ require 'faraday'
16
+ require 'faraday-cookie_jar'
17
+ require 'concurrent'
18
+ require 'ms_rest'
19
+ require '2017-10-01-preview/generated/azure_mgmt_authorization/module_definition'
20
+ require 'ms_rest_azure'
21
+
22
+ module Azure::Authorization::Mgmt::V2017_10_01_preview
23
+ autoload :RoleAssignments, '2017-10-01-preview/generated/azure_mgmt_authorization/role_assignments.rb'
24
+ autoload :AuthorizationManagementClient, '2017-10-01-preview/generated/azure_mgmt_authorization/authorization_management_client.rb'
25
+
26
+ module Models
27
+ autoload :RoleAssignmentListResult, '2017-10-01-preview/generated/azure_mgmt_authorization/models/role_assignment_list_result.rb'
28
+ autoload :RoleAssignmentFilter, '2017-10-01-preview/generated/azure_mgmt_authorization/models/role_assignment_filter.rb'
29
+ autoload :RoleAssignmentCreateParameters, '2017-10-01-preview/generated/azure_mgmt_authorization/models/role_assignment_create_parameters.rb'
30
+ autoload :RoleAssignment, '2017-10-01-preview/generated/azure_mgmt_authorization/models/role_assignment.rb'
31
+ end
32
+ end
@@ -0,0 +1,143 @@
1
+ # encoding: utf-8
2
+ # Code generated by Microsoft (R) AutoRest Code Generator.
3
+ # Changes may cause incorrect behavior and will be lost if the code is
4
+ # regenerated.
5
+
6
+ module Azure::Authorization::Mgmt::V2018_01_01_preview
7
+ #
8
+ # A service client - single point of access to the REST API.
9
+ #
10
+ class AuthorizationManagementClient < MsRestAzure::AzureServiceClient
11
+ include MsRestAzure
12
+ include MsRestAzure::Serialization
13
+
14
+ # @return [String] the base URI of the service.
15
+ attr_accessor :base_url
16
+
17
+ # @return Credentials needed for the client to connect to Azure.
18
+ attr_reader :credentials
19
+
20
+ # @return [String] The ID of the target subscription.
21
+ attr_accessor :subscription_id
22
+
23
+ # @return [String] The API version to use for this operation.
24
+ attr_reader :api_version
25
+
26
+ # @return [String] Gets or sets the preferred language for the response.
27
+ attr_accessor :accept_language
28
+
29
+ # @return [Integer] Gets or sets the retry timeout in seconds for Long
30
+ # Running Operations. Default value is 30.
31
+ attr_accessor :long_running_operation_retry_timeout
32
+
33
+ # @return [Boolean] When set to true a unique x-ms-client-request-id value
34
+ # is generated and included in each request. Default is true.
35
+ attr_accessor :generate_client_request_id
36
+
37
+ # @return [ProviderOperationsMetadataOperations]
38
+ # provider_operations_metadata_operations
39
+ attr_reader :provider_operations_metadata_operations
40
+
41
+ # @return [Permissions] permissions
42
+ attr_reader :permissions
43
+
44
+ # @return [RoleAssignments] role_assignments
45
+ attr_reader :role_assignments
46
+
47
+ # @return [RoleDefinitions] role_definitions
48
+ attr_reader :role_definitions
49
+
50
+ #
51
+ # Creates initializes a new instance of the AuthorizationManagementClient class.
52
+ # @param credentials [MsRest::ServiceClientCredentials] credentials to authorize HTTP requests made by the service client.
53
+ # @param base_url [String] the base URI of the service.
54
+ # @param options [Array] filters to be applied to the HTTP requests.
55
+ #
56
+ def initialize(credentials = nil, base_url = nil, options = nil)
57
+ super(credentials, options)
58
+ @base_url = base_url || 'https://management.azure.com'
59
+
60
+ fail ArgumentError, 'invalid type of credentials input parameter' unless credentials.is_a?(MsRest::ServiceClientCredentials) unless credentials.nil?
61
+ @credentials = credentials
62
+
63
+ @provider_operations_metadata_operations = ProviderOperationsMetadataOperations.new(self)
64
+ @permissions = Permissions.new(self)
65
+ @role_assignments = RoleAssignments.new(self)
66
+ @role_definitions = RoleDefinitions.new(self)
67
+ @api_version = '2018-01-01-preview'
68
+ @accept_language = 'en-US'
69
+ @long_running_operation_retry_timeout = 30
70
+ @generate_client_request_id = true
71
+ add_telemetry
72
+ end
73
+
74
+ #
75
+ # Makes a request and returns the body of the response.
76
+ # @param method [Symbol] with any of the following values :get, :put, :post, :patch, :delete.
77
+ # @param path [String] the path, relative to {base_url}.
78
+ # @param options [Hash{String=>String}] specifying any request options like :body.
79
+ # @return [Hash{String=>String}] containing the body of the response.
80
+ # Example:
81
+ #
82
+ # request_content = "{'location':'westus','tags':{'tag1':'val1','tag2':'val2'}}"
83
+ # path = "/path"
84
+ # options = {
85
+ # body: request_content,
86
+ # query_params: {'api-version' => '2016-02-01'}
87
+ # }
88
+ # result = @client.make_request(:put, path, options)
89
+ #
90
+ def make_request(method, path, options = {})
91
+ result = make_request_with_http_info(method, path, options)
92
+ result.body unless result.nil?
93
+ end
94
+
95
+ #
96
+ # Makes a request and returns the operation response.
97
+ # @param method [Symbol] with any of the following values :get, :put, :post, :patch, :delete.
98
+ # @param path [String] the path, relative to {base_url}.
99
+ # @param options [Hash{String=>String}] specifying any request options like :body.
100
+ # @return [MsRestAzure::AzureOperationResponse] Operation response containing the request, response and status.
101
+ #
102
+ def make_request_with_http_info(method, path, options = {})
103
+ result = make_request_async(method, path, options).value!
104
+ result.body = result.response.body.to_s.empty? ? nil : JSON.load(result.response.body)
105
+ result
106
+ end
107
+
108
+ #
109
+ # Makes a request asynchronously.
110
+ # @param method [Symbol] with any of the following values :get, :put, :post, :patch, :delete.
111
+ # @param path [String] the path, relative to {base_url}.
112
+ # @param options [Hash{String=>String}] specifying any request options like :body.
113
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
114
+ #
115
+ def make_request_async(method, path, options = {})
116
+ fail ArgumentError, 'method is nil' if method.nil?
117
+ fail ArgumentError, 'path is nil' if path.nil?
118
+
119
+ request_url = options[:base_url] || @base_url
120
+ if(!options[:headers].nil? && !options[:headers]['Content-Type'].nil?)
121
+ @request_headers['Content-Type'] = options[:headers]['Content-Type']
122
+ end
123
+
124
+ request_headers = @request_headers
125
+ request_headers.merge!({'accept-language' => @accept_language}) unless @accept_language.nil?
126
+ options.merge!({headers: request_headers.merge(options[:headers] || {})})
127
+ options.merge!({credentials: @credentials}) unless @credentials.nil?
128
+
129
+ super(request_url, method, path, options)
130
+ end
131
+
132
+
133
+ private
134
+ #
135
+ # Adds telemetry information.
136
+ #
137
+ def add_telemetry
138
+ sdk_information = 'azure_mgmt_authorization'
139
+ sdk_information = "#{sdk_information}/0.16.1"
140
+ add_user_agent_information(sdk_information)
141
+ end
142
+ end
143
+ end
@@ -0,0 +1,111 @@
1
+ # encoding: utf-8
2
+ # Code generated by Microsoft (R) AutoRest Code Generator.
3
+ # Changes may cause incorrect behavior and will be lost if the code is
4
+ # regenerated.
5
+
6
+ module Azure::Authorization::Mgmt::V2018_01_01_preview
7
+ module Models
8
+ #
9
+ # Role definition permissions.
10
+ #
11
+ class Permission
12
+
13
+ include MsRestAzure
14
+
15
+ # @return [Array<String>] Allowed actions.
16
+ attr_accessor :actions
17
+
18
+ # @return [Array<String>] Denied actions.
19
+ attr_accessor :not_actions
20
+
21
+ # @return [Array<String>] Allowed Data actions.
22
+ attr_accessor :data_actions
23
+
24
+ # @return [Array<String>] Denied Data actions.
25
+ attr_accessor :not_data_actions
26
+
27
+
28
+ #
29
+ # Mapper for Permission class as Ruby Hash.
30
+ # This will be used for serialization/deserialization.
31
+ #
32
+ def self.mapper()
33
+ {
34
+ client_side_validation: true,
35
+ required: false,
36
+ serialized_name: 'Permission',
37
+ type: {
38
+ name: 'Composite',
39
+ class_name: 'Permission',
40
+ model_properties: {
41
+ actions: {
42
+ client_side_validation: true,
43
+ required: false,
44
+ serialized_name: 'actions',
45
+ type: {
46
+ name: 'Sequence',
47
+ element: {
48
+ client_side_validation: true,
49
+ required: false,
50
+ serialized_name: 'StringElementType',
51
+ type: {
52
+ name: 'String'
53
+ }
54
+ }
55
+ }
56
+ },
57
+ not_actions: {
58
+ client_side_validation: true,
59
+ required: false,
60
+ serialized_name: 'notActions',
61
+ type: {
62
+ name: 'Sequence',
63
+ element: {
64
+ client_side_validation: true,
65
+ required: false,
66
+ serialized_name: 'StringElementType',
67
+ type: {
68
+ name: 'String'
69
+ }
70
+ }
71
+ }
72
+ },
73
+ data_actions: {
74
+ client_side_validation: true,
75
+ required: false,
76
+ serialized_name: 'dataActions',
77
+ type: {
78
+ name: 'Sequence',
79
+ element: {
80
+ client_side_validation: true,
81
+ required: false,
82
+ serialized_name: 'StringElementType',
83
+ type: {
84
+ name: 'String'
85
+ }
86
+ }
87
+ }
88
+ },
89
+ not_data_actions: {
90
+ client_side_validation: true,
91
+ required: false,
92
+ serialized_name: 'notDataActions',
93
+ type: {
94
+ name: 'Sequence',
95
+ element: {
96
+ client_side_validation: true,
97
+ required: false,
98
+ serialized_name: 'StringElementType',
99
+ type: {
100
+ name: 'String'
101
+ }
102
+ }
103
+ }
104
+ }
105
+ }
106
+ }
107
+ }
108
+ end
109
+ end
110
+ end
111
+ end
@@ -0,0 +1,98 @@
1
+ # encoding: utf-8
2
+ # Code generated by Microsoft (R) AutoRest Code Generator.
3
+ # Changes may cause incorrect behavior and will be lost if the code is
4
+ # regenerated.
5
+
6
+ module Azure::Authorization::Mgmt::V2018_01_01_preview
7
+ module Models
8
+ #
9
+ # Permissions information.
10
+ #
11
+ class PermissionGetResult
12
+
13
+ include MsRestAzure
14
+
15
+ include MsRest::JSONable
16
+ # @return [Array<Permission>] An array of permissions.
17
+ attr_accessor :value
18
+
19
+ # @return [String] The URL to use for getting the next set of results.
20
+ attr_accessor :next_link
21
+
22
+ # return [Proc] with next page method call.
23
+ attr_accessor :next_method
24
+
25
+ #
26
+ # Gets the rest of the items for the request, enabling auto-pagination.
27
+ #
28
+ # @return [Array<Permission>] operation results.
29
+ #
30
+ def get_all_items
31
+ items = @value
32
+ page = self
33
+ while page.next_link != nil do
34
+ page = page.get_next_page
35
+ items.concat(page.value)
36
+ end
37
+ items
38
+ end
39
+
40
+ #
41
+ # Gets the next page of results.
42
+ #
43
+ # @return [PermissionGetResult] with next page content.
44
+ #
45
+ def get_next_page
46
+ response = @next_method.call(@next_link).value! unless @next_method.nil?
47
+ unless response.nil?
48
+ @next_link = response.body.next_link
49
+ @value = response.body.value
50
+ self
51
+ end
52
+ end
53
+
54
+ #
55
+ # Mapper for PermissionGetResult class as Ruby Hash.
56
+ # This will be used for serialization/deserialization.
57
+ #
58
+ def self.mapper()
59
+ {
60
+ client_side_validation: true,
61
+ required: false,
62
+ serialized_name: 'PermissionGetResult',
63
+ type: {
64
+ name: 'Composite',
65
+ class_name: 'PermissionGetResult',
66
+ model_properties: {
67
+ value: {
68
+ client_side_validation: true,
69
+ required: false,
70
+ serialized_name: 'value',
71
+ type: {
72
+ name: 'Sequence',
73
+ element: {
74
+ client_side_validation: true,
75
+ required: false,
76
+ serialized_name: 'PermissionElementType',
77
+ type: {
78
+ name: 'Composite',
79
+ class_name: 'Permission'
80
+ }
81
+ }
82
+ }
83
+ },
84
+ next_link: {
85
+ client_side_validation: true,
86
+ required: false,
87
+ serialized_name: 'nextLink',
88
+ type: {
89
+ name: 'String'
90
+ }
91
+ }
92
+ }
93
+ }
94
+ }
95
+ end
96
+ end
97
+ end
98
+ end
@@ -0,0 +1,101 @@
1
+ # encoding: utf-8
2
+ # Code generated by Microsoft (R) AutoRest Code Generator.
3
+ # Changes may cause incorrect behavior and will be lost if the code is
4
+ # regenerated.
5
+
6
+ module Azure::Authorization::Mgmt::V2018_01_01_preview
7
+ module Models
8
+ #
9
+ # Operation
10
+ #
11
+ class ProviderOperation
12
+
13
+ include MsRestAzure
14
+
15
+ # @return [String] The operation name.
16
+ attr_accessor :name
17
+
18
+ # @return [String] The operation display name.
19
+ attr_accessor :display_name
20
+
21
+ # @return [String] The operation description.
22
+ attr_accessor :description
23
+
24
+ # @return [String] The operation origin.
25
+ attr_accessor :origin
26
+
27
+ # @return The operation properties.
28
+ attr_accessor :properties
29
+
30
+ # @return [Boolean] The dataAction flag to specify the operation type.
31
+ attr_accessor :is_data_action
32
+
33
+
34
+ #
35
+ # Mapper for ProviderOperation class as Ruby Hash.
36
+ # This will be used for serialization/deserialization.
37
+ #
38
+ def self.mapper()
39
+ {
40
+ client_side_validation: true,
41
+ required: false,
42
+ serialized_name: 'ProviderOperation',
43
+ type: {
44
+ name: 'Composite',
45
+ class_name: 'ProviderOperation',
46
+ model_properties: {
47
+ name: {
48
+ client_side_validation: true,
49
+ required: false,
50
+ serialized_name: 'name',
51
+ type: {
52
+ name: 'String'
53
+ }
54
+ },
55
+ display_name: {
56
+ client_side_validation: true,
57
+ required: false,
58
+ serialized_name: 'displayName',
59
+ type: {
60
+ name: 'String'
61
+ }
62
+ },
63
+ description: {
64
+ client_side_validation: true,
65
+ required: false,
66
+ serialized_name: 'description',
67
+ type: {
68
+ name: 'String'
69
+ }
70
+ },
71
+ origin: {
72
+ client_side_validation: true,
73
+ required: false,
74
+ serialized_name: 'origin',
75
+ type: {
76
+ name: 'String'
77
+ }
78
+ },
79
+ properties: {
80
+ client_side_validation: true,
81
+ required: false,
82
+ serialized_name: 'properties',
83
+ type: {
84
+ name: 'Object'
85
+ }
86
+ },
87
+ is_data_action: {
88
+ client_side_validation: true,
89
+ required: false,
90
+ serialized_name: 'isDataAction',
91
+ type: {
92
+ name: 'Boolean'
93
+ }
94
+ }
95
+ }
96
+ }
97
+ }
98
+ end
99
+ end
100
+ end
101
+ end
@@ -0,0 +1,119 @@
1
+ # encoding: utf-8
2
+ # Code generated by Microsoft (R) AutoRest Code Generator.
3
+ # Changes may cause incorrect behavior and will be lost if the code is
4
+ # regenerated.
5
+
6
+ module Azure::Authorization::Mgmt::V2018_01_01_preview
7
+ module Models
8
+ #
9
+ # Provider Operations metadata
10
+ #
11
+ class ProviderOperationsMetadata
12
+
13
+ include MsRestAzure
14
+
15
+ # @return [String] The provider id.
16
+ attr_accessor :id
17
+
18
+ # @return [String] The provider name.
19
+ attr_accessor :name
20
+
21
+ # @return [String] The provider type.
22
+ attr_accessor :type
23
+
24
+ # @return [String] The provider display name.
25
+ attr_accessor :display_name
26
+
27
+ # @return [Array<ResourceType>] The provider resource types
28
+ attr_accessor :resource_types
29
+
30
+ # @return [Array<ProviderOperation>] The provider operations.
31
+ attr_accessor :operations
32
+
33
+
34
+ #
35
+ # Mapper for ProviderOperationsMetadata class as Ruby Hash.
36
+ # This will be used for serialization/deserialization.
37
+ #
38
+ def self.mapper()
39
+ {
40
+ client_side_validation: true,
41
+ required: false,
42
+ serialized_name: 'ProviderOperationsMetadata',
43
+ type: {
44
+ name: 'Composite',
45
+ class_name: 'ProviderOperationsMetadata',
46
+ model_properties: {
47
+ id: {
48
+ client_side_validation: true,
49
+ required: false,
50
+ serialized_name: 'id',
51
+ type: {
52
+ name: 'String'
53
+ }
54
+ },
55
+ name: {
56
+ client_side_validation: true,
57
+ required: false,
58
+ serialized_name: 'name',
59
+ type: {
60
+ name: 'String'
61
+ }
62
+ },
63
+ type: {
64
+ client_side_validation: true,
65
+ required: false,
66
+ serialized_name: 'type',
67
+ type: {
68
+ name: 'String'
69
+ }
70
+ },
71
+ display_name: {
72
+ client_side_validation: true,
73
+ required: false,
74
+ serialized_name: 'displayName',
75
+ type: {
76
+ name: 'String'
77
+ }
78
+ },
79
+ resource_types: {
80
+ client_side_validation: true,
81
+ required: false,
82
+ serialized_name: 'resourceTypes',
83
+ type: {
84
+ name: 'Sequence',
85
+ element: {
86
+ client_side_validation: true,
87
+ required: false,
88
+ serialized_name: 'ResourceTypeElementType',
89
+ type: {
90
+ name: 'Composite',
91
+ class_name: 'ResourceType'
92
+ }
93
+ }
94
+ }
95
+ },
96
+ operations: {
97
+ client_side_validation: true,
98
+ required: false,
99
+ serialized_name: 'operations',
100
+ type: {
101
+ name: 'Sequence',
102
+ element: {
103
+ client_side_validation: true,
104
+ required: false,
105
+ serialized_name: 'ProviderOperationElementType',
106
+ type: {
107
+ name: 'Composite',
108
+ class_name: 'ProviderOperation'
109
+ }
110
+ }
111
+ }
112
+ }
113
+ }
114
+ }
115
+ }
116
+ end
117
+ end
118
+ end
119
+ end
@@ -0,0 +1,98 @@
1
+ # encoding: utf-8
2
+ # Code generated by Microsoft (R) AutoRest Code Generator.
3
+ # Changes may cause incorrect behavior and will be lost if the code is
4
+ # regenerated.
5
+
6
+ module Azure::Authorization::Mgmt::V2018_01_01_preview
7
+ module Models
8
+ #
9
+ # Provider operations metadata list
10
+ #
11
+ class ProviderOperationsMetadataListResult
12
+
13
+ include MsRestAzure
14
+
15
+ include MsRest::JSONable
16
+ # @return [Array<ProviderOperationsMetadata>] The list of providers.
17
+ attr_accessor :value
18
+
19
+ # @return [String] The URL to use for getting the next set of results.
20
+ attr_accessor :next_link
21
+
22
+ # return [Proc] with next page method call.
23
+ attr_accessor :next_method
24
+
25
+ #
26
+ # Gets the rest of the items for the request, enabling auto-pagination.
27
+ #
28
+ # @return [Array<ProviderOperationsMetadata>] operation results.
29
+ #
30
+ def get_all_items
31
+ items = @value
32
+ page = self
33
+ while page.next_link != nil do
34
+ page = page.get_next_page
35
+ items.concat(page.value)
36
+ end
37
+ items
38
+ end
39
+
40
+ #
41
+ # Gets the next page of results.
42
+ #
43
+ # @return [ProviderOperationsMetadataListResult] with next page content.
44
+ #
45
+ def get_next_page
46
+ response = @next_method.call(@next_link).value! unless @next_method.nil?
47
+ unless response.nil?
48
+ @next_link = response.body.next_link
49
+ @value = response.body.value
50
+ self
51
+ end
52
+ end
53
+
54
+ #
55
+ # Mapper for ProviderOperationsMetadataListResult class as Ruby Hash.
56
+ # This will be used for serialization/deserialization.
57
+ #
58
+ def self.mapper()
59
+ {
60
+ client_side_validation: true,
61
+ required: false,
62
+ serialized_name: 'ProviderOperationsMetadataListResult',
63
+ type: {
64
+ name: 'Composite',
65
+ class_name: 'ProviderOperationsMetadataListResult',
66
+ model_properties: {
67
+ value: {
68
+ client_side_validation: true,
69
+ required: false,
70
+ serialized_name: 'value',
71
+ type: {
72
+ name: 'Sequence',
73
+ element: {
74
+ client_side_validation: true,
75
+ required: false,
76
+ serialized_name: 'ProviderOperationsMetadataElementType',
77
+ type: {
78
+ name: 'Composite',
79
+ class_name: 'ProviderOperationsMetadata'
80
+ }
81
+ }
82
+ }
83
+ },
84
+ next_link: {
85
+ client_side_validation: true,
86
+ required: false,
87
+ serialized_name: 'nextLink',
88
+ type: {
89
+ name: 'String'
90
+ }
91
+ }
92
+ }
93
+ }
94
+ }
95
+ end
96
+ end
97
+ end
98
+ end