azure_mgmt_network 0.18.5 → 0.18.6

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.
Files changed (128) hide show
  1. checksums.yaml +4 -4
  2. data/lib/2015-05-01-preview/generated/azure_mgmt_network/network_management_client.rb +1 -1
  3. data/lib/2015-06-15/generated/azure_mgmt_network/network_management_client.rb +1 -1
  4. data/lib/2016-03-30/generated/azure_mgmt_network/network_management_client.rb +1 -1
  5. data/lib/2016-06-01/generated/azure_mgmt_network/network_management_client.rb +1 -1
  6. data/lib/2016-09-01/generated/azure_mgmt_network/network_management_client.rb +1 -1
  7. data/lib/2016-12-01/generated/azure_mgmt_network/network_management_client.rb +1 -1
  8. data/lib/2017-03-01/generated/azure_mgmt_network/network_management_client.rb +1 -1
  9. data/lib/2017-03-30/generated/azure_mgmt_network/models/service_endpoint_policy_definition.rb +1 -1
  10. data/lib/2017-03-30/generated/azure_mgmt_network/network_management_client.rb +1 -1
  11. data/lib/2017-09-01/generated/azure_mgmt_network/network_management_client.rb +1 -1
  12. data/lib/2017-10-01/generated/azure_mgmt_network/network_management_client.rb +1 -1
  13. data/lib/2017-11-01/generated/azure_mgmt_network/network_management_client.rb +1 -1
  14. data/lib/2018-01-01/generated/azure_mgmt_network/network_management_client.rb +1 -1
  15. data/lib/2018-02-01/generated/azure_mgmt_network/network_management_client.rb +1 -1
  16. data/lib/2018-04-01/generated/azure_mgmt_network/network_management_client.rb +1 -1
  17. data/lib/2018-06-01/generated/azure_mgmt_network/network_management_client.rb +1 -1
  18. data/lib/2018-07-01/generated/azure_mgmt_network/network_management_client.rb +1 -1
  19. data/lib/2018-08-01/generated/azure_mgmt_network/network_management_client.rb +1 -1
  20. data/lib/2018-10-01/generated/azure_mgmt_network/network_management_client.rb +1 -1
  21. data/lib/2018-11-01/generated/azure_mgmt_network/network_management_client.rb +1 -1
  22. data/lib/2018-12-01/generated/azure_mgmt_network.rb +157 -139
  23. data/lib/2018-12-01/generated/azure_mgmt_network/application_gateways.rb +1 -1
  24. data/lib/2018-12-01/generated/azure_mgmt_network/application_security_groups.rb +1 -1
  25. data/lib/2018-12-01/generated/azure_mgmt_network/available_delegations.rb +1 -1
  26. data/lib/2018-12-01/generated/azure_mgmt_network/available_endpoint_services.rb +1 -1
  27. data/lib/2018-12-01/generated/azure_mgmt_network/available_resource_group_delegations.rb +1 -1
  28. data/lib/2018-12-01/generated/azure_mgmt_network/azure_firewall_fqdn_tags.rb +1 -1
  29. data/lib/2018-12-01/generated/azure_mgmt_network/azure_firewalls.rb +1 -1
  30. data/lib/2018-12-01/generated/azure_mgmt_network/bgp_service_communities.rb +1 -1
  31. data/lib/2018-12-01/generated/azure_mgmt_network/connection_monitors.rb +1 -1
  32. data/lib/2018-12-01/generated/azure_mgmt_network/ddos_custom_policies.rb +1 -1
  33. data/lib/2018-12-01/generated/azure_mgmt_network/ddos_protection_plans.rb +1 -1
  34. data/lib/2018-12-01/generated/azure_mgmt_network/default_security_rules.rb +1 -1
  35. data/lib/2018-12-01/generated/azure_mgmt_network/express_route_circuit_authorizations.rb +1 -1
  36. data/lib/2018-12-01/generated/azure_mgmt_network/express_route_circuit_connections.rb +1 -1
  37. data/lib/2018-12-01/generated/azure_mgmt_network/express_route_circuit_peerings.rb +1 -1
  38. data/lib/2018-12-01/generated/azure_mgmt_network/express_route_circuits.rb +1 -1
  39. data/lib/2018-12-01/generated/azure_mgmt_network/express_route_connections.rb +1 -1
  40. data/lib/2018-12-01/generated/azure_mgmt_network/express_route_cross_connection_peerings.rb +1 -1
  41. data/lib/2018-12-01/generated/azure_mgmt_network/express_route_cross_connections.rb +1 -1
  42. data/lib/2018-12-01/generated/azure_mgmt_network/express_route_gateways.rb +1 -1
  43. data/lib/2018-12-01/generated/azure_mgmt_network/express_route_links.rb +1 -1
  44. data/lib/2018-12-01/generated/azure_mgmt_network/express_route_ports.rb +1 -1
  45. data/lib/2018-12-01/generated/azure_mgmt_network/express_route_ports_locations.rb +1 -1
  46. data/lib/2018-12-01/generated/azure_mgmt_network/express_route_service_providers.rb +1 -1
  47. data/lib/2018-12-01/generated/azure_mgmt_network/hub_virtual_network_connections.rb +1 -1
  48. data/lib/2018-12-01/generated/azure_mgmt_network/inbound_nat_rules.rb +1 -1
  49. data/lib/2018-12-01/generated/azure_mgmt_network/interface_endpoints.rb +1 -1
  50. data/lib/2018-12-01/generated/azure_mgmt_network/load_balancer_backend_address_pools.rb +1 -1
  51. data/lib/2018-12-01/generated/azure_mgmt_network/load_balancer_frontend_ipconfigurations.rb +1 -1
  52. data/lib/2018-12-01/generated/azure_mgmt_network/load_balancer_load_balancing_rules.rb +1 -1
  53. data/lib/2018-12-01/generated/azure_mgmt_network/load_balancer_network_interfaces.rb +1 -1
  54. data/lib/2018-12-01/generated/azure_mgmt_network/load_balancer_outbound_rules.rb +1 -1
  55. data/lib/2018-12-01/generated/azure_mgmt_network/load_balancer_probes.rb +1 -1
  56. data/lib/2018-12-01/generated/azure_mgmt_network/load_balancers.rb +1 -1
  57. data/lib/2018-12-01/generated/azure_mgmt_network/local_network_gateways.rb +1 -1
  58. data/lib/2018-12-01/generated/azure_mgmt_network/models/application_gateway.rb +46 -12
  59. data/lib/2018-12-01/generated/azure_mgmt_network/models/application_gateway_backend_health_server.rb +11 -0
  60. data/lib/2018-12-01/generated/azure_mgmt_network/models/application_gateway_probe.rb +1 -1
  61. data/lib/2018-12-01/generated/azure_mgmt_network/models/express_route_circuit.rb +11 -0
  62. data/lib/2018-12-01/generated/azure_mgmt_network/models/express_route_circuit_peering.rb +23 -0
  63. data/lib/2018-12-01/generated/azure_mgmt_network/models/express_route_circuit_sku.rb +2 -2
  64. data/lib/2018-12-01/generated/azure_mgmt_network/models/express_route_circuit_sku_tier.rb +1 -0
  65. data/lib/2018-12-01/generated/azure_mgmt_network/models/match_condition.rb +118 -0
  66. data/lib/2018-12-01/generated/azure_mgmt_network/models/match_variable.rb +60 -0
  67. data/lib/2018-12-01/generated/azure_mgmt_network/models/p2svpn_server_configuration.rb +1 -1
  68. data/lib/2018-12-01/generated/azure_mgmt_network/models/peer_express_route_circuit_connection.rb +159 -0
  69. data/lib/2018-12-01/generated/azure_mgmt_network/models/peer_express_route_circuit_connection_list_result.rb +104 -0
  70. data/lib/2018-12-01/generated/azure_mgmt_network/models/policy_settings.rb +61 -0
  71. data/lib/2018-12-01/generated/azure_mgmt_network/models/service_endpoint_policy_definition.rb +1 -1
  72. data/lib/2018-12-01/generated/azure_mgmt_network/models/virtual_hub.rb +1 -1
  73. data/lib/2018-12-01/generated/azure_mgmt_network/models/virtual_hub_route.rb +1 -1
  74. data/lib/2018-12-01/generated/azure_mgmt_network/models/virtual_hub_route_table.rb +1 -1
  75. data/lib/2018-12-01/generated/azure_mgmt_network/models/virtual_network_connection_gateway_reference.rb +1 -1
  76. data/lib/2018-12-01/generated/azure_mgmt_network/models/virtual_wan.rb +1 -1
  77. data/lib/2018-12-01/generated/azure_mgmt_network/models/vpn_connection.rb +1 -1
  78. data/lib/2018-12-01/generated/azure_mgmt_network/models/vpn_gateway.rb +1 -1
  79. data/lib/2018-12-01/generated/azure_mgmt_network/models/web_application_firewall_action.rb +17 -0
  80. data/lib/2018-12-01/generated/azure_mgmt_network/models/web_application_firewall_custom_rule.rb +119 -0
  81. data/lib/2018-12-01/generated/azure_mgmt_network/models/web_application_firewall_enabled_state.rb +16 -0
  82. data/lib/2018-12-01/generated/azure_mgmt_network/models/web_application_firewall_match_variable.rb +22 -0
  83. data/lib/2018-12-01/generated/azure_mgmt_network/models/web_application_firewall_mode.rb +16 -0
  84. data/lib/2018-12-01/generated/azure_mgmt_network/models/web_application_firewall_operator.rb +24 -0
  85. data/lib/2018-12-01/generated/azure_mgmt_network/models/web_application_firewall_policy.rb +179 -0
  86. data/lib/2018-12-01/generated/azure_mgmt_network/models/web_application_firewall_policy_list_result.rb +105 -0
  87. data/lib/2018-12-01/generated/azure_mgmt_network/models/web_application_firewall_policy_resource_state.rb +20 -0
  88. data/lib/2018-12-01/generated/azure_mgmt_network/models/web_application_firewall_rule_type.rb +16 -0
  89. data/lib/2018-12-01/generated/azure_mgmt_network/models/web_application_firewall_transform.rb +20 -0
  90. data/lib/2018-12-01/generated/azure_mgmt_network/network_interface_ipconfigurations.rb +1 -1
  91. data/lib/2018-12-01/generated/azure_mgmt_network/network_interface_load_balancers.rb +1 -1
  92. data/lib/2018-12-01/generated/azure_mgmt_network/network_interface_tap_configurations.rb +1 -1
  93. data/lib/2018-12-01/generated/azure_mgmt_network/network_interfaces.rb +1 -1
  94. data/lib/2018-12-01/generated/azure_mgmt_network/network_management_client.rb +11 -1
  95. data/lib/2018-12-01/generated/azure_mgmt_network/network_profiles.rb +1 -1
  96. data/lib/2018-12-01/generated/azure_mgmt_network/network_security_groups.rb +1 -1
  97. data/lib/2018-12-01/generated/azure_mgmt_network/network_watchers.rb +1 -1
  98. data/lib/2018-12-01/generated/azure_mgmt_network/operations.rb +1 -1
  99. data/lib/2018-12-01/generated/azure_mgmt_network/p2s_vpn_gateways.rb +1 -1
  100. data/lib/2018-12-01/generated/azure_mgmt_network/p2s_vpn_server_configurations.rb +1 -1
  101. data/lib/2018-12-01/generated/azure_mgmt_network/packet_captures.rb +1 -1
  102. data/lib/2018-12-01/generated/azure_mgmt_network/peer_express_route_circuit_connections.rb +345 -0
  103. data/lib/2018-12-01/generated/azure_mgmt_network/public_ipaddresses.rb +1 -1
  104. data/lib/2018-12-01/generated/azure_mgmt_network/public_ipprefixes.rb +1 -1
  105. data/lib/2018-12-01/generated/azure_mgmt_network/route_filter_rules.rb +1 -1
  106. data/lib/2018-12-01/generated/azure_mgmt_network/route_filters.rb +1 -1
  107. data/lib/2018-12-01/generated/azure_mgmt_network/route_tables.rb +1 -1
  108. data/lib/2018-12-01/generated/azure_mgmt_network/routes.rb +1 -1
  109. data/lib/2018-12-01/generated/azure_mgmt_network/security_rules.rb +1 -1
  110. data/lib/2018-12-01/generated/azure_mgmt_network/service_endpoint_policies.rb +1 -1
  111. data/lib/2018-12-01/generated/azure_mgmt_network/service_endpoint_policy_definitions.rb +1 -1
  112. data/lib/2018-12-01/generated/azure_mgmt_network/subnets.rb +1 -1
  113. data/lib/2018-12-01/generated/azure_mgmt_network/usages.rb +1 -1
  114. data/lib/2018-12-01/generated/azure_mgmt_network/virtual_hubs.rb +1 -1
  115. data/lib/2018-12-01/generated/azure_mgmt_network/virtual_network_gateway_connections.rb +1 -1
  116. data/lib/2018-12-01/generated/azure_mgmt_network/virtual_network_gateways.rb +1 -1
  117. data/lib/2018-12-01/generated/azure_mgmt_network/virtual_network_peerings.rb +1 -1
  118. data/lib/2018-12-01/generated/azure_mgmt_network/virtual_network_taps.rb +1 -1
  119. data/lib/2018-12-01/generated/azure_mgmt_network/virtual_networks.rb +1 -1
  120. data/lib/2018-12-01/generated/azure_mgmt_network/virtual_wans.rb +1 -1
  121. data/lib/2018-12-01/generated/azure_mgmt_network/vpn_connections.rb +1 -1
  122. data/lib/2018-12-01/generated/azure_mgmt_network/vpn_gateways.rb +1 -1
  123. data/lib/2018-12-01/generated/azure_mgmt_network/vpn_sites.rb +1 -1
  124. data/lib/2018-12-01/generated/azure_mgmt_network/vpn_sites_configuration.rb +1 -1
  125. data/lib/2018-12-01/generated/azure_mgmt_network/web_application_firewall_policies.rb +744 -0
  126. data/lib/profiles/latest/modules/network_profile_module.rb +496 -428
  127. data/lib/version.rb +1 -1
  128. metadata +20 -2
@@ -5,7 +5,7 @@
5
5
 
6
6
  module Azure::Network::Mgmt::V2018_12_01
7
7
  #
8
- # Network Client
8
+ # SecurityRules
9
9
  #
10
10
  class SecurityRules
11
11
  include MsRestAzure
@@ -5,7 +5,7 @@
5
5
 
6
6
  module Azure::Network::Mgmt::V2018_12_01
7
7
  #
8
- # Network Client
8
+ # ServiceEndpointPolicies
9
9
  #
10
10
  class ServiceEndpointPolicies
11
11
  include MsRestAzure
@@ -5,7 +5,7 @@
5
5
 
6
6
  module Azure::Network::Mgmt::V2018_12_01
7
7
  #
8
- # Network Client
8
+ # ServiceEndpointPolicyDefinitions
9
9
  #
10
10
  class ServiceEndpointPolicyDefinitions
11
11
  include MsRestAzure
@@ -5,7 +5,7 @@
5
5
 
6
6
  module Azure::Network::Mgmt::V2018_12_01
7
7
  #
8
- # Network Client
8
+ # Subnets
9
9
  #
10
10
  class Subnets
11
11
  include MsRestAzure
@@ -5,7 +5,7 @@
5
5
 
6
6
  module Azure::Network::Mgmt::V2018_12_01
7
7
  #
8
- # Network Client
8
+ # Usages
9
9
  #
10
10
  class Usages
11
11
  include MsRestAzure
@@ -5,7 +5,7 @@
5
5
 
6
6
  module Azure::Network::Mgmt::V2018_12_01
7
7
  #
8
- # Network Client
8
+ # VirtualHubs
9
9
  #
10
10
  class VirtualHubs
11
11
  include MsRestAzure
@@ -5,7 +5,7 @@
5
5
 
6
6
  module Azure::Network::Mgmt::V2018_12_01
7
7
  #
8
- # Network Client
8
+ # VirtualNetworkGatewayConnections
9
9
  #
10
10
  class VirtualNetworkGatewayConnections
11
11
  include MsRestAzure
@@ -5,7 +5,7 @@
5
5
 
6
6
  module Azure::Network::Mgmt::V2018_12_01
7
7
  #
8
- # Network Client
8
+ # VirtualNetworkGateways
9
9
  #
10
10
  class VirtualNetworkGateways
11
11
  include MsRestAzure
@@ -5,7 +5,7 @@
5
5
 
6
6
  module Azure::Network::Mgmt::V2018_12_01
7
7
  #
8
- # Network Client
8
+ # VirtualNetworkPeerings
9
9
  #
10
10
  class VirtualNetworkPeerings
11
11
  include MsRestAzure
@@ -5,7 +5,7 @@
5
5
 
6
6
  module Azure::Network::Mgmt::V2018_12_01
7
7
  #
8
- # Network Client
8
+ # VirtualNetworkTaps
9
9
  #
10
10
  class VirtualNetworkTaps
11
11
  include MsRestAzure
@@ -5,7 +5,7 @@
5
5
 
6
6
  module Azure::Network::Mgmt::V2018_12_01
7
7
  #
8
- # Network Client
8
+ # VirtualNetworks
9
9
  #
10
10
  class VirtualNetworks
11
11
  include MsRestAzure
@@ -5,7 +5,7 @@
5
5
 
6
6
  module Azure::Network::Mgmt::V2018_12_01
7
7
  #
8
- # Network Client
8
+ # VirtualWans
9
9
  #
10
10
  class VirtualWans
11
11
  include MsRestAzure
@@ -5,7 +5,7 @@
5
5
 
6
6
  module Azure::Network::Mgmt::V2018_12_01
7
7
  #
8
- # Network Client
8
+ # VpnConnections
9
9
  #
10
10
  class VpnConnections
11
11
  include MsRestAzure
@@ -5,7 +5,7 @@
5
5
 
6
6
  module Azure::Network::Mgmt::V2018_12_01
7
7
  #
8
- # Network Client
8
+ # VpnGateways
9
9
  #
10
10
  class VpnGateways
11
11
  include MsRestAzure
@@ -5,7 +5,7 @@
5
5
 
6
6
  module Azure::Network::Mgmt::V2018_12_01
7
7
  #
8
- # Network Client
8
+ # VpnSites
9
9
  #
10
10
  class VpnSites
11
11
  include MsRestAzure
@@ -5,7 +5,7 @@
5
5
 
6
6
  module Azure::Network::Mgmt::V2018_12_01
7
7
  #
8
- # Network Client
8
+ # VpnSitesConfiguration
9
9
  #
10
10
  class VpnSitesConfiguration
11
11
  include MsRestAzure
@@ -0,0 +1,744 @@
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::Network::Mgmt::V2018_12_01
7
+ #
8
+ # WebApplicationFirewallPolicies
9
+ #
10
+ class WebApplicationFirewallPolicies
11
+ include MsRestAzure
12
+
13
+ #
14
+ # Creates and initializes a new instance of the WebApplicationFirewallPolicies class.
15
+ # @param client service class for accessing basic functionality.
16
+ #
17
+ def initialize(client)
18
+ @client = client
19
+ end
20
+
21
+ # @return [NetworkManagementClient] reference to the NetworkManagementClient
22
+ attr_reader :client
23
+
24
+ #
25
+ # Lists all of the protection policies within a resource group.
26
+ #
27
+ # @param resource_group_name [String] The name of the resource group.
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<WebApplicationFirewallPolicy>] operation results.
32
+ #
33
+ def list(resource_group_name, custom_headers:nil)
34
+ first_page = list_as_lazy(resource_group_name, custom_headers:custom_headers)
35
+ first_page.get_all_items
36
+ end
37
+
38
+ #
39
+ # Lists all of the protection policies within a resource group.
40
+ #
41
+ # @param resource_group_name [String] The name of the resource group.
42
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
43
+ # will be added to the HTTP request.
44
+ #
45
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
46
+ #
47
+ def list_with_http_info(resource_group_name, custom_headers:nil)
48
+ list_async(resource_group_name, custom_headers:custom_headers).value!
49
+ end
50
+
51
+ #
52
+ # Lists all of the protection policies within a resource group.
53
+ #
54
+ # @param resource_group_name [String] The name of the resource group.
55
+ # @param [Hash{String => String}] A hash of custom headers that will be added
56
+ # to the HTTP request.
57
+ #
58
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
59
+ #
60
+ def list_async(resource_group_name, custom_headers:nil)
61
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
62
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
63
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
64
+
65
+
66
+ request_headers = {}
67
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
68
+
69
+ # Set Headers
70
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
71
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
72
+ path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies'
73
+
74
+ request_url = @base_url || @client.base_url
75
+
76
+ options = {
77
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
78
+ path_params: {'resourceGroupName' => resource_group_name,'subscriptionId' => @client.subscription_id},
79
+ query_params: {'api-version' => @client.api_version},
80
+ headers: request_headers.merge(custom_headers || {}),
81
+ base_url: request_url
82
+ }
83
+ promise = @client.make_request_async(:get, path_template, options)
84
+
85
+ promise = promise.then do |result|
86
+ http_response = result.response
87
+ status_code = http_response.status
88
+ response_content = http_response.body
89
+ unless status_code == 200
90
+ error_model = JSON.load(response_content)
91
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
92
+ end
93
+
94
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
95
+ # Deserialize Response
96
+ if status_code == 200
97
+ begin
98
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
99
+ result_mapper = Azure::Network::Mgmt::V2018_12_01::Models::WebApplicationFirewallPolicyListResult.mapper()
100
+ result.body = @client.deserialize(result_mapper, parsed_response)
101
+ rescue Exception => e
102
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
103
+ end
104
+ end
105
+
106
+ result
107
+ end
108
+
109
+ promise.execute
110
+ end
111
+
112
+ #
113
+ # Gets all the WAF policies in a subscription.
114
+ #
115
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
116
+ # will be added to the HTTP request.
117
+ #
118
+ # @return [Array<WebApplicationFirewallPolicy>] operation results.
119
+ #
120
+ def list_all(custom_headers:nil)
121
+ first_page = list_all_as_lazy(custom_headers:custom_headers)
122
+ first_page.get_all_items
123
+ end
124
+
125
+ #
126
+ # Gets all the WAF policies in a subscription.
127
+ #
128
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
129
+ # will be added to the HTTP request.
130
+ #
131
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
132
+ #
133
+ def list_all_with_http_info(custom_headers:nil)
134
+ list_all_async(custom_headers:custom_headers).value!
135
+ end
136
+
137
+ #
138
+ # Gets all the WAF policies in a subscription.
139
+ #
140
+ # @param [Hash{String => String}] A hash of custom headers that will be added
141
+ # to the HTTP request.
142
+ #
143
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
144
+ #
145
+ def list_all_async(custom_headers:nil)
146
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
147
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.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 = 'subscriptions/{subscriptionId}/providers/Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies'
157
+
158
+ request_url = @base_url || @client.base_url
159
+
160
+ options = {
161
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
162
+ path_params: {'subscriptionId' => @client.subscription_id},
163
+ query_params: {'api-version' => @client.api_version},
164
+ headers: request_headers.merge(custom_headers || {}),
165
+ base_url: request_url
166
+ }
167
+ promise = @client.make_request_async(:get, path_template, options)
168
+
169
+ promise = promise.then do |result|
170
+ http_response = result.response
171
+ status_code = http_response.status
172
+ response_content = http_response.body
173
+ unless status_code == 200
174
+ error_model = JSON.load(response_content)
175
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
176
+ end
177
+
178
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
179
+ # Deserialize Response
180
+ if status_code == 200
181
+ begin
182
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
183
+ result_mapper = Azure::Network::Mgmt::V2018_12_01::Models::WebApplicationFirewallPolicyListResult.mapper()
184
+ result.body = @client.deserialize(result_mapper, parsed_response)
185
+ rescue Exception => e
186
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
187
+ end
188
+ end
189
+
190
+ result
191
+ end
192
+
193
+ promise.execute
194
+ end
195
+
196
+ #
197
+ # Retrieve protection policy with specified name within a resource group.
198
+ #
199
+ # @param resource_group_name [String] The name of the resource group.
200
+ # @param policy_name [String] The name of the policy
201
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
202
+ # will be added to the HTTP request.
203
+ #
204
+ # @return [WebApplicationFirewallPolicy] operation results.
205
+ #
206
+ def get(resource_group_name, policy_name, custom_headers:nil)
207
+ response = get_async(resource_group_name, policy_name, custom_headers:custom_headers).value!
208
+ response.body unless response.nil?
209
+ end
210
+
211
+ #
212
+ # Retrieve protection policy with specified name within a resource group.
213
+ #
214
+ # @param resource_group_name [String] The name of the resource group.
215
+ # @param policy_name [String] The name of the policy
216
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
217
+ # will be added to the HTTP request.
218
+ #
219
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
220
+ #
221
+ def get_with_http_info(resource_group_name, policy_name, custom_headers:nil)
222
+ get_async(resource_group_name, policy_name, custom_headers:custom_headers).value!
223
+ end
224
+
225
+ #
226
+ # Retrieve protection policy with specified name within a resource group.
227
+ #
228
+ # @param resource_group_name [String] The name of the resource group.
229
+ # @param policy_name [String] The name of the policy
230
+ # @param [Hash{String => String}] A hash of custom headers that will be added
231
+ # to the HTTP request.
232
+ #
233
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
234
+ #
235
+ def get_async(resource_group_name, policy_name, custom_headers:nil)
236
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
237
+ fail ArgumentError, 'policy_name is nil' if policy_name.nil?
238
+ fail ArgumentError, "'policy_name' should satisfy the constraint - 'MaxLength': '128'" if !policy_name.nil? && policy_name.length > 128
239
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
240
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
241
+
242
+
243
+ request_headers = {}
244
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
245
+
246
+ # Set Headers
247
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
248
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
249
+ path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies/{policyName}'
250
+
251
+ request_url = @base_url || @client.base_url
252
+
253
+ options = {
254
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
255
+ path_params: {'resourceGroupName' => resource_group_name,'policyName' => policy_name,'subscriptionId' => @client.subscription_id},
256
+ query_params: {'api-version' => @client.api_version},
257
+ headers: request_headers.merge(custom_headers || {}),
258
+ base_url: request_url
259
+ }
260
+ promise = @client.make_request_async(:get, path_template, options)
261
+
262
+ promise = promise.then do |result|
263
+ http_response = result.response
264
+ status_code = http_response.status
265
+ response_content = http_response.body
266
+ unless status_code == 200
267
+ error_model = JSON.load(response_content)
268
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
269
+ end
270
+
271
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
272
+ # Deserialize Response
273
+ if status_code == 200
274
+ begin
275
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
276
+ result_mapper = Azure::Network::Mgmt::V2018_12_01::Models::WebApplicationFirewallPolicy.mapper()
277
+ result.body = @client.deserialize(result_mapper, parsed_response)
278
+ rescue Exception => e
279
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
280
+ end
281
+ end
282
+
283
+ result
284
+ end
285
+
286
+ promise.execute
287
+ end
288
+
289
+ #
290
+ # Creates or update policy with specified rule set name within a resource
291
+ # group.
292
+ #
293
+ # @param resource_group_name [String] The name of the resource group.
294
+ # @param policy_name [String] The name of the policy.
295
+ # @param parameters [WebApplicationFirewallPolicy] Policy to be created.
296
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
297
+ # will be added to the HTTP request.
298
+ #
299
+ # @return [WebApplicationFirewallPolicy] operation results.
300
+ #
301
+ def create_or_update(resource_group_name, policy_name, parameters, custom_headers:nil)
302
+ response = create_or_update_async(resource_group_name, policy_name, parameters, custom_headers:custom_headers).value!
303
+ response.body unless response.nil?
304
+ end
305
+
306
+ #
307
+ # Creates or update policy with specified rule set name within a resource
308
+ # group.
309
+ #
310
+ # @param resource_group_name [String] The name of the resource group.
311
+ # @param policy_name [String] The name of the policy.
312
+ # @param parameters [WebApplicationFirewallPolicy] Policy to be created.
313
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
314
+ # will be added to the HTTP request.
315
+ #
316
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
317
+ #
318
+ def create_or_update_with_http_info(resource_group_name, policy_name, parameters, custom_headers:nil)
319
+ create_or_update_async(resource_group_name, policy_name, parameters, custom_headers:custom_headers).value!
320
+ end
321
+
322
+ #
323
+ # Creates or update policy with specified rule set name within a resource
324
+ # group.
325
+ #
326
+ # @param resource_group_name [String] The name of the resource group.
327
+ # @param policy_name [String] The name of the policy.
328
+ # @param parameters [WebApplicationFirewallPolicy] Policy to be created.
329
+ # @param [Hash{String => String}] A hash of custom headers that will be added
330
+ # to the HTTP request.
331
+ #
332
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
333
+ #
334
+ def create_or_update_async(resource_group_name, policy_name, parameters, custom_headers:nil)
335
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
336
+ fail ArgumentError, 'policy_name is nil' if policy_name.nil?
337
+ fail ArgumentError, "'policy_name' should satisfy the constraint - 'MaxLength': '128'" if !policy_name.nil? && policy_name.length > 128
338
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
339
+ fail ArgumentError, 'parameters is nil' if parameters.nil?
340
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
341
+
342
+
343
+ request_headers = {}
344
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
345
+
346
+ # Set Headers
347
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
348
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
349
+
350
+ # Serialize Request
351
+ request_mapper = Azure::Network::Mgmt::V2018_12_01::Models::WebApplicationFirewallPolicy.mapper()
352
+ request_content = @client.serialize(request_mapper, parameters)
353
+ request_content = request_content != nil ? JSON.generate(request_content, quirks_mode: true) : nil
354
+
355
+ path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies/{policyName}'
356
+
357
+ request_url = @base_url || @client.base_url
358
+
359
+ options = {
360
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
361
+ path_params: {'resourceGroupName' => resource_group_name,'policyName' => policy_name,'subscriptionId' => @client.subscription_id},
362
+ query_params: {'api-version' => @client.api_version},
363
+ body: request_content,
364
+ headers: request_headers.merge(custom_headers || {}),
365
+ base_url: request_url
366
+ }
367
+ promise = @client.make_request_async(:put, path_template, options)
368
+
369
+ promise = promise.then do |result|
370
+ http_response = result.response
371
+ status_code = http_response.status
372
+ response_content = http_response.body
373
+ unless status_code == 200 || status_code == 201
374
+ error_model = JSON.load(response_content)
375
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
376
+ end
377
+
378
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
379
+ # Deserialize Response
380
+ if status_code == 200
381
+ begin
382
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
383
+ result_mapper = Azure::Network::Mgmt::V2018_12_01::Models::WebApplicationFirewallPolicy.mapper()
384
+ result.body = @client.deserialize(result_mapper, parsed_response)
385
+ rescue Exception => e
386
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
387
+ end
388
+ end
389
+ # Deserialize Response
390
+ if status_code == 201
391
+ begin
392
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
393
+ result_mapper = Azure::Network::Mgmt::V2018_12_01::Models::WebApplicationFirewallPolicy.mapper()
394
+ result.body = @client.deserialize(result_mapper, parsed_response)
395
+ rescue Exception => e
396
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
397
+ end
398
+ end
399
+
400
+ result
401
+ end
402
+
403
+ promise.execute
404
+ end
405
+
406
+ #
407
+ # Deletes Policy
408
+ #
409
+ # @param resource_group_name [String] The name of the resource group.
410
+ # @param policy_name [String] The name of the policy.
411
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
412
+ # will be added to the HTTP request.
413
+ #
414
+ def delete(resource_group_name, policy_name, custom_headers:nil)
415
+ response = delete_async(resource_group_name, policy_name, custom_headers:custom_headers).value!
416
+ nil
417
+ end
418
+
419
+ #
420
+ # @param resource_group_name [String] The name of the resource group.
421
+ # @param policy_name [String] The name of the policy.
422
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
423
+ # will be added to the HTTP request.
424
+ #
425
+ # @return [Concurrent::Promise] promise which provides async access to http
426
+ # response.
427
+ #
428
+ def delete_async(resource_group_name, policy_name, custom_headers:nil)
429
+ # Send request
430
+ promise = begin_delete_async(resource_group_name, policy_name, custom_headers:custom_headers)
431
+
432
+ promise = promise.then do |response|
433
+ # Defining deserialization method.
434
+ deserialize_method = lambda do |parsed_response|
435
+ end
436
+
437
+ # Waiting for response.
438
+ @client.get_long_running_operation_result(response, deserialize_method)
439
+ end
440
+
441
+ promise
442
+ end
443
+
444
+ #
445
+ # Deletes Policy
446
+ #
447
+ # @param resource_group_name [String] The name of the resource group.
448
+ # @param policy_name [String] The name of the policy.
449
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
450
+ # will be added to the HTTP request.
451
+ #
452
+ #
453
+ def begin_delete(resource_group_name, policy_name, custom_headers:nil)
454
+ response = begin_delete_async(resource_group_name, policy_name, custom_headers:custom_headers).value!
455
+ nil
456
+ end
457
+
458
+ #
459
+ # Deletes Policy
460
+ #
461
+ # @param resource_group_name [String] The name of the resource group.
462
+ # @param policy_name [String] The name of the policy.
463
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
464
+ # will be added to the HTTP request.
465
+ #
466
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
467
+ #
468
+ def begin_delete_with_http_info(resource_group_name, policy_name, custom_headers:nil)
469
+ begin_delete_async(resource_group_name, policy_name, custom_headers:custom_headers).value!
470
+ end
471
+
472
+ #
473
+ # Deletes Policy
474
+ #
475
+ # @param resource_group_name [String] The name of the resource group.
476
+ # @param policy_name [String] The name of the policy.
477
+ # @param [Hash{String => String}] A hash of custom headers that will be added
478
+ # to the HTTP request.
479
+ #
480
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
481
+ #
482
+ def begin_delete_async(resource_group_name, policy_name, custom_headers:nil)
483
+ fail ArgumentError, 'resource_group_name is nil' if resource_group_name.nil?
484
+ fail ArgumentError, 'policy_name is nil' if policy_name.nil?
485
+ fail ArgumentError, "'policy_name' should satisfy the constraint - 'MaxLength': '128'" if !policy_name.nil? && policy_name.length > 128
486
+ fail ArgumentError, '@client.subscription_id is nil' if @client.subscription_id.nil?
487
+ fail ArgumentError, '@client.api_version is nil' if @client.api_version.nil?
488
+
489
+
490
+ request_headers = {}
491
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
492
+
493
+ # Set Headers
494
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
495
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
496
+ path_template = 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies/{policyName}'
497
+
498
+ request_url = @base_url || @client.base_url
499
+
500
+ options = {
501
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
502
+ path_params: {'resourceGroupName' => resource_group_name,'policyName' => policy_name,'subscriptionId' => @client.subscription_id},
503
+ query_params: {'api-version' => @client.api_version},
504
+ headers: request_headers.merge(custom_headers || {}),
505
+ base_url: request_url
506
+ }
507
+ promise = @client.make_request_async(:delete, path_template, options)
508
+
509
+ promise = promise.then do |result|
510
+ http_response = result.response
511
+ status_code = http_response.status
512
+ response_content = http_response.body
513
+ unless status_code == 202 || status_code == 204 || status_code == 200
514
+ error_model = JSON.load(response_content)
515
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
516
+ end
517
+
518
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
519
+
520
+ result
521
+ end
522
+
523
+ promise.execute
524
+ end
525
+
526
+ #
527
+ # Lists all of the protection policies within a resource group.
528
+ #
529
+ # @param next_page_link [String] The NextLink from the previous successful call
530
+ # to List operation.
531
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
532
+ # will be added to the HTTP request.
533
+ #
534
+ # @return [WebApplicationFirewallPolicyListResult] operation results.
535
+ #
536
+ def list_next(next_page_link, custom_headers:nil)
537
+ response = list_next_async(next_page_link, custom_headers:custom_headers).value!
538
+ response.body unless response.nil?
539
+ end
540
+
541
+ #
542
+ # Lists all of the protection policies within a resource group.
543
+ #
544
+ # @param next_page_link [String] The NextLink from the previous successful call
545
+ # to List operation.
546
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
547
+ # will be added to the HTTP request.
548
+ #
549
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
550
+ #
551
+ def list_next_with_http_info(next_page_link, custom_headers:nil)
552
+ list_next_async(next_page_link, custom_headers:custom_headers).value!
553
+ end
554
+
555
+ #
556
+ # Lists all of the protection policies within a resource group.
557
+ #
558
+ # @param next_page_link [String] The NextLink from the previous successful call
559
+ # to List operation.
560
+ # @param [Hash{String => String}] A hash of custom headers that will be added
561
+ # to the HTTP request.
562
+ #
563
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
564
+ #
565
+ def list_next_async(next_page_link, custom_headers:nil)
566
+ fail ArgumentError, 'next_page_link is nil' if next_page_link.nil?
567
+
568
+
569
+ request_headers = {}
570
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
571
+
572
+ # Set Headers
573
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
574
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
575
+ path_template = '{nextLink}'
576
+
577
+ request_url = @base_url || @client.base_url
578
+
579
+ options = {
580
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
581
+ skip_encoding_path_params: {'nextLink' => next_page_link},
582
+ headers: request_headers.merge(custom_headers || {}),
583
+ base_url: request_url
584
+ }
585
+ promise = @client.make_request_async(:get, path_template, options)
586
+
587
+ promise = promise.then do |result|
588
+ http_response = result.response
589
+ status_code = http_response.status
590
+ response_content = http_response.body
591
+ unless status_code == 200
592
+ error_model = JSON.load(response_content)
593
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
594
+ end
595
+
596
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
597
+ # Deserialize Response
598
+ if status_code == 200
599
+ begin
600
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
601
+ result_mapper = Azure::Network::Mgmt::V2018_12_01::Models::WebApplicationFirewallPolicyListResult.mapper()
602
+ result.body = @client.deserialize(result_mapper, parsed_response)
603
+ rescue Exception => e
604
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
605
+ end
606
+ end
607
+
608
+ result
609
+ end
610
+
611
+ promise.execute
612
+ end
613
+
614
+ #
615
+ # Gets all the WAF policies in a subscription.
616
+ #
617
+ # @param next_page_link [String] The NextLink from the previous successful call
618
+ # to List operation.
619
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
620
+ # will be added to the HTTP request.
621
+ #
622
+ # @return [WebApplicationFirewallPolicyListResult] operation results.
623
+ #
624
+ def list_all_next(next_page_link, custom_headers:nil)
625
+ response = list_all_next_async(next_page_link, custom_headers:custom_headers).value!
626
+ response.body unless response.nil?
627
+ end
628
+
629
+ #
630
+ # Gets all the WAF policies in a subscription.
631
+ #
632
+ # @param next_page_link [String] The NextLink from the previous successful call
633
+ # to List operation.
634
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
635
+ # will be added to the HTTP request.
636
+ #
637
+ # @return [MsRestAzure::AzureOperationResponse] HTTP response information.
638
+ #
639
+ def list_all_next_with_http_info(next_page_link, custom_headers:nil)
640
+ list_all_next_async(next_page_link, custom_headers:custom_headers).value!
641
+ end
642
+
643
+ #
644
+ # Gets all the WAF policies in a subscription.
645
+ #
646
+ # @param next_page_link [String] The NextLink from the previous successful call
647
+ # to List operation.
648
+ # @param [Hash{String => String}] A hash of custom headers that will be added
649
+ # to the HTTP request.
650
+ #
651
+ # @return [Concurrent::Promise] Promise object which holds the HTTP response.
652
+ #
653
+ def list_all_next_async(next_page_link, custom_headers:nil)
654
+ fail ArgumentError, 'next_page_link is nil' if next_page_link.nil?
655
+
656
+
657
+ request_headers = {}
658
+ request_headers['Content-Type'] = 'application/json; charset=utf-8'
659
+
660
+ # Set Headers
661
+ request_headers['x-ms-client-request-id'] = SecureRandom.uuid
662
+ request_headers['accept-language'] = @client.accept_language unless @client.accept_language.nil?
663
+ path_template = '{nextLink}'
664
+
665
+ request_url = @base_url || @client.base_url
666
+
667
+ options = {
668
+ middlewares: [[MsRest::RetryPolicyMiddleware, times: 3, retry: 0.02], [:cookie_jar]],
669
+ skip_encoding_path_params: {'nextLink' => next_page_link},
670
+ headers: request_headers.merge(custom_headers || {}),
671
+ base_url: request_url
672
+ }
673
+ promise = @client.make_request_async(:get, path_template, options)
674
+
675
+ promise = promise.then do |result|
676
+ http_response = result.response
677
+ status_code = http_response.status
678
+ response_content = http_response.body
679
+ unless status_code == 200
680
+ error_model = JSON.load(response_content)
681
+ fail MsRestAzure::AzureOperationError.new(result.request, http_response, error_model)
682
+ end
683
+
684
+ result.request_id = http_response['x-ms-request-id'] unless http_response['x-ms-request-id'].nil?
685
+ # Deserialize Response
686
+ if status_code == 200
687
+ begin
688
+ parsed_response = response_content.to_s.empty? ? nil : JSON.load(response_content)
689
+ result_mapper = Azure::Network::Mgmt::V2018_12_01::Models::WebApplicationFirewallPolicyListResult.mapper()
690
+ result.body = @client.deserialize(result_mapper, parsed_response)
691
+ rescue Exception => e
692
+ fail MsRest::DeserializationError.new('Error occurred in deserializing the response', e.message, e.backtrace, result)
693
+ end
694
+ end
695
+
696
+ result
697
+ end
698
+
699
+ promise.execute
700
+ end
701
+
702
+ #
703
+ # Lists all of the protection policies within a resource group.
704
+ #
705
+ # @param resource_group_name [String] The name of the resource group.
706
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
707
+ # will be added to the HTTP request.
708
+ #
709
+ # @return [WebApplicationFirewallPolicyListResult] which provide lazy access to
710
+ # pages of the response.
711
+ #
712
+ def list_as_lazy(resource_group_name, custom_headers:nil)
713
+ response = list_async(resource_group_name, custom_headers:custom_headers).value!
714
+ unless response.nil?
715
+ page = response.body
716
+ page.next_method = Proc.new do |next_page_link|
717
+ list_next_async(next_page_link, custom_headers:custom_headers)
718
+ end
719
+ page
720
+ end
721
+ end
722
+
723
+ #
724
+ # Gets all the WAF policies in a subscription.
725
+ #
726
+ # @param custom_headers [Hash{String => String}] A hash of custom headers that
727
+ # will be added to the HTTP request.
728
+ #
729
+ # @return [WebApplicationFirewallPolicyListResult] which provide lazy access to
730
+ # pages of the response.
731
+ #
732
+ def list_all_as_lazy(custom_headers:nil)
733
+ response = list_all_async(custom_headers:custom_headers).value!
734
+ unless response.nil?
735
+ page = response.body
736
+ page.next_method = Proc.new do |next_page_link|
737
+ list_all_next_async(next_page_link, custom_headers:custom_headers)
738
+ end
739
+ page
740
+ end
741
+ end
742
+
743
+ end
744
+ end