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,235 +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 WafExclusionResponseDataAllOf
16
- # Alphanumeric string identifying a WAF exclusion.
17
- attr_accessor :id
18
-
19
- attr_accessor :attributes
20
-
21
- attr_accessor :relationships
22
-
23
- # Attribute mapping from ruby-style variable name to JSON key.
24
- def self.attribute_map
25
- {
26
- :'id' => :'id',
27
- :'attributes' => :'attributes',
28
- :'relationships' => :'relationships'
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
- :'id' => :'String',
41
- :'attributes' => :'WafExclusionResponseDataAttributes',
42
- :'relationships' => :'WafExclusionResponseDataRelationships'
43
- }
44
- end
45
-
46
- # List of attributes with nullable: true
47
- def self.fastly_nullable
48
- Set.new([
49
- ])
50
- end
51
-
52
- # Initializes the object
53
- # @param [Hash] attributes Model attributes in the form of hash
54
- def initialize(attributes = {})
55
- if (!attributes.is_a?(Hash))
56
- fail ArgumentError, "The input argument (attributes) must be a hash in `Fastly::WafExclusionResponseDataAllOf` initialize method"
57
- end
58
-
59
- # check to see if the attribute exists and convert string to symbol for hash key
60
- attributes = attributes.each_with_object({}) { |(k, v), h|
61
- if (!self.class.attribute_map.key?(k.to_sym))
62
- fail ArgumentError, "`#{k}` is not a valid attribute in `Fastly::WafExclusionResponseDataAllOf`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
63
- end
64
- h[k.to_sym] = v
65
- }
66
-
67
- if attributes.key?(:'id')
68
- self.id = attributes[:'id']
69
- end
70
-
71
- if attributes.key?(:'attributes')
72
- self.attributes = attributes[:'attributes']
73
- end
74
-
75
- if attributes.key?(:'relationships')
76
- self.relationships = attributes[:'relationships']
77
- end
78
- end
79
-
80
- # Show invalid properties with the reasons. Usually used together with valid?
81
- # @return Array for valid properties with the reasons
82
- def list_invalid_properties
83
- invalid_properties = Array.new
84
- invalid_properties
85
- end
86
-
87
- # Check to see if the all the properties in the model are valid
88
- # @return true if the model is valid
89
- def valid?
90
- true
91
- end
92
-
93
- # Checks equality by comparing each attribute.
94
- # @param [Object] Object to be compared
95
- def ==(o)
96
- return true if self.equal?(o)
97
- self.class == o.class &&
98
- id == o.id &&
99
- attributes == o.attributes &&
100
- relationships == o.relationships
101
- end
102
-
103
- # @see the `==` method
104
- # @param [Object] Object to be compared
105
- def eql?(o)
106
- self == o
107
- end
108
-
109
- # Calculates hash code according to all attributes.
110
- # @return [Integer] Hash code
111
- def hash
112
- [id, attributes, relationships].hash
113
- end
114
-
115
- # Builds the object from hash
116
- # @param [Hash] attributes Model attributes in the form of hash
117
- # @return [Object] Returns the model itself
118
- def self.build_from_hash(attributes)
119
- new.build_from_hash(attributes)
120
- end
121
-
122
- # Builds the object from hash
123
- # @param [Hash] attributes Model attributes in the form of hash
124
- # @return [Object] Returns the model itself
125
- def build_from_hash(attributes)
126
- return nil unless attributes.is_a?(Hash)
127
- self.class.fastly_types.each_pair do |key, type|
128
- if attributes[self.class.attribute_map[key]].nil? && self.class.fastly_nullable.include?(key)
129
- self.send("#{key}=", nil)
130
- elsif type =~ /\AArray<(.*)>/i
131
- # check to ensure the input is an array given that the attribute
132
- # is documented as an array but the input is not
133
- if attributes[self.class.attribute_map[key]].is_a?(Array)
134
- self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
135
- end
136
- elsif !attributes[self.class.attribute_map[key]].nil?
137
- self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
138
- end
139
- end
140
-
141
- self
142
- end
143
-
144
- # Deserializes the data based on type
145
- # @param string type Data type
146
- # @param string value Value to be deserialized
147
- # @return [Object] Deserialized data
148
- def _deserialize(type, value)
149
- case type.to_sym
150
- when :Time
151
- Time.parse(value)
152
- when :Date
153
- Date.parse(value)
154
- when :String
155
- value.to_s
156
- when :Integer
157
- value.to_i
158
- when :Float
159
- value.to_f
160
- when :Boolean
161
- if value.to_s =~ /\A(true|t|yes|y|1)\z/i
162
- true
163
- else
164
- false
165
- end
166
- when :Object
167
- # generic object (usually a Hash), return directly
168
- value
169
- when /\AArray<(?<inner_type>.+)>\z/
170
- inner_type = Regexp.last_match[:inner_type]
171
- value.map { |v| _deserialize(inner_type, v) }
172
- when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
173
- k_type = Regexp.last_match[:k_type]
174
- v_type = Regexp.last_match[:v_type]
175
- {}.tap do |hash|
176
- value.each do |k, v|
177
- hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
178
- end
179
- end
180
- else # model
181
- # models (e.g. Pet) or oneOf
182
- klass = Fastly.const_get(type)
183
- klass.respond_to?(:fastly_one_of) ? klass.build(value) : klass.build_from_hash(value)
184
- end
185
- end
186
-
187
- # Returns the string representation of the object
188
- # @return [String] String presentation of the object
189
- def to_s
190
- to_hash.to_s
191
- end
192
-
193
- # to_body is an alias to to_hash (backward compatibility)
194
- # @return [Hash] Returns the object in the form of hash
195
- def to_body
196
- to_hash
197
- end
198
-
199
- # Returns the object in the form of hash
200
- # @return [Hash] Returns the object in the form of hash
201
- def to_hash
202
- hash = {}
203
- self.class.attribute_map.each_pair do |attr, param|
204
- value = self.send(attr)
205
- if value.nil?
206
- is_nullable = self.class.fastly_nullable.include?(attr)
207
- next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
208
- end
209
-
210
- hash[param] = _to_hash(value)
211
- end
212
- hash
213
- end
214
-
215
- # Outputs non-array value in the form of hash
216
- # For object, use to_hash. Otherwise, just return the value
217
- # @param [Object] value Any valid value
218
- # @return [Hash] Returns the value in the form of hash
219
- def _to_hash(value)
220
- if value.is_a?(Array)
221
- value.compact.map { |v| _to_hash(v) }
222
- elsif value.is_a?(Hash)
223
- {}.tap do |hash|
224
- value.each { |k, v| hash[k] = _to_hash(v) }
225
- end
226
- elsif value.respond_to? :to_hash
227
- value.to_hash
228
- else
229
- value
230
- end
231
- end
232
-
233
- end
234
-
235
- end
@@ -1,357 +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 WafExclusionResponseDataAttributes
16
- # Date and time in ISO 8601 format.
17
- attr_accessor :created_at
18
-
19
- # Date and time in ISO 8601 format.
20
- attr_accessor :deleted_at
21
-
22
- # Date and time in ISO 8601 format.
23
- attr_accessor :updated_at
24
-
25
- # A conditional expression in VCL used to determine if the condition is met.
26
- attr_accessor :condition
27
-
28
- # The type of exclusion.
29
- attr_accessor :exclusion_type
30
-
31
- # Whether to generate a log upon matching.
32
- attr_accessor :logging
33
-
34
- # Name of the exclusion.
35
- attr_accessor :name
36
-
37
- # A numeric ID identifying a WAF exclusion.
38
- attr_accessor :number
39
-
40
- # The variable to exclude. An optional selector can be specified after the variable separated by a colon (`:`) to restrict the variable to a particular parameter. Required for `exclusion_type=variable`.
41
- attr_accessor :variable
42
-
43
- class EnumAttributeValidator
44
- attr_reader :datatype
45
- attr_reader :allowable_values
46
-
47
- def initialize(datatype, allowable_values)
48
- @allowable_values = allowable_values.map do |value|
49
- case datatype.to_s
50
- when /Integer/i
51
- value.to_i
52
- when /Float/i
53
- value.to_f
54
- else
55
- value
56
- end
57
- end
58
- end
59
-
60
- def valid?(value)
61
- !value || allowable_values.include?(value)
62
- end
63
- end
64
-
65
- # Attribute mapping from ruby-style variable name to JSON key.
66
- def self.attribute_map
67
- {
68
- :'created_at' => :'created_at',
69
- :'deleted_at' => :'deleted_at',
70
- :'updated_at' => :'updated_at',
71
- :'condition' => :'condition',
72
- :'exclusion_type' => :'exclusion_type',
73
- :'logging' => :'logging',
74
- :'name' => :'name',
75
- :'number' => :'number',
76
- :'variable' => :'variable'
77
- }
78
- end
79
-
80
- # Returns all the JSON keys this model knows about
81
- def self.acceptable_attributes
82
- attribute_map.values
83
- end
84
-
85
- # Attribute type mapping.
86
- def self.fastly_types
87
- {
88
- :'created_at' => :'Time',
89
- :'deleted_at' => :'Time',
90
- :'updated_at' => :'Time',
91
- :'condition' => :'String',
92
- :'exclusion_type' => :'String',
93
- :'logging' => :'Boolean',
94
- :'name' => :'String',
95
- :'number' => :'Integer',
96
- :'variable' => :'String'
97
- }
98
- end
99
-
100
- # List of attributes with nullable: true
101
- def self.fastly_nullable
102
- Set.new([
103
- :'created_at',
104
- :'deleted_at',
105
- :'updated_at',
106
- :'variable'
107
- ])
108
- end
109
-
110
- # List of class defined in allOf (OpenAPI v3)
111
- def self.fastly_all_of
112
- [
113
- :'Timestamps',
114
- :'WafExclusionResponseDataAttributesAllOf'
115
- ]
116
- end
117
-
118
- # Initializes the object
119
- # @param [Hash] attributes Model attributes in the form of hash
120
- def initialize(attributes = {})
121
- if (!attributes.is_a?(Hash))
122
- fail ArgumentError, "The input argument (attributes) must be a hash in `Fastly::WafExclusionResponseDataAttributes` initialize method"
123
- end
124
-
125
- # check to see if the attribute exists and convert string to symbol for hash key
126
- attributes = attributes.each_with_object({}) { |(k, v), h|
127
- if (!self.class.attribute_map.key?(k.to_sym))
128
- fail ArgumentError, "`#{k}` is not a valid attribute in `Fastly::WafExclusionResponseDataAttributes`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
129
- end
130
- h[k.to_sym] = v
131
- }
132
-
133
- if attributes.key?(:'created_at')
134
- self.created_at = attributes[:'created_at']
135
- end
136
-
137
- if attributes.key?(:'deleted_at')
138
- self.deleted_at = attributes[:'deleted_at']
139
- end
140
-
141
- if attributes.key?(:'updated_at')
142
- self.updated_at = attributes[:'updated_at']
143
- end
144
-
145
- if attributes.key?(:'condition')
146
- self.condition = attributes[:'condition']
147
- end
148
-
149
- if attributes.key?(:'exclusion_type')
150
- self.exclusion_type = attributes[:'exclusion_type']
151
- end
152
-
153
- if attributes.key?(:'logging')
154
- self.logging = attributes[:'logging']
155
- else
156
- self.logging = true
157
- end
158
-
159
- if attributes.key?(:'name')
160
- self.name = attributes[:'name']
161
- end
162
-
163
- if attributes.key?(:'number')
164
- self.number = attributes[:'number']
165
- end
166
-
167
- if attributes.key?(:'variable')
168
- self.variable = attributes[:'variable']
169
- end
170
- end
171
-
172
- # Show invalid properties with the reasons. Usually used together with valid?
173
- # @return Array for valid properties with the reasons
174
- def list_invalid_properties
175
- invalid_properties = Array.new
176
- invalid_properties
177
- end
178
-
179
- # Check to see if the all the properties in the model are valid
180
- # @return true if the model is valid
181
- def valid?
182
- exclusion_type_validator = EnumAttributeValidator.new('String', ["rule", "variable", "waf"])
183
- return false unless exclusion_type_validator.valid?(@exclusion_type)
184
- variable_validator = EnumAttributeValidator.new('String', ["req.cookies", "req.headers", "req.post", "req.post_filename", "req.qs", "null"])
185
- return false unless variable_validator.valid?(@variable)
186
- true
187
- end
188
-
189
- # Custom attribute writer method checking allowed values (enum).
190
- # @param [Object] exclusion_type Object to be assigned
191
- def exclusion_type=(exclusion_type)
192
- validator = EnumAttributeValidator.new('String', ["rule", "variable", "waf"])
193
- unless validator.valid?(exclusion_type)
194
- fail ArgumentError, "invalid value for \"exclusion_type\", must be one of #{validator.allowable_values}."
195
- end
196
- @exclusion_type = exclusion_type
197
- end
198
-
199
- # Custom attribute writer method checking allowed values (enum).
200
- # @param [Object] variable Object to be assigned
201
- def variable=(variable)
202
- validator = EnumAttributeValidator.new('String', ["req.cookies", "req.headers", "req.post", "req.post_filename", "req.qs", "null"])
203
- unless validator.valid?(variable)
204
- fail ArgumentError, "invalid value for \"variable\", must be one of #{validator.allowable_values}."
205
- end
206
- @variable = variable
207
- end
208
-
209
- # Checks equality by comparing each attribute.
210
- # @param [Object] Object to be compared
211
- def ==(o)
212
- return true if self.equal?(o)
213
- self.class == o.class &&
214
- created_at == o.created_at &&
215
- deleted_at == o.deleted_at &&
216
- updated_at == o.updated_at &&
217
- condition == o.condition &&
218
- exclusion_type == o.exclusion_type &&
219
- logging == o.logging &&
220
- name == o.name &&
221
- number == o.number &&
222
- variable == o.variable
223
- end
224
-
225
- # @see the `==` method
226
- # @param [Object] Object to be compared
227
- def eql?(o)
228
- self == o
229
- end
230
-
231
- # Calculates hash code according to all attributes.
232
- # @return [Integer] Hash code
233
- def hash
234
- [created_at, deleted_at, updated_at, condition, exclusion_type, logging, name, number, variable].hash
235
- end
236
-
237
- # Builds the object from hash
238
- # @param [Hash] attributes Model attributes in the form of hash
239
- # @return [Object] Returns the model itself
240
- def self.build_from_hash(attributes)
241
- new.build_from_hash(attributes)
242
- end
243
-
244
- # Builds the object from hash
245
- # @param [Hash] attributes Model attributes in the form of hash
246
- # @return [Object] Returns the model itself
247
- def build_from_hash(attributes)
248
- return nil unless attributes.is_a?(Hash)
249
- self.class.fastly_types.each_pair do |key, type|
250
- if attributes[self.class.attribute_map[key]].nil? && self.class.fastly_nullable.include?(key)
251
- self.send("#{key}=", nil)
252
- elsif type =~ /\AArray<(.*)>/i
253
- # check to ensure the input is an array given that the attribute
254
- # is documented as an array but the input is not
255
- if attributes[self.class.attribute_map[key]].is_a?(Array)
256
- self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
257
- end
258
- elsif !attributes[self.class.attribute_map[key]].nil?
259
- self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
260
- end
261
- end
262
-
263
- self
264
- end
265
-
266
- # Deserializes the data based on type
267
- # @param string type Data type
268
- # @param string value Value to be deserialized
269
- # @return [Object] Deserialized data
270
- def _deserialize(type, value)
271
- case type.to_sym
272
- when :Time
273
- Time.parse(value)
274
- when :Date
275
- Date.parse(value)
276
- when :String
277
- value.to_s
278
- when :Integer
279
- value.to_i
280
- when :Float
281
- value.to_f
282
- when :Boolean
283
- if value.to_s =~ /\A(true|t|yes|y|1)\z/i
284
- true
285
- else
286
- false
287
- end
288
- when :Object
289
- # generic object (usually a Hash), return directly
290
- value
291
- when /\AArray<(?<inner_type>.+)>\z/
292
- inner_type = Regexp.last_match[:inner_type]
293
- value.map { |v| _deserialize(inner_type, v) }
294
- when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
295
- k_type = Regexp.last_match[:k_type]
296
- v_type = Regexp.last_match[:v_type]
297
- {}.tap do |hash|
298
- value.each do |k, v|
299
- hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
300
- end
301
- end
302
- else # model
303
- # models (e.g. Pet) or oneOf
304
- klass = Fastly.const_get(type)
305
- klass.respond_to?(:fastly_one_of) ? klass.build(value) : klass.build_from_hash(value)
306
- end
307
- end
308
-
309
- # Returns the string representation of the object
310
- # @return [String] String presentation of the object
311
- def to_s
312
- to_hash.to_s
313
- end
314
-
315
- # to_body is an alias to to_hash (backward compatibility)
316
- # @return [Hash] Returns the object in the form of hash
317
- def to_body
318
- to_hash
319
- end
320
-
321
- # Returns the object in the form of hash
322
- # @return [Hash] Returns the object in the form of hash
323
- def to_hash
324
- hash = {}
325
- self.class.attribute_map.each_pair do |attr, param|
326
- value = self.send(attr)
327
- if value.nil?
328
- is_nullable = self.class.fastly_nullable.include?(attr)
329
- next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
330
- end
331
-
332
- hash[param] = _to_hash(value)
333
- end
334
- hash
335
- end
336
-
337
- # Outputs non-array value in the form of hash
338
- # For object, use to_hash. Otherwise, just return the value
339
- # @param [Object] value Any valid value
340
- # @return [Hash] Returns the value in the form of hash
341
- def _to_hash(value)
342
- if value.is_a?(Array)
343
- value.compact.map { |v| _to_hash(v) }
344
- elsif value.is_a?(Hash)
345
- {}.tap do |hash|
346
- value.each { |k, v| hash[k] = _to_hash(v) }
347
- end
348
- elsif value.respond_to? :to_hash
349
- value.to_hash
350
- else
351
- value
352
- end
353
- end
354
-
355
- end
356
-
357
- end