fastly 10.0.0 → 12.0.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.
Files changed (496) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +54 -1
  3. data/Gemfile.lock +3 -3
  4. data/README.md +34 -47
  5. data/docs/AclsInComputeApi.md +1 -1
  6. data/docs/AutomationToken.md +1 -1
  7. data/docs/AutomationTokenCreateRequestAttributes.md +1 -1
  8. data/docs/AutomationTokenCreateResponse.md +4 -6
  9. data/docs/AutomationTokenCreateResponseAllOf.md +3 -3
  10. data/docs/AutomationTokenResponse.md +4 -6
  11. data/docs/AutomationTokenResponseAllOf.md +4 -4
  12. data/docs/Backend.md +1 -0
  13. data/docs/BackendApi.md +4 -0
  14. data/docs/BackendResponse.md +1 -0
  15. data/docs/BillingUsageMetricsApi.md +11 -9
  16. data/docs/BotManagementResponseBodyGetAllServices.md +13 -0
  17. data/docs/BotManagementResponseCustomer.md +10 -0
  18. data/docs/{BillingBandwidth.md → BotManagementResponseCustomerCustomer.md} +3 -3
  19. data/docs/{BillingEstimateLines.md → BotManagementResponseEnabledServices.md} +2 -2
  20. data/docs/{RelationshipWafActiveRules.md → BotManagementResponseLinksGetAllServices.md} +2 -2
  21. data/docs/BotManagementResponseLinksGetAllServicesLinks.md +10 -0
  22. data/docs/BrotliCompressionResponseBodyGetAllServices.md +13 -0
  23. data/docs/BrotliCompressionResponseCustomer.md +10 -0
  24. data/docs/BrotliCompressionResponseEnabledServices.md +10 -0
  25. data/docs/{RelationshipWafRuleRevision.md → BrotliCompressionResponseLinksGetAllServices.md} +2 -2
  26. data/docs/BrotliCompressionResponseLinksGetAllServicesLinks.md +10 -0
  27. data/docs/ComputeAclListEntriesMeta.md +1 -1
  28. data/docs/ComputeAclUpdateEntry.md +2 -2
  29. data/docs/{TypeWafExclusion.md → DdosProtectionAction.md} +1 -1
  30. data/docs/DdosProtectionApi.md +223 -0
  31. data/docs/DdosProtectionAttributeStats.md +11 -0
  32. data/docs/DdosProtectionAttributeValue.md +11 -0
  33. data/docs/DdosProtectionError.md +13 -0
  34. data/docs/{IncludedWithWafFirewallVersionItem.md → DdosProtectionErrorErrors.md} +3 -2
  35. data/docs/DdosProtectionEvent.md +17 -0
  36. data/docs/DdosProtectionEventAllOf.md +15 -0
  37. data/docs/DdosProtectionNotAuthenticated.md +11 -0
  38. data/docs/DdosProtectionNotFound.md +11 -0
  39. data/docs/DdosProtectionResponseBodyGetAllServices.md +13 -0
  40. data/docs/DdosProtectionResponseCustomer.md +10 -0
  41. data/docs/DdosProtectionResponseEnabledServices.md +10 -0
  42. data/docs/{WafFirewall.md → DdosProtectionResponseLinksGetAllServices.md} +2 -2
  43. data/docs/{BulkWafActiveRules.md → DdosProtectionResponseLinksGetAllServicesLinks.md} +2 -2
  44. data/docs/DdosProtectionRule.md +22 -0
  45. data/docs/DdosProtectionRuleAllOf.md +20 -0
  46. data/docs/{TypeWafActiveRule.md → DdosProtectionTrafficAttribute.md} +1 -1
  47. data/docs/{SnippetResponseCommon.md → DdosProtectionTrafficStats.md} +4 -5
  48. data/docs/DdosProtectionTrafficStatsAllOf.md +12 -0
  49. data/docs/DictionaryApi.md +15 -15
  50. data/docs/DictionaryInfoApi.md +3 -3
  51. data/docs/DictionaryItemApi.md +22 -22
  52. data/docs/DomainInspectorResponseBodyGetAllServices.md +13 -0
  53. data/docs/DomainInspectorResponseCustomer.md +10 -0
  54. data/docs/DomainInspectorResponseEnabledServices.md +10 -0
  55. data/docs/{WafExclusion.md → DomainInspectorResponseLinksGetAllServices.md} +2 -2
  56. data/docs/DomainInspectorResponseLinksGetAllServicesLinks.md +10 -0
  57. data/docs/DomainOwnershipsApi.md +2 -2
  58. data/docs/FanoutResponseBodyGetAllServices.md +13 -0
  59. data/docs/FanoutResponseCustomer.md +10 -0
  60. data/docs/FanoutResponseEnabledServices.md +10 -0
  61. data/docs/FanoutResponseLinksGetAllServices.md +10 -0
  62. data/docs/{SnippetWithDynamicNumberAllOf.md → FanoutResponseLinksGetAllServicesLinks.md} +2 -2
  63. data/docs/Header.md +2 -0
  64. data/docs/HeaderApi.md +8 -8
  65. data/docs/HistoricalApi.md +10 -10
  66. data/docs/ImageOptimizerResponseBodyGetAllServices.md +13 -0
  67. data/docs/ImageOptimizerResponseCustomer.md +10 -0
  68. data/docs/ImageOptimizerResponseEnabledServices.md +10 -0
  69. data/docs/ImageOptimizerResponseLinksGetAllServices.md +10 -0
  70. data/docs/{BillingInvoiceId.md → ImageOptimizerResponseLinksGetAllServicesLinks.md} +2 -2
  71. data/docs/InlineResponse2002.md +2 -1
  72. data/docs/InlineResponse2003.md +1 -1
  73. data/docs/InlineResponse2004.md +1 -2
  74. data/docs/InlineResponse2005.md +1 -1
  75. data/docs/InlineResponse2006.md +1 -1
  76. data/docs/InlineResponse2007.md +2 -1
  77. data/docs/InlineResponse2008.md +11 -0
  78. data/docs/InlineResponse2009.md +10 -0
  79. data/docs/KvStoreApi.md +2 -2
  80. data/docs/KvStoreItemApi.md +6 -6
  81. data/docs/KvStoreRequestCreate.md +1 -1
  82. data/docs/LogAggregationsFilterFieldItem.md +12 -0
  83. data/docs/LogAggregationsGetResponse.md +11 -0
  84. data/docs/LogAggregationsGetResponseMeta.md +15 -0
  85. data/docs/LogAggregationsGetResponseMetaFilters.md +10 -0
  86. data/docs/LogAggregationsResult.md +11 -0
  87. data/docs/{WafActiveRuleCreationResponse.md → LogAggregationsValueField.md} +19 -9
  88. data/docs/LogExplorerInsightsResponseBodyGetAllServices.md +13 -0
  89. data/docs/LogExplorerInsightsResponseCustomer.md +10 -0
  90. data/docs/LogExplorerInsightsResponseEnabledServices.md +10 -0
  91. data/docs/LogExplorerInsightsResponseLinksGetAllServices.md +10 -0
  92. data/docs/LogExplorerInsightsResponseLinksGetAllServicesLinks.md +10 -0
  93. data/docs/LogTimeseriesFilterFieldItem.md +12 -0
  94. data/docs/LogTimeseriesGetResponse.md +11 -0
  95. data/docs/LogTimeseriesGetResponseMeta.md +14 -0
  96. data/docs/LogTimeseriesGetResponseMetaFilters.md +10 -0
  97. data/docs/LogTimeseriesResult.md +11 -0
  98. data/docs/{TypeWafFirewall.md → LogTimeseriesResultDimensions.md} +2 -1
  99. data/docs/{WafRuleRevisionOrLatest.md → LogTimeseriesValueField.md} +15 -5
  100. data/docs/LoggingAzureblobAdditional.md +1 -1
  101. data/docs/LoggingAzureblobApi.md +4 -4
  102. data/docs/LoggingAzureblobResponse.md +1 -1
  103. data/docs/NgwafResponseBodyGetAllServices.md +13 -0
  104. data/docs/NgwafResponseCustomer.md +10 -0
  105. data/docs/{BillingResponseItemItemsData.md → NgwafResponseEnabledServices.md} +2 -2
  106. data/docs/NgwafResponseLinksGetAllServices.md +10 -0
  107. data/docs/{BillingEstimateInvoiceId.md → NgwafResponseLinksGetAllServicesLinks.md} +2 -2
  108. data/docs/ObservabilityAggregationsForLogsApi.md +71 -0
  109. data/docs/ObservabilityTimeseriesForLogsApi.md +67 -0
  110. data/docs/OriginInspectorResponseBodyGetAllServices.md +13 -0
  111. data/docs/OriginInspectorResponseCustomer.md +10 -0
  112. data/docs/OriginInspectorResponseEnabledServices.md +10 -0
  113. data/docs/OriginInspectorResponseLinksGetAllServices.md +10 -0
  114. data/docs/OriginInspectorResponseLinksGetAllServicesLinks.md +10 -0
  115. data/docs/ProductBotManagementApi.md +33 -0
  116. data/docs/ProductBrotliCompressionApi.md +33 -0
  117. data/docs/ProductDdosProtectionApi.md +34 -1
  118. data/docs/ProductDomainInspectorApi.md +33 -0
  119. data/docs/ProductFanoutApi.md +33 -0
  120. data/docs/ProductImageOptimizerApi.md +33 -0
  121. data/docs/ProductLogExplorerInsightsApi.md +33 -0
  122. data/docs/ProductNgwafApi.md +33 -0
  123. data/docs/ProductOriginInspectorApi.md +33 -0
  124. data/docs/ProductWebsocketsApi.md +33 -0
  125. data/docs/RateLimiter.md +1 -1
  126. data/docs/RateLimiterApi.md +4 -4
  127. data/docs/RateLimiterResponse.md +1 -1
  128. data/docs/Resource.md +1 -1
  129. data/docs/ResourceApi.md +4 -4
  130. data/docs/ResourceResponse.md +1 -1
  131. data/docs/Results.md +7 -0
  132. data/docs/SecretStoreApi.md +2 -2
  133. data/docs/SecretStoreItemApi.md +2 -2
  134. data/docs/ServiceAuthorizationsApi.md +2 -2
  135. data/docs/SnippetApi.md +2 -2
  136. data/docs/{SnippetResponseCommonAllOf.md → SnippetResponseAllOf.md} +1 -1
  137. data/docs/TlsBulkCertificatesApi.md +4 -0
  138. data/docs/WebsocketsResponseBodyGetAllServices.md +13 -0
  139. data/docs/WebsocketsResponseCustomer.md +10 -0
  140. data/docs/WebsocketsResponseEnabledServices.md +10 -0
  141. data/docs/WebsocketsResponseLinksGetAllServices.md +10 -0
  142. data/docs/{SnippetAllOf.md → WebsocketsResponseLinksGetAllServicesLinks.md} +2 -2
  143. data/lib/fastly/api/acls_in_compute_api.rb +2 -2
  144. data/lib/fastly/api/automation_tokens_api.rb +6 -6
  145. data/lib/fastly/api/backend_api.rb +6 -0
  146. data/lib/fastly/api/billing_usage_metrics_api.rb +11 -8
  147. data/lib/fastly/api/ddos_protection_api.rb +367 -0
  148. data/lib/fastly/api/dictionary_api.rb +10 -10
  149. data/lib/fastly/api/dictionary_info_api.rb +2 -2
  150. data/lib/fastly/api/dictionary_item_api.rb +18 -18
  151. data/lib/fastly/api/domain_ownerships_api.rb +3 -3
  152. data/lib/fastly/api/header_api.rb +8 -8
  153. data/lib/fastly/api/historical_api.rb +15 -15
  154. data/lib/fastly/api/kv_store_api.rb +3 -3
  155. data/lib/fastly/api/kv_store_item_api.rb +8 -8
  156. data/lib/fastly/api/logging_azureblob_api.rb +4 -4
  157. data/lib/fastly/api/observability_aggregations_for_logs_api.rb +128 -0
  158. data/lib/fastly/api/observability_timeseries_for_logs_api.rb +132 -0
  159. data/lib/fastly/api/product_bot_management_api.rb +56 -0
  160. data/lib/fastly/api/product_brotli_compression_api.rb +56 -0
  161. data/lib/fastly/api/product_ddos_protection_api.rb +58 -2
  162. data/lib/fastly/api/product_domain_inspector_api.rb +56 -0
  163. data/lib/fastly/api/product_fanout_api.rb +56 -0
  164. data/lib/fastly/api/product_image_optimizer_api.rb +56 -0
  165. data/lib/fastly/api/product_log_explorer_insights_api.rb +56 -0
  166. data/lib/fastly/api/product_ngwaf_api.rb +56 -0
  167. data/lib/fastly/api/product_origin_inspector_api.rb +56 -0
  168. data/lib/fastly/api/product_websockets_api.rb +56 -0
  169. data/lib/fastly/api/rate_limiter_api.rb +4 -4
  170. data/lib/fastly/api/resource_api.rb +4 -4
  171. data/lib/fastly/api/secret_store_api.rb +3 -3
  172. data/lib/fastly/api/secret_store_item_api.rb +3 -3
  173. data/lib/fastly/api/service_authorizations_api.rb +3 -3
  174. data/lib/fastly/api/snippet_api.rb +3 -3
  175. data/lib/fastly/api/tls_bulk_certificates_api.rb +6 -0
  176. data/lib/fastly/configuration.rb +102 -192
  177. data/lib/fastly/models/automation_token.rb +1 -1
  178. data/lib/fastly/models/automation_token_create_request_attributes.rb +1 -1
  179. data/lib/fastly/models/automation_token_create_response.rb +21 -43
  180. data/lib/fastly/models/automation_token_create_response_all_of.rb +13 -12
  181. data/lib/fastly/models/automation_token_response.rb +24 -46
  182. data/lib/fastly/models/automation_token_response_all_of.rb +11 -10
  183. data/lib/fastly/models/backend.rb +11 -1
  184. data/lib/fastly/models/backend_response.rb +11 -1
  185. data/lib/fastly/models/{waf_active_rules_response.rb → bot_management_response_body_get_all_services.rb} +34 -33
  186. data/lib/fastly/models/bot_management_response_customer.rb +216 -0
  187. data/lib/fastly/models/{relationship_member_waf_tag.rb → bot_management_response_customer_customer.rb} +18 -19
  188. data/lib/fastly/models/bot_management_response_enabled_services.rb +219 -0
  189. data/lib/fastly/models/{relationship_waf_active_rules_waf_active_rules.rb → bot_management_response_links_get_all_services.rb} +10 -12
  190. data/lib/fastly/models/bot_management_response_links_get_all_services_links.rb +217 -0
  191. data/lib/fastly/models/brotli_compression_response_body_get_all_services.rb +256 -0
  192. data/lib/fastly/models/brotli_compression_response_customer.rb +216 -0
  193. data/lib/fastly/models/brotli_compression_response_enabled_services.rb +219 -0
  194. data/lib/fastly/models/brotli_compression_response_links_get_all_services.rb +216 -0
  195. data/lib/fastly/models/brotli_compression_response_links_get_all_services_links.rb +217 -0
  196. data/lib/fastly/models/compute_acl_list_entries_meta.rb +1 -1
  197. data/lib/fastly/models/compute_acl_update_entry.rb +2 -2
  198. data/lib/fastly/models/{type_waf_exclusion.rb → ddos_protection_action.rb} +7 -4
  199. data/lib/fastly/models/{waf_tag_attributes.rb → ddos_protection_attribute_stats.rb} +19 -7
  200. data/lib/fastly/models/{relationship_waf_rule_revisions.rb → ddos_protection_attribute_value.rb} +20 -10
  201. data/lib/fastly/models/{relationship_waf_tags.rb → ddos_protection_error.rb} +39 -10
  202. data/lib/fastly/models/{relationship_member_waf_rule.rb → ddos_protection_error_errors.rb} +16 -18
  203. data/lib/fastly/models/{schemas_snippet_response_common.rb → ddos_protection_event.rb} +53 -30
  204. data/lib/fastly/models/{billing_bandwidth_tiers.rb → ddos_protection_event_all_of.rb} +45 -28
  205. data/lib/fastly/models/{billing_status.rb → ddos_protection_not_authenticated.rb} +18 -21
  206. data/lib/fastly/models/{snippet_all_of.rb → ddos_protection_not_found.rb} +27 -19
  207. data/lib/fastly/models/ddos_protection_response_body_get_all_services.rb +256 -0
  208. data/lib/fastly/models/ddos_protection_response_customer.rb +216 -0
  209. data/lib/fastly/models/ddos_protection_response_enabled_services.rb +219 -0
  210. data/lib/fastly/models/ddos_protection_response_links_get_all_services.rb +216 -0
  211. data/lib/fastly/models/ddos_protection_response_links_get_all_services_links.rb +217 -0
  212. data/lib/fastly/models/{snippet_response_post.rb → ddos_protection_rule.rb} +99 -119
  213. data/lib/fastly/models/{billing_estimate_response.rb → ddos_protection_rule_all_of.rb} +88 -70
  214. data/lib/fastly/models/{type_waf_firewall.rb → ddos_protection_traffic_attribute.rb} +10 -4
  215. data/lib/fastly/models/{snippet_response_common.rb → ddos_protection_traffic_stats.rb} +25 -33
  216. data/lib/fastly/models/{waf_rule.rb → ddos_protection_traffic_stats_all_of.rb} +22 -20
  217. data/lib/fastly/models/domain_inspector_response_body_get_all_services.rb +256 -0
  218. data/lib/fastly/models/domain_inspector_response_customer.rb +216 -0
  219. data/lib/fastly/models/domain_inspector_response_enabled_services.rb +219 -0
  220. data/lib/fastly/models/domain_inspector_response_links_get_all_services.rb +216 -0
  221. data/lib/fastly/models/{relationship_waf_firewall.rb → domain_inspector_response_links_get_all_services_links.rb} +11 -10
  222. data/lib/fastly/models/{waf_firewalls_response.rb → fanout_response_body_get_all_services.rb} +34 -33
  223. data/lib/fastly/models/{relationship_waf_rule.rb → fanout_response_customer.rb} +10 -10
  224. data/lib/fastly/models/{relationship_member_waf_firewall.rb → fanout_response_enabled_services.rb} +13 -21
  225. data/lib/fastly/models/fanout_response_links_get_all_services.rb +216 -0
  226. data/lib/fastly/models/{billing_invoice_id.rb → fanout_response_links_get_all_services_links.rb} +11 -10
  227. data/lib/fastly/models/header.rb +26 -4
  228. data/lib/fastly/models/header_response.rb +0 -1
  229. data/lib/fastly/models/image_optimizer_response_body_get_all_services.rb +256 -0
  230. data/lib/fastly/models/image_optimizer_response_customer.rb +216 -0
  231. data/lib/fastly/models/image_optimizer_response_enabled_services.rb +219 -0
  232. data/lib/fastly/models/image_optimizer_response_links_get_all_services.rb +216 -0
  233. data/lib/fastly/models/image_optimizer_response_links_get_all_services_links.rb +217 -0
  234. data/lib/fastly/models/inline_response2002.rb +18 -8
  235. data/lib/fastly/models/inline_response2003.rb +1 -1
  236. data/lib/fastly/models/inline_response2004.rb +8 -18
  237. data/lib/fastly/models/inline_response2005.rb +1 -1
  238. data/lib/fastly/models/inline_response2006.rb +1 -1
  239. data/lib/fastly/models/inline_response2007.rb +13 -4
  240. data/lib/fastly/models/{relationship_waf_firewall_version_waf_firewall_version.rb → inline_response2008.rb} +16 -7
  241. data/lib/fastly/models/{bulk_waf_active_rules.rb → inline_response2009.rb} +4 -4
  242. data/lib/fastly/models/kv_store_request_create.rb +1 -1
  243. data/lib/fastly/models/{waf_active_rule_data_attributes.rb → log_aggregations_filter_field_item.rb} +33 -32
  244. data/lib/fastly/models/{relationship_waf_rule_waf_rule.rb → log_aggregations_get_response.rb} +16 -7
  245. data/lib/fastly/models/{waf_firewall_version_response_data.rb → log_aggregations_get_response_meta.rb} +77 -39
  246. data/lib/fastly/models/log_aggregations_get_response_meta_filters.rb +220 -0
  247. data/lib/fastly/models/{waf_rules_response_all_of.rb → log_aggregations_result.rb} +18 -18
  248. data/lib/fastly/models/{waf_active_rule_creation_response.rb → log_aggregations_value_field.rb} +8 -3
  249. data/lib/fastly/models/log_explorer_insights_response_body_get_all_services.rb +256 -0
  250. data/lib/fastly/models/log_explorer_insights_response_customer.rb +216 -0
  251. data/lib/fastly/models/log_explorer_insights_response_enabled_services.rb +219 -0
  252. data/lib/fastly/models/log_explorer_insights_response_links_get_all_services.rb +216 -0
  253. data/lib/fastly/models/log_explorer_insights_response_links_get_all_services_links.rb +217 -0
  254. data/lib/fastly/models/{snippet_with_dynamic_number_all_of.rb → log_timeseries_filter_field_item.rb} +39 -19
  255. data/lib/fastly/models/{waf_tags_response_all_of.rb → log_timeseries_get_response.rb} +11 -13
  256. data/lib/fastly/models/{included_with_waf_exclusion_item.rb → log_timeseries_get_response_meta.rb} +44 -45
  257. data/lib/fastly/models/{billing_bandwidth.rb → log_timeseries_get_response_meta_filters.rb} +13 -20
  258. data/lib/fastly/models/{waf_firewall_response.rb → log_timeseries_result.rb} +17 -17
  259. data/lib/fastly/models/{waf_exclusion_response.rb → log_timeseries_result_dimensions.rb} +10 -10
  260. data/lib/fastly/models/{waf_rule_revision_or_latest.rb → log_timeseries_value_field.rb} +6 -1
  261. data/lib/fastly/models/logging_azureblob_additional.rb +1 -1
  262. data/lib/fastly/models/logging_azureblob_response.rb +1 -1
  263. data/lib/fastly/models/{waf_firewall_versions_response.rb → ngwaf_response_body_get_all_services.rb} +34 -33
  264. data/lib/fastly/models/{waf_active_rule_response.rb → ngwaf_response_customer.rb} +10 -10
  265. data/lib/fastly/models/{billing_response_item_items_data.rb → ngwaf_response_enabled_services.rb} +12 -11
  266. data/lib/fastly/models/{waf_rule_revision_response_data_all_of.rb → ngwaf_response_links_get_all_services.rb} +10 -10
  267. data/lib/fastly/models/{billing_estimate_invoice_id.rb → ngwaf_response_links_get_all_services_links.rb} +11 -10
  268. data/lib/fastly/models/origin_inspector_response_body_get_all_services.rb +256 -0
  269. data/lib/fastly/models/origin_inspector_response_customer.rb +216 -0
  270. data/lib/fastly/models/origin_inspector_response_enabled_services.rb +219 -0
  271. data/lib/fastly/models/origin_inspector_response_links_get_all_services.rb +216 -0
  272. data/lib/fastly/models/origin_inspector_response_links_get_all_services_links.rb +217 -0
  273. data/lib/fastly/models/pop.rb +6 -6
  274. data/lib/fastly/models/rate_limiter.rb +1 -1
  275. data/lib/fastly/models/rate_limiter_response.rb +1 -1
  276. data/lib/fastly/models/resource.rb +1 -1
  277. data/lib/fastly/models/resource_response.rb +1 -1
  278. data/lib/fastly/models/results.rb +71 -1
  279. data/lib/fastly/models/schemas_snippet_response.rb +3 -2
  280. data/lib/fastly/models/snippet.rb +0 -8
  281. data/lib/fastly/models/snippet_response.rb +2 -1
  282. data/lib/fastly/models/{snippet_response_common_all_of.rb → snippet_response_all_of.rb} +3 -3
  283. data/lib/fastly/models/{waf_exclusions_response.rb → websockets_response_body_get_all_services.rb} +34 -33
  284. data/lib/fastly/models/{relationship_waf_tags_waf_tags.rb → websockets_response_customer.rb} +10 -12
  285. data/lib/fastly/models/{billing_estimate_lines.rb → websockets_response_enabled_services.rb} +12 -11
  286. data/lib/fastly/models/websockets_response_links_get_all_services.rb +216 -0
  287. data/lib/fastly/models/websockets_response_links_get_all_services_links.rb +217 -0
  288. data/lib/fastly/version.rb +1 -1
  289. data/lib/fastly.rb +84 -135
  290. data/sig.json +1 -1
  291. metadata +170 -272
  292. data/docs/Billing.md +0 -16
  293. data/docs/BillingApi.md +0 -139
  294. data/docs/BillingBandwidthTiers.md +0 -14
  295. data/docs/BillingEstimateLinesLineItems.md +0 -18
  296. data/docs/BillingEstimateResponse.md +0 -18
  297. data/docs/BillingRegions.md +0 -13
  298. data/docs/BillingResponse.md +0 -18
  299. data/docs/BillingResponseLineItem.md +0 -29
  300. data/docs/BillingStatus.md +0 -11
  301. data/docs/BillingTotal.md +0 -25
  302. data/docs/BillingTotalExtras.md +0 -12
  303. data/docs/HeaderResponseAdditional.md +0 -11
  304. data/docs/IncludedWithWafActiveRuleItem.md +0 -13
  305. data/docs/IncludedWithWafExclusionItem.md +0 -12
  306. data/docs/IncludedWithWafRuleItem.md +0 -12
  307. data/docs/LineItemData.md +0 -26
  308. data/docs/RelationshipMemberWafActiveRule.md +0 -11
  309. data/docs/RelationshipMemberWafFirewall.md +0 -11
  310. data/docs/RelationshipMemberWafFirewallVersion.md +0 -11
  311. data/docs/RelationshipMemberWafRule.md +0 -11
  312. data/docs/RelationshipMemberWafRuleRevision.md +0 -11
  313. data/docs/RelationshipMemberWafTag.md +0 -11
  314. data/docs/RelationshipWafActiveRulesWafActiveRules.md +0 -10
  315. data/docs/RelationshipWafFirewall.md +0 -10
  316. data/docs/RelationshipWafFirewallVersion.md +0 -10
  317. data/docs/RelationshipWafFirewallVersionWafFirewallVersion.md +0 -10
  318. data/docs/RelationshipWafFirewallVersions.md +0 -10
  319. data/docs/RelationshipWafFirewallWafFirewall.md +0 -10
  320. data/docs/RelationshipWafRule.md +0 -10
  321. data/docs/RelationshipWafRuleRevisionWafRuleRevisions.md +0 -10
  322. data/docs/RelationshipWafRuleRevisions.md +0 -10
  323. data/docs/RelationshipWafRuleWafRule.md +0 -10
  324. data/docs/RelationshipWafRules.md +0 -10
  325. data/docs/RelationshipWafTags.md +0 -10
  326. data/docs/RelationshipWafTagsWafTags.md +0 -10
  327. data/docs/RelationshipsForWafActiveRule.md +0 -11
  328. data/docs/RelationshipsForWafExclusion.md +0 -11
  329. data/docs/RelationshipsForWafFirewallVersion.md +0 -11
  330. data/docs/RelationshipsForWafRule.md +0 -11
  331. data/docs/SchemasSnippetResponseCommon.md +0 -15
  332. data/docs/SchemasWafFirewallVersion.md +0 -10
  333. data/docs/SchemasWafFirewallVersionData.md +0 -11
  334. data/docs/SnippetCommon.md +0 -13
  335. data/docs/SnippetResponsePost.md +0 -20
  336. data/docs/SnippetWithDynamicNumber.md +0 -14
  337. data/docs/TypeWafFirewallVersion.md +0 -9
  338. data/docs/TypeWafRule.md +0 -9
  339. data/docs/TypeWafRuleRevision.md +0 -9
  340. data/docs/TypeWafTag.md +0 -9
  341. data/docs/WafActiveRule.md +0 -10
  342. data/docs/WafActiveRuleData.md +0 -12
  343. data/docs/WafActiveRuleDataAttributes.md +0 -12
  344. data/docs/WafActiveRuleResponse.md +0 -10
  345. data/docs/WafActiveRuleResponseData.md +0 -13
  346. data/docs/WafActiveRuleResponseDataAllOf.md +0 -12
  347. data/docs/WafActiveRuleResponseDataAttributes.md +0 -14
  348. data/docs/WafActiveRuleResponseDataAttributesAllOf.md +0 -11
  349. data/docs/WafActiveRuleResponseDataRelationships.md +0 -11
  350. data/docs/WafActiveRulesApi.md +0 -367
  351. data/docs/WafActiveRulesResponse.md +0 -13
  352. data/docs/WafActiveRulesResponseAllOf.md +0 -11
  353. data/docs/WafExclusionData.md +0 -12
  354. data/docs/WafExclusionDataAttributes.md +0 -15
  355. data/docs/WafExclusionResponse.md +0 -10
  356. data/docs/WafExclusionResponseData.md +0 -13
  357. data/docs/WafExclusionResponseDataAllOf.md +0 -12
  358. data/docs/WafExclusionResponseDataAttributes.md +0 -18
  359. data/docs/WafExclusionResponseDataAttributesAllOf.md +0 -15
  360. data/docs/WafExclusionResponseDataRelationships.md +0 -11
  361. data/docs/WafExclusionsApi.md +0 -238
  362. data/docs/WafExclusionsResponse.md +0 -13
  363. data/docs/WafExclusionsResponseAllOf.md +0 -11
  364. data/docs/WafFirewallData.md +0 -11
  365. data/docs/WafFirewallDataAttributes.md +0 -13
  366. data/docs/WafFirewallResponse.md +0 -11
  367. data/docs/WafFirewallResponseData.md +0 -13
  368. data/docs/WafFirewallResponseDataAllOf.md +0 -12
  369. data/docs/WafFirewallResponseDataAttributes.md +0 -21
  370. data/docs/WafFirewallResponseDataAttributesAllOf.md +0 -18
  371. data/docs/WafFirewallVersion.md +0 -10
  372. data/docs/WafFirewallVersionData.md +0 -11
  373. data/docs/WafFirewallVersionDataAttributes.md +0 -40
  374. data/docs/WafFirewallVersionResponse.md +0 -11
  375. data/docs/WafFirewallVersionResponseData.md +0 -13
  376. data/docs/WafFirewallVersionResponseDataAllOf.md +0 -12
  377. data/docs/WafFirewallVersionResponseDataAttributes.md +0 -24
  378. data/docs/WafFirewallVersionResponseDataAttributesAllOf.md +0 -21
  379. data/docs/WafFirewallVersionsApi.md +0 -265
  380. data/docs/WafFirewallVersionsResponse.md +0 -13
  381. data/docs/WafFirewallVersionsResponseAllOf.md +0 -11
  382. data/docs/WafFirewallsApi.md +0 -222
  383. data/docs/WafFirewallsResponse.md +0 -13
  384. data/docs/WafFirewallsResponseAllOf.md +0 -11
  385. data/docs/WafRule.md +0 -12
  386. data/docs/WafRuleAttributes.md +0 -12
  387. data/docs/WafRuleResponse.md +0 -11
  388. data/docs/WafRuleResponseData.md +0 -13
  389. data/docs/WafRuleResponseDataAllOf.md +0 -10
  390. data/docs/WafRuleRevision.md +0 -12
  391. data/docs/WafRuleRevisionAttributes.md +0 -17
  392. data/docs/WafRuleRevisionResponse.md +0 -11
  393. data/docs/WafRuleRevisionResponseData.md +0 -13
  394. data/docs/WafRuleRevisionResponseDataAllOf.md +0 -10
  395. data/docs/WafRuleRevisionsApi.md +0 -103
  396. data/docs/WafRuleRevisionsResponse.md +0 -13
  397. data/docs/WafRuleRevisionsResponseAllOf.md +0 -11
  398. data/docs/WafRulesApi.md +0 -107
  399. data/docs/WafRulesResponse.md +0 -13
  400. data/docs/WafRulesResponseAllOf.md +0 -11
  401. data/docs/WafTag.md +0 -12
  402. data/docs/WafTagAttributes.md +0 -10
  403. data/docs/WafTagsApi.md +0 -61
  404. data/docs/WafTagsResponse.md +0 -13
  405. data/docs/WafTagsResponseAllOf.md +0 -11
  406. data/docs/WafTagsResponseDataItem.md +0 -13
  407. data/lib/fastly/api/billing_api.rb +0 -229
  408. data/lib/fastly/api/waf_active_rules_api.rb +0 -667
  409. data/lib/fastly/api/waf_exclusions_api.rb +0 -433
  410. data/lib/fastly/api/waf_firewall_versions_api.rb +0 -460
  411. data/lib/fastly/api/waf_firewalls_api.rb +0 -377
  412. data/lib/fastly/api/waf_rule_revisions_api.rb +0 -177
  413. data/lib/fastly/api/waf_rules_api.rb +0 -171
  414. data/lib/fastly/api/waf_tags_api.rb +0 -100
  415. data/lib/fastly/models/billing.rb +0 -278
  416. data/lib/fastly/models/billing_estimate_lines_line_items.rb +0 -288
  417. data/lib/fastly/models/billing_regions.rb +0 -243
  418. data/lib/fastly/models/billing_response.rb +0 -307
  419. data/lib/fastly/models/billing_response_line_item.rb +0 -418
  420. data/lib/fastly/models/billing_total.rb +0 -371
  421. data/lib/fastly/models/billing_total_extras.rb +0 -237
  422. data/lib/fastly/models/header_response_additional.rb +0 -229
  423. data/lib/fastly/models/included_with_waf_active_rule_item.rb +0 -266
  424. data/lib/fastly/models/included_with_waf_firewall_version_item.rb +0 -236
  425. data/lib/fastly/models/included_with_waf_rule_item.rb +0 -257
  426. data/lib/fastly/models/line_item_data.rb +0 -377
  427. data/lib/fastly/models/relationship_member_waf_active_rule.rb +0 -227
  428. data/lib/fastly/models/relationship_member_waf_firewall_version.rb +0 -228
  429. data/lib/fastly/models/relationship_member_waf_rule_revision.rb +0 -228
  430. data/lib/fastly/models/relationship_waf_active_rules.rb +0 -216
  431. data/lib/fastly/models/relationship_waf_firewall_version.rb +0 -216
  432. data/lib/fastly/models/relationship_waf_firewall_versions.rb +0 -216
  433. data/lib/fastly/models/relationship_waf_firewall_waf_firewall.rb +0 -218
  434. data/lib/fastly/models/relationship_waf_rule_revision.rb +0 -216
  435. data/lib/fastly/models/relationship_waf_rule_revision_waf_rule_revisions.rb +0 -218
  436. data/lib/fastly/models/relationship_waf_rules.rb +0 -216
  437. data/lib/fastly/models/relationships_for_waf_active_rule.rb +0 -245
  438. data/lib/fastly/models/relationships_for_waf_exclusion.rb +0 -245
  439. data/lib/fastly/models/relationships_for_waf_firewall_version.rb +0 -245
  440. data/lib/fastly/models/relationships_for_waf_rule.rb +0 -245
  441. data/lib/fastly/models/schemas_waf_firewall_version.rb +0 -216
  442. data/lib/fastly/models/schemas_waf_firewall_version_data.rb +0 -227
  443. data/lib/fastly/models/snippet_common.rb +0 -284
  444. data/lib/fastly/models/snippet_with_dynamic_number.rb +0 -314
  445. data/lib/fastly/models/type_waf_active_rule.rb +0 -34
  446. data/lib/fastly/models/type_waf_firewall_version.rb +0 -34
  447. data/lib/fastly/models/type_waf_rule.rb +0 -34
  448. data/lib/fastly/models/type_waf_rule_revision.rb +0 -34
  449. data/lib/fastly/models/type_waf_tag.rb +0 -34
  450. data/lib/fastly/models/waf_active_rule.rb +0 -216
  451. data/lib/fastly/models/waf_active_rule_data.rb +0 -236
  452. data/lib/fastly/models/waf_active_rule_response_data.rb +0 -253
  453. data/lib/fastly/models/waf_active_rule_response_data_all_of.rb +0 -234
  454. data/lib/fastly/models/waf_active_rule_response_data_attributes.rb +0 -268
  455. data/lib/fastly/models/waf_active_rule_response_data_attributes_all_of.rb +0 -227
  456. data/lib/fastly/models/waf_active_rule_response_data_relationships.rb +0 -245
  457. data/lib/fastly/models/waf_active_rules_response_all_of.rb +0 -229
  458. data/lib/fastly/models/waf_exclusion.rb +0 -216
  459. data/lib/fastly/models/waf_exclusion_data.rb +0 -236
  460. data/lib/fastly/models/waf_exclusion_data_attributes.rb +0 -316
  461. data/lib/fastly/models/waf_exclusion_response_data.rb +0 -254
  462. data/lib/fastly/models/waf_exclusion_response_data_all_of.rb +0 -235
  463. data/lib/fastly/models/waf_exclusion_response_data_attributes.rb +0 -357
  464. data/lib/fastly/models/waf_exclusion_response_data_attributes_all_of.rb +0 -316
  465. data/lib/fastly/models/waf_exclusion_response_data_relationships.rb +0 -245
  466. data/lib/fastly/models/waf_exclusions_response_all_of.rb +0 -229
  467. data/lib/fastly/models/waf_firewall.rb +0 -216
  468. data/lib/fastly/models/waf_firewall_data.rb +0 -227
  469. data/lib/fastly/models/waf_firewall_data_attributes.rb +0 -248
  470. data/lib/fastly/models/waf_firewall_response_data.rb +0 -253
  471. data/lib/fastly/models/waf_firewall_response_data_all_of.rb +0 -234
  472. data/lib/fastly/models/waf_firewall_response_data_attributes.rb +0 -337
  473. data/lib/fastly/models/waf_firewall_response_data_attributes_all_of.rb +0 -296
  474. data/lib/fastly/models/waf_firewall_version.rb +0 -216
  475. data/lib/fastly/models/waf_firewall_version_data.rb +0 -227
  476. data/lib/fastly/models/waf_firewall_version_data_attributes.rb +0 -551
  477. data/lib/fastly/models/waf_firewall_version_response.rb +0 -227
  478. data/lib/fastly/models/waf_firewall_version_response_data_all_of.rb +0 -235
  479. data/lib/fastly/models/waf_firewall_version_response_data_attributes.rb +0 -403
  480. data/lib/fastly/models/waf_firewall_version_response_data_attributes_all_of.rb +0 -362
  481. data/lib/fastly/models/waf_firewall_versions_response_all_of.rb +0 -229
  482. data/lib/fastly/models/waf_firewalls_response_all_of.rb +0 -229
  483. data/lib/fastly/models/waf_rule_attributes.rb +0 -283
  484. data/lib/fastly/models/waf_rule_response.rb +0 -227
  485. data/lib/fastly/models/waf_rule_response_data.rb +0 -253
  486. data/lib/fastly/models/waf_rule_response_data_all_of.rb +0 -216
  487. data/lib/fastly/models/waf_rule_revision.rb +0 -237
  488. data/lib/fastly/models/waf_rule_revision_attributes.rb +0 -321
  489. data/lib/fastly/models/waf_rule_revision_response.rb +0 -227
  490. data/lib/fastly/models/waf_rule_revision_response_data.rb +0 -254
  491. data/lib/fastly/models/waf_rule_revisions_response.rb +0 -255
  492. data/lib/fastly/models/waf_rule_revisions_response_all_of.rb +0 -229
  493. data/lib/fastly/models/waf_rules_response.rb +0 -255
  494. data/lib/fastly/models/waf_tag.rb +0 -237
  495. data/lib/fastly/models/waf_tags_response.rb +0 -255
  496. data/lib/fastly/models/waf_tags_response_data_item.rb +0 -254
@@ -1,236 +0,0 @@
1
- =begin
2
- #Fastly API
3
-
4
- #Via the Fastly API you can perform any of the operations that are possible within the management console, including creating services, domains, and backends, configuring rules or uploading your own application code, as well as account operations such as user administration and billing reports. The API is organized into collections of endpoints that allow manipulation of objects related to Fastly services and accounts. For the most accurate and up-to-date API reference content, visit our [Developer Hub](https://www.fastly.com/documentation/reference/api/)
5
-
6
- The version of the OpenAPI document: 1.0.0
7
- Contact: oss@fastly.com
8
-
9
- =end
10
-
11
- require 'date'
12
- require 'time'
13
-
14
- module Fastly
15
- class IncludedWithWafFirewallVersionItem
16
- attr_accessor :data
17
-
18
- # Attribute mapping from ruby-style variable name to JSON key.
19
- def self.attribute_map
20
- {
21
- :'data' => :'data'
22
- }
23
- end
24
-
25
- # Returns all the JSON keys this model knows about
26
- def self.acceptable_attributes
27
- attribute_map.values
28
- end
29
-
30
- # Attribute type mapping.
31
- def self.fastly_types
32
- {
33
- :'data' => :'WafActiveRuleData'
34
- }
35
- end
36
-
37
- # List of attributes with nullable: true
38
- def self.fastly_nullable
39
- Set.new([
40
- ])
41
- end
42
-
43
- # List of class defined in anyOf (OpenAPI v3)
44
- def self.fastly_any_of
45
- [
46
- :'SchemasWafFirewallVersion',
47
- :'WafActiveRule'
48
- ]
49
- end
50
-
51
- # Initializes the object
52
- # @param [Hash] attributes Model attributes in the form of hash
53
- def initialize(attributes = {})
54
- if (!attributes.is_a?(Hash))
55
- fail ArgumentError, "The input argument (attributes) must be a hash in `Fastly::IncludedWithWafFirewallVersionItem` initialize method"
56
- end
57
-
58
- # check to see if the attribute exists and convert string to symbol for hash key
59
- attributes = attributes.each_with_object({}) { |(k, v), h|
60
- if (!self.class.attribute_map.key?(k.to_sym))
61
- fail ArgumentError, "`#{k}` is not a valid attribute in `Fastly::IncludedWithWafFirewallVersionItem`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
62
- end
63
- h[k.to_sym] = v
64
- }
65
-
66
- if attributes.key?(:'data')
67
- self.data = attributes[:'data']
68
- end
69
- end
70
-
71
- # Show invalid properties with the reasons. Usually used together with valid?
72
- # @return Array for valid properties with the reasons
73
- def list_invalid_properties
74
- invalid_properties = Array.new
75
- invalid_properties
76
- end
77
-
78
- # Check to see if the all the properties in the model are valid
79
- # @return true if the model is valid
80
- def valid?
81
- _any_of_found = false
82
- self.class.fastly_any_of.each do |_class|
83
- _any_of = Fastly.const_get(_class).build_from_hash(self.to_hash)
84
- if _any_of.valid?
85
- _any_of_found = true
86
- end
87
- end
88
-
89
- if !_any_of_found
90
- return false
91
- end
92
-
93
- true
94
- end
95
-
96
- # Checks equality by comparing each attribute.
97
- # @param [Object] Object to be compared
98
- def ==(o)
99
- return true if self.equal?(o)
100
- self.class == o.class &&
101
- data == o.data
102
- end
103
-
104
- # @see the `==` method
105
- # @param [Object] Object to be compared
106
- def eql?(o)
107
- self == o
108
- end
109
-
110
- # Calculates hash code according to all attributes.
111
- # @return [Integer] Hash code
112
- def hash
113
- [data].hash
114
- end
115
-
116
- # Builds the object from hash
117
- # @param [Hash] attributes Model attributes in the form of hash
118
- # @return [Object] Returns the model itself
119
- def self.build_from_hash(attributes)
120
- new.build_from_hash(attributes)
121
- end
122
-
123
- # Builds the object from hash
124
- # @param [Hash] attributes Model attributes in the form of hash
125
- # @return [Object] Returns the model itself
126
- def build_from_hash(attributes)
127
- return nil unless attributes.is_a?(Hash)
128
- self.class.fastly_types.each_pair do |key, type|
129
- if attributes[self.class.attribute_map[key]].nil? && self.class.fastly_nullable.include?(key)
130
- self.send("#{key}=", nil)
131
- elsif type =~ /\AArray<(.*)>/i
132
- # check to ensure the input is an array given that the attribute
133
- # is documented as an array but the input is not
134
- if attributes[self.class.attribute_map[key]].is_a?(Array)
135
- self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
136
- end
137
- elsif !attributes[self.class.attribute_map[key]].nil?
138
- self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
139
- end
140
- end
141
-
142
- self
143
- end
144
-
145
- # Deserializes the data based on type
146
- # @param string type Data type
147
- # @param string value Value to be deserialized
148
- # @return [Object] Deserialized data
149
- def _deserialize(type, value)
150
- case type.to_sym
151
- when :Time
152
- Time.parse(value)
153
- when :Date
154
- Date.parse(value)
155
- when :String
156
- value.to_s
157
- when :Integer
158
- value.to_i
159
- when :Float
160
- value.to_f
161
- when :Boolean
162
- if value.to_s =~ /\A(true|t|yes|y|1)\z/i
163
- true
164
- else
165
- false
166
- end
167
- when :Object
168
- # generic object (usually a Hash), return directly
169
- value
170
- when /\AArray<(?<inner_type>.+)>\z/
171
- inner_type = Regexp.last_match[:inner_type]
172
- value.map { |v| _deserialize(inner_type, v) }
173
- when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
174
- k_type = Regexp.last_match[:k_type]
175
- v_type = Regexp.last_match[:v_type]
176
- {}.tap do |hash|
177
- value.each do |k, v|
178
- hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
179
- end
180
- end
181
- else # model
182
- # models (e.g. Pet) or oneOf
183
- klass = Fastly.const_get(type)
184
- klass.respond_to?(:fastly_one_of) ? klass.build(value) : klass.build_from_hash(value)
185
- end
186
- end
187
-
188
- # Returns the string representation of the object
189
- # @return [String] String presentation of the object
190
- def to_s
191
- to_hash.to_s
192
- end
193
-
194
- # to_body is an alias to to_hash (backward compatibility)
195
- # @return [Hash] Returns the object in the form of hash
196
- def to_body
197
- to_hash
198
- end
199
-
200
- # Returns the object in the form of hash
201
- # @return [Hash] Returns the object in the form of hash
202
- def to_hash
203
- hash = {}
204
- self.class.attribute_map.each_pair do |attr, param|
205
- value = self.send(attr)
206
- if value.nil?
207
- is_nullable = self.class.fastly_nullable.include?(attr)
208
- next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
209
- end
210
-
211
- hash[param] = _to_hash(value)
212
- end
213
- hash
214
- end
215
-
216
- # Outputs non-array value in the form of hash
217
- # For object, use to_hash. Otherwise, just return the value
218
- # @param [Object] value Any valid value
219
- # @return [Hash] Returns the value in the form of hash
220
- def _to_hash(value)
221
- if value.is_a?(Array)
222
- value.compact.map { |v| _to_hash(v) }
223
- elsif value.is_a?(Hash)
224
- {}.tap do |hash|
225
- value.each { |k, v| hash[k] = _to_hash(v) }
226
- end
227
- elsif value.respond_to? :to_hash
228
- value.to_hash
229
- else
230
- value
231
- end
232
- end
233
-
234
- end
235
-
236
- end
@@ -1,257 +0,0 @@
1
- =begin
2
- #Fastly API
3
-
4
- #Via the Fastly API you can perform any of the operations that are possible within the management console, including creating services, domains, and backends, configuring rules or uploading your own application code, as well as account operations such as user administration and billing reports. The API is organized into collections of endpoints that allow manipulation of objects related to Fastly services and accounts. For the most accurate and up-to-date API reference content, visit our [Developer Hub](https://www.fastly.com/documentation/reference/api/)
5
-
6
- The version of the OpenAPI document: 1.0.0
7
- Contact: oss@fastly.com
8
-
9
- =end
10
-
11
- require 'date'
12
- require 'time'
13
-
14
- module Fastly
15
- class IncludedWithWafRuleItem
16
- attr_accessor :type
17
-
18
- # Alphanumeric string identifying a WAF rule revision.
19
- attr_accessor :id
20
-
21
- attr_accessor :attributes
22
-
23
- # Attribute mapping from ruby-style variable name to JSON key.
24
- def self.attribute_map
25
- {
26
- :'type' => :'type',
27
- :'id' => :'id',
28
- :'attributes' => :'attributes'
29
- }
30
- end
31
-
32
- # Returns all the JSON keys this model knows about
33
- def self.acceptable_attributes
34
- attribute_map.values
35
- end
36
-
37
- # Attribute type mapping.
38
- def self.fastly_types
39
- {
40
- :'type' => :'TypeWafRuleRevision',
41
- :'id' => :'String',
42
- :'attributes' => :'WafRuleRevisionAttributes'
43
- }
44
- end
45
-
46
- # List of attributes with nullable: true
47
- def self.fastly_nullable
48
- Set.new([
49
- ])
50
- end
51
-
52
- # List of class defined in anyOf (OpenAPI v3)
53
- def self.fastly_any_of
54
- [
55
- :'WafRuleRevision',
56
- :'WafTag'
57
- ]
58
- end
59
-
60
- # Initializes the object
61
- # @param [Hash] attributes Model attributes in the form of hash
62
- def initialize(attributes = {})
63
- if (!attributes.is_a?(Hash))
64
- fail ArgumentError, "The input argument (attributes) must be a hash in `Fastly::IncludedWithWafRuleItem` initialize method"
65
- end
66
-
67
- # check to see if the attribute exists and convert string to symbol for hash key
68
- attributes = attributes.each_with_object({}) { |(k, v), h|
69
- if (!self.class.attribute_map.key?(k.to_sym))
70
- fail ArgumentError, "`#{k}` is not a valid attribute in `Fastly::IncludedWithWafRuleItem`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
71
- end
72
- h[k.to_sym] = v
73
- }
74
-
75
- if attributes.key?(:'type')
76
- self.type = attributes[:'type']
77
- else
78
- self.type = 'waf_rule_revision'
79
- end
80
-
81
- if attributes.key?(:'id')
82
- self.id = attributes[:'id']
83
- end
84
-
85
- if attributes.key?(:'attributes')
86
- self.attributes = attributes[:'attributes']
87
- end
88
- end
89
-
90
- # Show invalid properties with the reasons. Usually used together with valid?
91
- # @return Array for valid properties with the reasons
92
- def list_invalid_properties
93
- invalid_properties = Array.new
94
- invalid_properties
95
- end
96
-
97
- # Check to see if the all the properties in the model are valid
98
- # @return true if the model is valid
99
- def valid?
100
- _any_of_found = false
101
- self.class.fastly_any_of.each do |_class|
102
- _any_of = Fastly.const_get(_class).build_from_hash(self.to_hash)
103
- if _any_of.valid?
104
- _any_of_found = true
105
- end
106
- end
107
-
108
- if !_any_of_found
109
- return false
110
- end
111
-
112
- true
113
- end
114
-
115
- # Checks equality by comparing each attribute.
116
- # @param [Object] Object to be compared
117
- def ==(o)
118
- return true if self.equal?(o)
119
- self.class == o.class &&
120
- type == o.type &&
121
- id == o.id &&
122
- attributes == o.attributes
123
- end
124
-
125
- # @see the `==` method
126
- # @param [Object] Object to be compared
127
- def eql?(o)
128
- self == o
129
- end
130
-
131
- # Calculates hash code according to all attributes.
132
- # @return [Integer] Hash code
133
- def hash
134
- [type, id, attributes].hash
135
- end
136
-
137
- # Builds the object from hash
138
- # @param [Hash] attributes Model attributes in the form of hash
139
- # @return [Object] Returns the model itself
140
- def self.build_from_hash(attributes)
141
- new.build_from_hash(attributes)
142
- end
143
-
144
- # Builds the object from hash
145
- # @param [Hash] attributes Model attributes in the form of hash
146
- # @return [Object] Returns the model itself
147
- def build_from_hash(attributes)
148
- return nil unless attributes.is_a?(Hash)
149
- self.class.fastly_types.each_pair do |key, type|
150
- if attributes[self.class.attribute_map[key]].nil? && self.class.fastly_nullable.include?(key)
151
- self.send("#{key}=", nil)
152
- elsif type =~ /\AArray<(.*)>/i
153
- # check to ensure the input is an array given that the attribute
154
- # is documented as an array but the input is not
155
- if attributes[self.class.attribute_map[key]].is_a?(Array)
156
- self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
157
- end
158
- elsif !attributes[self.class.attribute_map[key]].nil?
159
- self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
160
- end
161
- end
162
-
163
- self
164
- end
165
-
166
- # Deserializes the data based on type
167
- # @param string type Data type
168
- # @param string value Value to be deserialized
169
- # @return [Object] Deserialized data
170
- def _deserialize(type, value)
171
- case type.to_sym
172
- when :Time
173
- Time.parse(value)
174
- when :Date
175
- Date.parse(value)
176
- when :String
177
- value.to_s
178
- when :Integer
179
- value.to_i
180
- when :Float
181
- value.to_f
182
- when :Boolean
183
- if value.to_s =~ /\A(true|t|yes|y|1)\z/i
184
- true
185
- else
186
- false
187
- end
188
- when :Object
189
- # generic object (usually a Hash), return directly
190
- value
191
- when /\AArray<(?<inner_type>.+)>\z/
192
- inner_type = Regexp.last_match[:inner_type]
193
- value.map { |v| _deserialize(inner_type, v) }
194
- when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
195
- k_type = Regexp.last_match[:k_type]
196
- v_type = Regexp.last_match[:v_type]
197
- {}.tap do |hash|
198
- value.each do |k, v|
199
- hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
200
- end
201
- end
202
- else # model
203
- # models (e.g. Pet) or oneOf
204
- klass = Fastly.const_get(type)
205
- klass.respond_to?(:fastly_one_of) ? klass.build(value) : klass.build_from_hash(value)
206
- end
207
- end
208
-
209
- # Returns the string representation of the object
210
- # @return [String] String presentation of the object
211
- def to_s
212
- to_hash.to_s
213
- end
214
-
215
- # to_body is an alias to to_hash (backward compatibility)
216
- # @return [Hash] Returns the object in the form of hash
217
- def to_body
218
- to_hash
219
- end
220
-
221
- # Returns the object in the form of hash
222
- # @return [Hash] Returns the object in the form of hash
223
- def to_hash
224
- hash = {}
225
- self.class.attribute_map.each_pair do |attr, param|
226
- value = self.send(attr)
227
- if value.nil?
228
- is_nullable = self.class.fastly_nullable.include?(attr)
229
- next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
230
- end
231
-
232
- hash[param] = _to_hash(value)
233
- end
234
- hash
235
- end
236
-
237
- # Outputs non-array value in the form of hash
238
- # For object, use to_hash. Otherwise, just return the value
239
- # @param [Object] value Any valid value
240
- # @return [Hash] Returns the value in the form of hash
241
- def _to_hash(value)
242
- if value.is_a?(Array)
243
- value.compact.map { |v| _to_hash(v) }
244
- elsif value.is_a?(Hash)
245
- {}.tap do |hash|
246
- value.each { |k, v| hash[k] = _to_hash(v) }
247
- end
248
- elsif value.respond_to? :to_hash
249
- value.to_hash
250
- else
251
- value
252
- end
253
- end
254
-
255
- end
256
-
257
- end