azure_mgmt_key_vault 0.15.2 → 0.16.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/2015-06-01/generated/azure_mgmt_key_vault/key_vault_management_client.rb +4 -1
- data/lib/2015-06-01/generated/azure_mgmt_key_vault/vaults.rb +48 -43
- data/lib/2016-10-01/generated/azure_mgmt_key_vault.rb +20 -6
- data/lib/2016-10-01/generated/azure_mgmt_key_vault/key_vault_management_client.rb +9 -2
- data/lib/2016-10-01/generated/azure_mgmt_key_vault/models/access_policy_update_kind.rb +17 -0
- data/lib/2016-10-01/generated/azure_mgmt_key_vault/models/check_name_availability_result.rb +77 -0
- data/lib/2016-10-01/generated/azure_mgmt_key_vault/models/log_specification.rb +68 -0
- data/lib/2016-10-01/generated/azure_mgmt_key_vault/models/operation.rb +83 -0
- data/lib/2016-10-01/generated/azure_mgmt_key_vault/models/operation_display.rb +79 -0
- data/lib/2016-10-01/generated/azure_mgmt_key_vault/models/operation_list_result.rb +100 -0
- data/lib/2016-10-01/generated/azure_mgmt_key_vault/models/reason.rb +16 -0
- data/lib/2016-10-01/generated/azure_mgmt_key_vault/models/resource.rb +2 -1
- data/lib/2016-10-01/generated/azure_mgmt_key_vault/models/resource_list_result.rb +2 -2
- data/lib/2016-10-01/generated/azure_mgmt_key_vault/models/service_specification.rb +55 -0
- data/lib/2016-10-01/generated/azure_mgmt_key_vault/models/vault.rb +2 -1
- data/lib/2016-10-01/generated/azure_mgmt_key_vault/models/vault_access_policy_parameters.rb +95 -0
- data/lib/2016-10-01/generated/azure_mgmt_key_vault/models/vault_access_policy_properties.rb +57 -0
- data/lib/2016-10-01/generated/azure_mgmt_key_vault/models/vault_check_name_availability_parameters.rb +60 -0
- data/lib/2016-10-01/generated/azure_mgmt_key_vault/models/vault_list_result.rb +2 -2
- data/lib/2016-10-01/generated/azure_mgmt_key_vault/models/vault_patch_parameters.rb +67 -0
- data/lib/2016-10-01/generated/azure_mgmt_key_vault/models/vault_patch_properties.rb +145 -0
- data/lib/2016-10-01/generated/azure_mgmt_key_vault/models/vault_properties.rb +1 -3
- data/lib/2016-10-01/generated/azure_mgmt_key_vault/operations.rb +216 -0
- data/lib/2016-10-01/generated/azure_mgmt_key_vault/vaults.rb +692 -91
- data/lib/profiles/latest/keyvault_latest_profile_client.rb +28 -9
- data/lib/profiles/latest/keyvault_module_definition.rb +0 -1
- data/lib/profiles/latest/modules/keyvault_profile_module.rb +142 -69
- data/lib/version.rb +1 -1
- metadata +17 -3
@@ -0,0 +1,57 @@
|
|
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::KeyVault::Mgmt::V2016_10_01
|
7
|
+
module Models
|
8
|
+
#
|
9
|
+
# Properties of the vault access policy
|
10
|
+
#
|
11
|
+
class VaultAccessPolicyProperties
|
12
|
+
|
13
|
+
include MsRestAzure
|
14
|
+
|
15
|
+
# @return [Array<AccessPolicyEntry>] An array of 0 to 16 identities that
|
16
|
+
# have access to the key vault. All identities in the array must use the
|
17
|
+
# same tenant ID as the key vault's tenant ID.
|
18
|
+
attr_accessor :access_policies
|
19
|
+
|
20
|
+
|
21
|
+
#
|
22
|
+
# Mapper for VaultAccessPolicyProperties class as Ruby Hash.
|
23
|
+
# This will be used for serialization/deserialization.
|
24
|
+
#
|
25
|
+
def self.mapper()
|
26
|
+
{
|
27
|
+
client_side_validation: true,
|
28
|
+
required: false,
|
29
|
+
serialized_name: 'VaultAccessPolicyProperties',
|
30
|
+
type: {
|
31
|
+
name: 'Composite',
|
32
|
+
class_name: 'VaultAccessPolicyProperties',
|
33
|
+
model_properties: {
|
34
|
+
access_policies: {
|
35
|
+
client_side_validation: true,
|
36
|
+
required: true,
|
37
|
+
serialized_name: 'accessPolicies',
|
38
|
+
type: {
|
39
|
+
name: 'Sequence',
|
40
|
+
element: {
|
41
|
+
client_side_validation: true,
|
42
|
+
required: false,
|
43
|
+
serialized_name: 'AccessPolicyEntryElementType',
|
44
|
+
type: {
|
45
|
+
name: 'Composite',
|
46
|
+
class_name: 'AccessPolicyEntry'
|
47
|
+
}
|
48
|
+
}
|
49
|
+
}
|
50
|
+
}
|
51
|
+
}
|
52
|
+
}
|
53
|
+
}
|
54
|
+
end
|
55
|
+
end
|
56
|
+
end
|
57
|
+
end
|
@@ -0,0 +1,60 @@
|
|
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::KeyVault::Mgmt::V2016_10_01
|
7
|
+
module Models
|
8
|
+
#
|
9
|
+
# The parameters used to check the availabity of the vault name.
|
10
|
+
#
|
11
|
+
class VaultCheckNameAvailabilityParameters
|
12
|
+
|
13
|
+
include MsRestAzure
|
14
|
+
|
15
|
+
# @return [String] The vault name.
|
16
|
+
attr_accessor :name
|
17
|
+
|
18
|
+
# @return [String] The type of resource, Microsoft.KeyVault/vaults.
|
19
|
+
# Default value: 'Microsoft.KeyVault/vaults' .
|
20
|
+
attr_accessor :type
|
21
|
+
|
22
|
+
|
23
|
+
#
|
24
|
+
# Mapper for VaultCheckNameAvailabilityParameters class as Ruby Hash.
|
25
|
+
# This will be used for serialization/deserialization.
|
26
|
+
#
|
27
|
+
def self.mapper()
|
28
|
+
{
|
29
|
+
client_side_validation: true,
|
30
|
+
required: false,
|
31
|
+
serialized_name: 'VaultCheckNameAvailabilityParameters',
|
32
|
+
type: {
|
33
|
+
name: 'Composite',
|
34
|
+
class_name: 'VaultCheckNameAvailabilityParameters',
|
35
|
+
model_properties: {
|
36
|
+
name: {
|
37
|
+
client_side_validation: true,
|
38
|
+
required: true,
|
39
|
+
serialized_name: 'name',
|
40
|
+
type: {
|
41
|
+
name: 'String'
|
42
|
+
}
|
43
|
+
},
|
44
|
+
type: {
|
45
|
+
client_side_validation: true,
|
46
|
+
required: true,
|
47
|
+
is_constant: true,
|
48
|
+
serialized_name: 'type',
|
49
|
+
default_value: 'Microsoft.KeyVault/vaults',
|
50
|
+
type: {
|
51
|
+
name: 'String'
|
52
|
+
}
|
53
|
+
}
|
54
|
+
}
|
55
|
+
}
|
56
|
+
}
|
57
|
+
end
|
58
|
+
end
|
59
|
+
end
|
60
|
+
end
|
@@ -13,10 +13,10 @@ module Azure::KeyVault::Mgmt::V2016_10_01
|
|
13
13
|
include MsRestAzure
|
14
14
|
|
15
15
|
include MsRest::JSONable
|
16
|
-
# @return [Array<Vault>]
|
16
|
+
# @return [Array<Vault>] The list of vaults.
|
17
17
|
attr_accessor :value
|
18
18
|
|
19
|
-
# @return [String]
|
19
|
+
# @return [String] The URL to get the next set of vaults.
|
20
20
|
attr_accessor :next_link
|
21
21
|
|
22
22
|
# return [Proc] with next page method call.
|
@@ -0,0 +1,67 @@
|
|
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::KeyVault::Mgmt::V2016_10_01
|
7
|
+
module Models
|
8
|
+
#
|
9
|
+
# Parameters for creating or updating a vault
|
10
|
+
#
|
11
|
+
class VaultPatchParameters
|
12
|
+
|
13
|
+
include MsRestAzure
|
14
|
+
|
15
|
+
# @return [Hash{String => String}] The tags that will be assigned to the
|
16
|
+
# key vault.
|
17
|
+
attr_accessor :tags
|
18
|
+
|
19
|
+
# @return [VaultPatchProperties] Properties of the vault
|
20
|
+
attr_accessor :properties
|
21
|
+
|
22
|
+
|
23
|
+
#
|
24
|
+
# Mapper for VaultPatchParameters class as Ruby Hash.
|
25
|
+
# This will be used for serialization/deserialization.
|
26
|
+
#
|
27
|
+
def self.mapper()
|
28
|
+
{
|
29
|
+
client_side_validation: true,
|
30
|
+
required: false,
|
31
|
+
serialized_name: 'VaultPatchParameters',
|
32
|
+
type: {
|
33
|
+
name: 'Composite',
|
34
|
+
class_name: 'VaultPatchParameters',
|
35
|
+
model_properties: {
|
36
|
+
tags: {
|
37
|
+
client_side_validation: true,
|
38
|
+
required: false,
|
39
|
+
serialized_name: 'tags',
|
40
|
+
type: {
|
41
|
+
name: 'Dictionary',
|
42
|
+
value: {
|
43
|
+
client_side_validation: true,
|
44
|
+
required: false,
|
45
|
+
serialized_name: 'StringElementType',
|
46
|
+
type: {
|
47
|
+
name: 'String'
|
48
|
+
}
|
49
|
+
}
|
50
|
+
}
|
51
|
+
},
|
52
|
+
properties: {
|
53
|
+
client_side_validation: true,
|
54
|
+
required: false,
|
55
|
+
serialized_name: 'properties',
|
56
|
+
type: {
|
57
|
+
name: 'Composite',
|
58
|
+
class_name: 'VaultPatchProperties'
|
59
|
+
}
|
60
|
+
}
|
61
|
+
}
|
62
|
+
}
|
63
|
+
}
|
64
|
+
end
|
65
|
+
end
|
66
|
+
end
|
67
|
+
end
|
@@ -0,0 +1,145 @@
|
|
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::KeyVault::Mgmt::V2016_10_01
|
7
|
+
module Models
|
8
|
+
#
|
9
|
+
# Properties of the vault
|
10
|
+
#
|
11
|
+
class VaultPatchProperties
|
12
|
+
|
13
|
+
include MsRestAzure
|
14
|
+
|
15
|
+
# @return The Azure Active Directory tenant ID that should be used for
|
16
|
+
# authenticating requests to the key vault.
|
17
|
+
attr_accessor :tenant_id
|
18
|
+
|
19
|
+
# @return [Sku] SKU details
|
20
|
+
attr_accessor :sku
|
21
|
+
|
22
|
+
# @return [Array<AccessPolicyEntry>] An array of 0 to 16 identities that
|
23
|
+
# have access to the key vault. All identities in the array must use the
|
24
|
+
# same tenant ID as the key vault's tenant ID.
|
25
|
+
attr_accessor :access_policies
|
26
|
+
|
27
|
+
# @return [Boolean] Property to specify whether Azure Virtual Machines
|
28
|
+
# are permitted to retrieve certificates stored as secrets from the key
|
29
|
+
# vault.
|
30
|
+
attr_accessor :enabled_for_deployment
|
31
|
+
|
32
|
+
# @return [Boolean] Property to specify whether Azure Disk Encryption is
|
33
|
+
# permitted to retrieve secrets from the vault and unwrap keys.
|
34
|
+
attr_accessor :enabled_for_disk_encryption
|
35
|
+
|
36
|
+
# @return [Boolean] Property to specify whether Azure Resource Manager is
|
37
|
+
# permitted to retrieve secrets from the key vault.
|
38
|
+
attr_accessor :enabled_for_template_deployment
|
39
|
+
|
40
|
+
# @return [Boolean] Property to specify whether the 'soft delete'
|
41
|
+
# functionality is enabled for this key vault. It does not accept false
|
42
|
+
# value.
|
43
|
+
attr_accessor :enable_soft_delete
|
44
|
+
|
45
|
+
# @return [CreateMode] The vault's create mode to indicate whether the
|
46
|
+
# vault need to be recovered or not. Possible values include: 'recover',
|
47
|
+
# 'default'
|
48
|
+
attr_accessor :create_mode
|
49
|
+
|
50
|
+
|
51
|
+
#
|
52
|
+
# Mapper for VaultPatchProperties class as Ruby Hash.
|
53
|
+
# This will be used for serialization/deserialization.
|
54
|
+
#
|
55
|
+
def self.mapper()
|
56
|
+
{
|
57
|
+
client_side_validation: true,
|
58
|
+
required: false,
|
59
|
+
serialized_name: 'VaultPatchProperties',
|
60
|
+
type: {
|
61
|
+
name: 'Composite',
|
62
|
+
class_name: 'VaultPatchProperties',
|
63
|
+
model_properties: {
|
64
|
+
tenant_id: {
|
65
|
+
client_side_validation: true,
|
66
|
+
required: false,
|
67
|
+
serialized_name: 'tenantId',
|
68
|
+
type: {
|
69
|
+
name: 'String'
|
70
|
+
}
|
71
|
+
},
|
72
|
+
sku: {
|
73
|
+
client_side_validation: true,
|
74
|
+
required: false,
|
75
|
+
serialized_name: 'sku',
|
76
|
+
type: {
|
77
|
+
name: 'Composite',
|
78
|
+
class_name: 'Sku'
|
79
|
+
}
|
80
|
+
},
|
81
|
+
access_policies: {
|
82
|
+
client_side_validation: true,
|
83
|
+
required: false,
|
84
|
+
serialized_name: 'accessPolicies',
|
85
|
+
type: {
|
86
|
+
name: 'Sequence',
|
87
|
+
element: {
|
88
|
+
client_side_validation: true,
|
89
|
+
required: false,
|
90
|
+
serialized_name: 'AccessPolicyEntryElementType',
|
91
|
+
type: {
|
92
|
+
name: 'Composite',
|
93
|
+
class_name: 'AccessPolicyEntry'
|
94
|
+
}
|
95
|
+
}
|
96
|
+
}
|
97
|
+
},
|
98
|
+
enabled_for_deployment: {
|
99
|
+
client_side_validation: true,
|
100
|
+
required: false,
|
101
|
+
serialized_name: 'enabledForDeployment',
|
102
|
+
type: {
|
103
|
+
name: 'Boolean'
|
104
|
+
}
|
105
|
+
},
|
106
|
+
enabled_for_disk_encryption: {
|
107
|
+
client_side_validation: true,
|
108
|
+
required: false,
|
109
|
+
serialized_name: 'enabledForDiskEncryption',
|
110
|
+
type: {
|
111
|
+
name: 'Boolean'
|
112
|
+
}
|
113
|
+
},
|
114
|
+
enabled_for_template_deployment: {
|
115
|
+
client_side_validation: true,
|
116
|
+
required: false,
|
117
|
+
serialized_name: 'enabledForTemplateDeployment',
|
118
|
+
type: {
|
119
|
+
name: 'Boolean'
|
120
|
+
}
|
121
|
+
},
|
122
|
+
enable_soft_delete: {
|
123
|
+
client_side_validation: true,
|
124
|
+
required: false,
|
125
|
+
serialized_name: 'enableSoftDelete',
|
126
|
+
type: {
|
127
|
+
name: 'Boolean'
|
128
|
+
}
|
129
|
+
},
|
130
|
+
create_mode: {
|
131
|
+
client_side_validation: true,
|
132
|
+
required: false,
|
133
|
+
serialized_name: 'createMode',
|
134
|
+
type: {
|
135
|
+
name: 'Enum',
|
136
|
+
module: 'CreateMode'
|
137
|
+
}
|
138
|
+
}
|
139
|
+
}
|
140
|
+
}
|
141
|
+
}
|
142
|
+
end
|
143
|
+
end
|
144
|
+
end
|
145
|
+
end
|
@@ -87,9 +87,6 @@ module Azure::KeyVault::Mgmt::V2016_10_01
|
|
87
87
|
client_side_validation: true,
|
88
88
|
required: false,
|
89
89
|
serialized_name: 'accessPolicies',
|
90
|
-
constraints: {
|
91
|
-
MaxItems: 16
|
92
|
-
},
|
93
90
|
type: {
|
94
91
|
name: 'Sequence',
|
95
92
|
element: {
|
@@ -106,6 +103,7 @@ module Azure::KeyVault::Mgmt::V2016_10_01
|
|
106
103
|
vault_uri: {
|
107
104
|
client_side_validation: true,
|
108
105
|
required: false,
|
106
|
+
read_only: true,
|
109
107
|
serialized_name: 'vaultUri',
|
110
108
|
type: {
|
111
109
|
name: 'String'
|
@@ -0,0 +1,216 @@
|
|
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::KeyVault::Mgmt::V2016_10_01
|
7
|
+
#
|
8
|
+
# The Azure management API provides a RESTful set of web services that
|
9
|
+
# interact with Azure Key Vault.
|
10
|
+
#
|
11
|
+
class Operations
|
12
|
+
include MsRestAzure
|
13
|
+
|
14
|
+
#
|
15
|
+
# Creates and initializes a new instance of the Operations class.
|
16
|
+
# @param client service class for accessing basic functionality.
|
17
|
+
#
|
18
|
+
def initialize(client)
|
19
|
+
@client = client
|
20
|
+
end
|
21
|
+
|
22
|
+
# @return [KeyVaultManagementClient] reference to the KeyVaultManagementClient
|
23
|
+
attr_reader :client
|
24
|
+
|
25
|
+
#
|
26
|
+
# Lists all of the available Key Vault Rest API operations.
|
27
|
+
#
|
28
|
+
# @param custom_headers [Hash{String => String}] A hash of custom headers that
|
29
|
+
# will be added to the HTTP request.
|
30
|
+
#
|
31
|
+
# @return [Array<Operation>] operation results.
|
32
|
+
#
|
33
|
+
def list(custom_headers:nil)
|
34
|
+
first_page = list_as_lazy(custom_headers:custom_headers)
|
35
|
+
first_page.get_all_items
|
36
|
+
end
|
37
|
+
|
38
|
+
#
|
39
|
+
# Lists all of the available Key Vault Rest API operations.
|
40
|
+
#
|
41
|
+
# @param custom_headers [Hash{String => String}] A hash of custom headers that
|
42
|
+
# will be added to the HTTP request.
|
43
|
+
#
|
44
|
+
# @return [MsRestAzure::AzureOperationResponse] HTTP response information.
|
45
|
+
#
|
46
|
+
def list_with_http_info(custom_headers:nil)
|
47
|
+
list_async(custom_headers:custom_headers).value!
|
48
|
+
end
|
49
|
+
|
50
|
+
#
|
51
|
+
# Lists all of the available Key Vault Rest API operations.
|
52
|
+
#
|
53
|
+
# @param [Hash{String => String}] A hash of custom headers that will be added
|
54
|
+
# to the HTTP request.
|
55
|
+
#
|
56
|
+
# @return [Concurrent::Promise] Promise object which holds the HTTP response.
|
57
|
+
#
|
58
|
+
def list_async(custom_headers:nil)
|
59
|
+
fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
|
60
|
+
|
61
|
+
|
62
|
+
request_headers = {}
|
63
|
+
request_headers['Content-Type'] = 'application/json; charset=utf-8'
|
64
|
+
|
65
|
+
# Set Headers
|
66
|
+
request_headers['x-ms-client-request-id'] = SecureRandom.uuid
|
67
|
+
request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
|
68
|
+
path_template = 'providers/Microsoft.KeyVault/operations'
|
69
|
+
|
70
|
+
request_url = @base_url || @client.base_url
|
71
|
+
|
72
|
+
options = {
|
73
|
+
middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
|
74
|
+
query_params: {'api-version' => @client.api_version},
|
75
|
+
headers: request_headers.merge(custom_headers || {}),
|
76
|
+
base_url: request_url
|
77
|
+
}
|
78
|
+
promise = @client.make_request_async(:get, path_template, options)
|
79
|
+
|
80
|
+
promise = promise.then do |result|
|
81
|
+
http_response = result.response
|
82
|
+
status_code = http_response.status
|
83
|
+
response_content = http_response.body
|
84
|
+
unless status_code == 200
|
85
|
+
error_model = JSON.load(response_content)
|
86
|
+
fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
|
87
|
+
end
|
88
|
+
|
89
|
+
result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
|
90
|
+
# Deserialize Response
|
91
|
+
if status_code == 200
|
92
|
+
begin
|
93
|
+
parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
|
94
|
+
result_mapper = Azure::KeyVault::Mgmt::V2016_10_01::Models::OperationListResult.mapper()
|
95
|
+
result.body = @client.deserialize(result_mapper, parsed_response)
|
96
|
+
rescue Exception => e
|
97
|
+
fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
|
98
|
+
end
|
99
|
+
end
|
100
|
+
|
101
|
+
result
|
102
|
+
end
|
103
|
+
|
104
|
+
promise.execute
|
105
|
+
end
|
106
|
+
|
107
|
+
#
|
108
|
+
# Lists all of the available Key Vault Rest API operations.
|
109
|
+
#
|
110
|
+
# @param next_page_link [String] The NextLink from the previous successful call
|
111
|
+
# to List operation.
|
112
|
+
# @param custom_headers [Hash{String => String}] A hash of custom headers that
|
113
|
+
# will be added to the HTTP request.
|
114
|
+
#
|
115
|
+
# @return [OperationListResult] operation results.
|
116
|
+
#
|
117
|
+
def list_next(next_page_link, custom_headers:nil)
|
118
|
+
response = list_next_async(next_page_link, custom_headers:custom_headers).value!
|
119
|
+
response.body unless response.nil?
|
120
|
+
end
|
121
|
+
|
122
|
+
#
|
123
|
+
# Lists all of the available Key Vault Rest API operations.
|
124
|
+
#
|
125
|
+
# @param next_page_link [String] The NextLink from the previous successful call
|
126
|
+
# to List operation.
|
127
|
+
# @param custom_headers [Hash{String => String}] A hash of custom headers that
|
128
|
+
# will be added to the HTTP request.
|
129
|
+
#
|
130
|
+
# @return [MsRestAzure::AzureOperationResponse] HTTP response information.
|
131
|
+
#
|
132
|
+
def list_next_with_http_info(next_page_link, custom_headers:nil)
|
133
|
+
list_next_async(next_page_link, custom_headers:custom_headers).value!
|
134
|
+
end
|
135
|
+
|
136
|
+
#
|
137
|
+
# Lists all of the available Key Vault Rest API operations.
|
138
|
+
#
|
139
|
+
# @param next_page_link [String] The NextLink from the previous successful call
|
140
|
+
# to List operation.
|
141
|
+
# @param [Hash{String => String}] A hash of custom headers that will be added
|
142
|
+
# to the HTTP request.
|
143
|
+
#
|
144
|
+
# @return [Concurrent::Promise] Promise object which holds the HTTP response.
|
145
|
+
#
|
146
|
+
def list_next_async(next_page_link, custom_headers:nil)
|
147
|
+
fail ArgumentError, 'next_page_link is nil' if next_page_link.nil?
|
148
|
+
|
149
|
+
|
150
|
+
request_headers = {}
|
151
|
+
request_headers['Content-Type'] = 'application/json; charset=utf-8'
|
152
|
+
|
153
|
+
# Set Headers
|
154
|
+
request_headers['x-ms-client-request-id'] = SecureRandom.uuid
|
155
|
+
request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
|
156
|
+
path_template = '{nextLink}'
|
157
|
+
|
158
|
+
request_url = @base_url || @client.base_url
|
159
|
+
|
160
|
+
options = {
|
161
|
+
middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
|
162
|
+
skip_encoding_path_params: {'nextLink' => next_page_link},
|
163
|
+
headers: request_headers.merge(custom_headers || {}),
|
164
|
+
base_url: request_url
|
165
|
+
}
|
166
|
+
promise = @client.make_request_async(:get, path_template, options)
|
167
|
+
|
168
|
+
promise = promise.then do |result|
|
169
|
+
http_response = result.response
|
170
|
+
status_code = http_response.status
|
171
|
+
response_content = http_response.body
|
172
|
+
unless status_code == 200
|
173
|
+
error_model = JSON.load(response_content)
|
174
|
+
fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
|
175
|
+
end
|
176
|
+
|
177
|
+
result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
|
178
|
+
# Deserialize Response
|
179
|
+
if status_code == 200
|
180
|
+
begin
|
181
|
+
parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
|
182
|
+
result_mapper = Azure::KeyVault::Mgmt::V2016_10_01::Models::OperationListResult.mapper()
|
183
|
+
result.body = @client.deserialize(result_mapper, parsed_response)
|
184
|
+
rescue Exception => e
|
185
|
+
fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
|
186
|
+
end
|
187
|
+
end
|
188
|
+
|
189
|
+
result
|
190
|
+
end
|
191
|
+
|
192
|
+
promise.execute
|
193
|
+
end
|
194
|
+
|
195
|
+
#
|
196
|
+
# Lists all of the available Key Vault Rest API operations.
|
197
|
+
#
|
198
|
+
# @param custom_headers [Hash{String => String}] A hash of custom headers that
|
199
|
+
# will be added to the HTTP request.
|
200
|
+
#
|
201
|
+
# @return [OperationListResult] which provide lazy access to pages of the
|
202
|
+
# response.
|
203
|
+
#
|
204
|
+
def list_as_lazy(custom_headers:nil)
|
205
|
+
response = list_async(custom_headers:custom_headers).value!
|
206
|
+
unless response.nil?
|
207
|
+
page = response.body
|
208
|
+
page.next_method = Proc.new do |next_page_link|
|
209
|
+
list_next_async(next_page_link, custom_headers:custom_headers)
|
210
|
+
end
|
211
|
+
page
|
212
|
+
end
|
213
|
+
end
|
214
|
+
|
215
|
+
end
|
216
|
+
end
|