fastly 11.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 (407) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +29 -0
  3. data/Gemfile.lock +3 -3
  4. data/README.md +33 -43
  5. data/docs/AclsInComputeApi.md +1 -1
  6. data/docs/Backend.md +1 -0
  7. data/docs/BackendApi.md +4 -0
  8. data/docs/BackendResponse.md +1 -0
  9. data/docs/BotManagementResponseBodyGetAllServices.md +13 -0
  10. data/docs/{RelationshipWafFirewallWafFirewall.md → BotManagementResponseCustomer.md} +2 -2
  11. data/docs/{RelationshipWafActiveRulesWafActiveRules.md → BotManagementResponseCustomerCustomer.md} +3 -2
  12. data/docs/{RelationshipWafFirewall.md → BotManagementResponseEnabledServices.md} +2 -2
  13. data/docs/BotManagementResponseLinksGetAllServices.md +10 -0
  14. data/docs/BotManagementResponseLinksGetAllServicesLinks.md +10 -0
  15. data/docs/BrotliCompressionResponseBodyGetAllServices.md +13 -0
  16. data/docs/BrotliCompressionResponseCustomer.md +10 -0
  17. data/docs/BrotliCompressionResponseEnabledServices.md +10 -0
  18. data/docs/{RelationshipWafRuleRevision.md → BrotliCompressionResponseLinksGetAllServices.md} +2 -2
  19. data/docs/BrotliCompressionResponseLinksGetAllServicesLinks.md +10 -0
  20. data/docs/ComputeAclUpdateEntry.md +2 -2
  21. data/docs/{TypeWafRule.md → DdosProtectionAction.md} +1 -1
  22. data/docs/DdosProtectionApi.md +223 -0
  23. data/docs/DdosProtectionAttributeStats.md +11 -0
  24. data/docs/{RelationshipWafActiveRules.md → DdosProtectionAttributeValue.md} +3 -2
  25. data/docs/DdosProtectionError.md +13 -0
  26. data/docs/{IncludedWithWafFirewallVersionItem.md → DdosProtectionErrorErrors.md} +3 -2
  27. data/docs/DdosProtectionEvent.md +17 -0
  28. data/docs/DdosProtectionEventAllOf.md +15 -0
  29. data/docs/{RelationshipWafTags.md → DdosProtectionNotAuthenticated.md} +3 -2
  30. data/docs/DdosProtectionNotFound.md +11 -0
  31. data/docs/DdosProtectionResponseBodyGetAllServices.md +13 -0
  32. data/docs/DdosProtectionResponseCustomer.md +10 -0
  33. data/docs/DdosProtectionResponseEnabledServices.md +10 -0
  34. data/docs/{WafFirewall.md → DdosProtectionResponseLinksGetAllServices.md} +2 -2
  35. data/docs/{BulkWafActiveRules.md → DdosProtectionResponseLinksGetAllServicesLinks.md} +2 -2
  36. data/docs/DdosProtectionRule.md +22 -0
  37. data/docs/DdosProtectionRuleAllOf.md +20 -0
  38. data/docs/{TypeWafFirewallVersion.md → DdosProtectionTrafficAttribute.md} +1 -1
  39. data/docs/DdosProtectionTrafficStats.md +14 -0
  40. data/docs/DdosProtectionTrafficStatsAllOf.md +12 -0
  41. data/docs/DictionaryApi.md +15 -15
  42. data/docs/DictionaryInfoApi.md +3 -3
  43. data/docs/DictionaryItemApi.md +22 -22
  44. data/docs/DomainInspectorResponseBodyGetAllServices.md +13 -0
  45. data/docs/DomainInspectorResponseCustomer.md +10 -0
  46. data/docs/DomainInspectorResponseEnabledServices.md +10 -0
  47. data/docs/{WafExclusion.md → DomainInspectorResponseLinksGetAllServices.md} +2 -2
  48. data/docs/DomainInspectorResponseLinksGetAllServicesLinks.md +10 -0
  49. data/docs/DomainOwnershipsApi.md +2 -2
  50. data/docs/FanoutResponseBodyGetAllServices.md +13 -0
  51. data/docs/FanoutResponseCustomer.md +10 -0
  52. data/docs/{RelationshipWafRules.md → FanoutResponseEnabledServices.md} +2 -2
  53. data/docs/FanoutResponseLinksGetAllServices.md +10 -0
  54. data/docs/{TypeWafFirewall.md → FanoutResponseLinksGetAllServicesLinks.md} +2 -1
  55. data/docs/HistoricalApi.md +10 -10
  56. data/docs/ImageOptimizerResponseBodyGetAllServices.md +13 -0
  57. data/docs/ImageOptimizerResponseCustomer.md +10 -0
  58. data/docs/ImageOptimizerResponseEnabledServices.md +10 -0
  59. data/docs/ImageOptimizerResponseLinksGetAllServices.md +10 -0
  60. data/docs/ImageOptimizerResponseLinksGetAllServicesLinks.md +10 -0
  61. data/docs/InlineResponse2002.md +2 -1
  62. data/docs/InlineResponse2003.md +1 -1
  63. data/docs/InlineResponse2004.md +1 -2
  64. data/docs/InlineResponse2005.md +1 -1
  65. data/docs/InlineResponse2006.md +1 -1
  66. data/docs/InlineResponse2007.md +2 -1
  67. data/docs/InlineResponse2008.md +11 -0
  68. data/docs/InlineResponse2009.md +10 -0
  69. data/docs/KvStoreApi.md +2 -2
  70. data/docs/KvStoreItemApi.md +2 -2
  71. data/docs/KvStoreRequestCreate.md +1 -1
  72. data/docs/LogAggregationsFilterFieldItem.md +12 -0
  73. data/docs/LogAggregationsGetResponse.md +11 -0
  74. data/docs/LogAggregationsGetResponseMeta.md +15 -0
  75. data/docs/LogAggregationsGetResponseMetaFilters.md +10 -0
  76. data/docs/LogAggregationsResult.md +11 -0
  77. data/docs/{WafActiveRuleCreationResponse.md → LogAggregationsValueField.md} +19 -9
  78. data/docs/LogExplorerInsightsResponseBodyGetAllServices.md +13 -0
  79. data/docs/LogExplorerInsightsResponseCustomer.md +10 -0
  80. data/docs/LogExplorerInsightsResponseEnabledServices.md +10 -0
  81. data/docs/LogExplorerInsightsResponseLinksGetAllServices.md +10 -0
  82. data/docs/LogExplorerInsightsResponseLinksGetAllServicesLinks.md +10 -0
  83. data/docs/LogTimeseriesFilterFieldItem.md +12 -0
  84. data/docs/LogTimeseriesGetResponse.md +11 -0
  85. data/docs/LogTimeseriesGetResponseMeta.md +14 -0
  86. data/docs/LogTimeseriesGetResponseMetaFilters.md +10 -0
  87. data/docs/LogTimeseriesResult.md +11 -0
  88. data/docs/{TypeWafActiveRule.md → LogTimeseriesResultDimensions.md} +2 -1
  89. data/docs/{WafRuleRevisionOrLatest.md → LogTimeseriesValueField.md} +15 -5
  90. data/docs/NgwafResponseBodyGetAllServices.md +13 -0
  91. data/docs/NgwafResponseCustomer.md +10 -0
  92. data/docs/{RelationshipWafRule.md → NgwafResponseEnabledServices.md} +2 -2
  93. data/docs/NgwafResponseLinksGetAllServices.md +10 -0
  94. data/docs/{TypeWafExclusion.md → NgwafResponseLinksGetAllServicesLinks.md} +2 -1
  95. data/docs/ObservabilityAggregationsForLogsApi.md +71 -0
  96. data/docs/ObservabilityTimeseriesForLogsApi.md +67 -0
  97. data/docs/OriginInspectorResponseBodyGetAllServices.md +13 -0
  98. data/docs/OriginInspectorResponseCustomer.md +10 -0
  99. data/docs/OriginInspectorResponseEnabledServices.md +10 -0
  100. data/docs/OriginInspectorResponseLinksGetAllServices.md +10 -0
  101. data/docs/OriginInspectorResponseLinksGetAllServicesLinks.md +10 -0
  102. data/docs/ProductBotManagementApi.md +33 -0
  103. data/docs/ProductBrotliCompressionApi.md +33 -0
  104. data/docs/ProductDdosProtectionApi.md +34 -1
  105. data/docs/ProductDomainInspectorApi.md +33 -0
  106. data/docs/ProductFanoutApi.md +33 -0
  107. data/docs/ProductImageOptimizerApi.md +33 -0
  108. data/docs/ProductLogExplorerInsightsApi.md +33 -0
  109. data/docs/ProductNgwafApi.md +33 -0
  110. data/docs/ProductOriginInspectorApi.md +33 -0
  111. data/docs/ProductWebsocketsApi.md +33 -0
  112. data/docs/RateLimiter.md +1 -1
  113. data/docs/RateLimiterApi.md +4 -4
  114. data/docs/RateLimiterResponse.md +1 -1
  115. data/docs/Resource.md +1 -1
  116. data/docs/ResourceApi.md +4 -4
  117. data/docs/ResourceResponse.md +1 -1
  118. data/docs/SecretStoreApi.md +2 -2
  119. data/docs/SecretStoreItemApi.md +2 -2
  120. data/docs/ServiceAuthorizationsApi.md +2 -2
  121. data/docs/WebsocketsResponseBodyGetAllServices.md +13 -0
  122. data/docs/WebsocketsResponseCustomer.md +10 -0
  123. data/docs/{RelationshipWafRuleWafRule.md → WebsocketsResponseEnabledServices.md} +2 -2
  124. data/docs/WebsocketsResponseLinksGetAllServices.md +10 -0
  125. data/docs/WebsocketsResponseLinksGetAllServicesLinks.md +10 -0
  126. data/lib/fastly/api/acls_in_compute_api.rb +2 -2
  127. data/lib/fastly/api/backend_api.rb +6 -0
  128. data/lib/fastly/api/ddos_protection_api.rb +367 -0
  129. data/lib/fastly/api/dictionary_api.rb +10 -10
  130. data/lib/fastly/api/dictionary_info_api.rb +2 -2
  131. data/lib/fastly/api/dictionary_item_api.rb +18 -18
  132. data/lib/fastly/api/domain_ownerships_api.rb +3 -3
  133. data/lib/fastly/api/historical_api.rb +15 -15
  134. data/lib/fastly/api/kv_store_api.rb +3 -3
  135. data/lib/fastly/api/kv_store_item_api.rb +3 -3
  136. data/lib/fastly/api/observability_aggregations_for_logs_api.rb +128 -0
  137. data/lib/fastly/api/observability_timeseries_for_logs_api.rb +132 -0
  138. data/lib/fastly/api/product_bot_management_api.rb +56 -0
  139. data/lib/fastly/api/product_brotli_compression_api.rb +56 -0
  140. data/lib/fastly/api/product_ddos_protection_api.rb +58 -2
  141. data/lib/fastly/api/product_domain_inspector_api.rb +56 -0
  142. data/lib/fastly/api/product_fanout_api.rb +56 -0
  143. data/lib/fastly/api/product_image_optimizer_api.rb +56 -0
  144. data/lib/fastly/api/product_log_explorer_insights_api.rb +56 -0
  145. data/lib/fastly/api/product_ngwaf_api.rb +56 -0
  146. data/lib/fastly/api/product_origin_inspector_api.rb +56 -0
  147. data/lib/fastly/api/product_websockets_api.rb +56 -0
  148. data/lib/fastly/api/rate_limiter_api.rb +4 -4
  149. data/lib/fastly/api/resource_api.rb +4 -4
  150. data/lib/fastly/api/secret_store_api.rb +3 -3
  151. data/lib/fastly/api/secret_store_item_api.rb +3 -3
  152. data/lib/fastly/api/service_authorizations_api.rb +3 -3
  153. data/lib/fastly/configuration.rb +102 -174
  154. data/lib/fastly/models/backend.rb +11 -1
  155. data/lib/fastly/models/backend_response.rb +11 -1
  156. data/lib/fastly/models/{waf_firewall_versions_response.rb → bot_management_response_body_get_all_services.rb} +34 -33
  157. data/lib/fastly/models/bot_management_response_customer.rb +216 -0
  158. data/lib/fastly/models/{relationship_member_waf_active_rule.rb → bot_management_response_customer_customer.rb} +18 -18
  159. data/lib/fastly/models/bot_management_response_enabled_services.rb +219 -0
  160. data/lib/fastly/models/{relationship_waf_active_rules_waf_active_rules.rb → bot_management_response_links_get_all_services.rb} +10 -12
  161. data/lib/fastly/models/bot_management_response_links_get_all_services_links.rb +217 -0
  162. data/lib/fastly/models/brotli_compression_response_body_get_all_services.rb +256 -0
  163. data/lib/fastly/models/brotli_compression_response_customer.rb +216 -0
  164. data/lib/fastly/models/brotli_compression_response_enabled_services.rb +219 -0
  165. data/lib/fastly/models/brotli_compression_response_links_get_all_services.rb +216 -0
  166. data/lib/fastly/models/brotli_compression_response_links_get_all_services_links.rb +217 -0
  167. data/lib/fastly/models/compute_acl_update_entry.rb +2 -2
  168. data/lib/fastly/models/{type_waf_exclusion.rb → ddos_protection_action.rb} +7 -4
  169. data/lib/fastly/models/{waf_tag_attributes.rb → ddos_protection_attribute_stats.rb} +19 -7
  170. data/lib/fastly/models/{relationship_member_waf_rule_revision.rb → ddos_protection_attribute_value.rb} +17 -19
  171. data/lib/fastly/models/{included_with_waf_firewall_version_item.rb → ddos_protection_error.rb} +39 -30
  172. data/lib/fastly/models/{relationship_member_waf_rule.rb → ddos_protection_error_errors.rb} +16 -18
  173. data/lib/fastly/models/{waf_rule_response_data.rb → ddos_protection_event.rb} +72 -26
  174. data/lib/fastly/models/{included_with_waf_active_rule_item.rb → ddos_protection_event_all_of.rb} +51 -48
  175. data/lib/fastly/models/{waf_active_rule_data_attributes.rb → ddos_protection_not_authenticated.rb} +13 -24
  176. data/lib/fastly/models/{waf_firewall_version_data.rb → ddos_protection_not_found.rb} +50 -18
  177. data/lib/fastly/models/ddos_protection_response_body_get_all_services.rb +256 -0
  178. data/lib/fastly/models/ddos_protection_response_customer.rb +216 -0
  179. data/lib/fastly/models/ddos_protection_response_enabled_services.rb +219 -0
  180. data/lib/fastly/models/ddos_protection_response_links_get_all_services.rb +216 -0
  181. data/lib/fastly/models/ddos_protection_response_links_get_all_services_links.rb +217 -0
  182. data/lib/fastly/models/{waf_exclusion_response_data_attributes.rb → ddos_protection_rule.rb} +102 -104
  183. data/lib/fastly/models/{included_with_waf_rule_item.rb → ddos_protection_rule_all_of.rb} +109 -41
  184. data/lib/fastly/models/{type_waf_firewall.rb → ddos_protection_traffic_attribute.rb} +10 -4
  185. data/lib/fastly/models/{waf_active_rule_response_data_attributes.rb → ddos_protection_traffic_stats.rb} +31 -31
  186. data/lib/fastly/models/{waf_rule_revision.rb → ddos_protection_traffic_stats_all_of.rb} +22 -21
  187. data/lib/fastly/models/domain_inspector_response_body_get_all_services.rb +256 -0
  188. data/lib/fastly/models/domain_inspector_response_customer.rb +216 -0
  189. data/lib/fastly/models/domain_inspector_response_enabled_services.rb +219 -0
  190. data/lib/fastly/models/{relationship_waf_firewall_waf_firewall.rb → domain_inspector_response_links_get_all_services.rb} +10 -12
  191. data/lib/fastly/models/{relationship_waf_firewall.rb → domain_inspector_response_links_get_all_services_links.rb} +11 -10
  192. data/lib/fastly/models/{waf_firewalls_response.rb → fanout_response_body_get_all_services.rb} +34 -33
  193. data/lib/fastly/models/{relationship_waf_tags.rb → fanout_response_customer.rb} +10 -10
  194. data/lib/fastly/models/{relationship_member_waf_firewall.rb → fanout_response_enabled_services.rb} +13 -21
  195. data/lib/fastly/models/fanout_response_links_get_all_services.rb +216 -0
  196. data/lib/fastly/models/{relationship_waf_rules.rb → fanout_response_links_get_all_services_links.rb} +11 -10
  197. data/lib/fastly/models/image_optimizer_response_body_get_all_services.rb +256 -0
  198. data/lib/fastly/models/image_optimizer_response_customer.rb +216 -0
  199. data/lib/fastly/models/image_optimizer_response_enabled_services.rb +219 -0
  200. data/lib/fastly/models/image_optimizer_response_links_get_all_services.rb +216 -0
  201. data/lib/fastly/models/image_optimizer_response_links_get_all_services_links.rb +217 -0
  202. data/lib/fastly/models/inline_response2002.rb +18 -8
  203. data/lib/fastly/models/inline_response2003.rb +1 -1
  204. data/lib/fastly/models/inline_response2004.rb +8 -18
  205. data/lib/fastly/models/inline_response2005.rb +1 -1
  206. data/lib/fastly/models/inline_response2006.rb +1 -1
  207. data/lib/fastly/models/inline_response2007.rb +13 -4
  208. data/lib/fastly/models/{relationship_waf_firewall_version_waf_firewall_version.rb → inline_response2008.rb} +16 -7
  209. data/lib/fastly/models/{bulk_waf_active_rules.rb → inline_response2009.rb} +4 -4
  210. data/lib/fastly/models/kv_store_request_create.rb +1 -1
  211. data/lib/fastly/models/{waf_rule_attributes.rb → log_aggregations_filter_field_item.rb} +33 -45
  212. data/lib/fastly/models/{relationship_waf_rule_waf_rule.rb → log_aggregations_get_response.rb} +16 -7
  213. data/lib/fastly/models/{waf_firewall_version_response_data.rb → log_aggregations_get_response_meta.rb} +77 -39
  214. data/lib/fastly/models/log_aggregations_get_response_meta_filters.rb +220 -0
  215. data/lib/fastly/models/{waf_rules_response_all_of.rb → log_aggregations_result.rb} +18 -18
  216. data/lib/fastly/models/{waf_active_rule_creation_response.rb → log_aggregations_value_field.rb} +8 -3
  217. data/lib/fastly/models/log_explorer_insights_response_body_get_all_services.rb +256 -0
  218. data/lib/fastly/models/log_explorer_insights_response_customer.rb +216 -0
  219. data/lib/fastly/models/log_explorer_insights_response_enabled_services.rb +219 -0
  220. data/lib/fastly/models/log_explorer_insights_response_links_get_all_services.rb +216 -0
  221. data/lib/fastly/models/log_explorer_insights_response_links_get_all_services_links.rb +217 -0
  222. data/lib/fastly/models/{relationships_for_waf_exclusion.rb → log_timeseries_filter_field_item.rb} +61 -35
  223. data/lib/fastly/models/{waf_tags_response_all_of.rb → log_timeseries_get_response.rb} +11 -13
  224. data/lib/fastly/models/{included_with_waf_exclusion_item.rb → log_timeseries_get_response_meta.rb} +44 -45
  225. data/lib/fastly/models/log_timeseries_get_response_meta_filters.rb +220 -0
  226. data/lib/fastly/models/{waf_firewall_response.rb → log_timeseries_result.rb} +17 -17
  227. data/lib/fastly/models/{waf_exclusion_response.rb → log_timeseries_result_dimensions.rb} +10 -10
  228. data/lib/fastly/models/{waf_rule_revision_or_latest.rb → log_timeseries_value_field.rb} +6 -1
  229. data/lib/fastly/models/{waf_exclusions_response.rb → ngwaf_response_body_get_all_services.rb} +34 -33
  230. data/lib/fastly/models/{waf_active_rule_response.rb → ngwaf_response_customer.rb} +10 -10
  231. data/lib/fastly/models/{relationship_waf_rule_revisions.rb → ngwaf_response_enabled_services.rb} +13 -10
  232. data/lib/fastly/models/{waf_rule_revision_response_data_all_of.rb → ngwaf_response_links_get_all_services.rb} +10 -10
  233. data/lib/fastly/models/{relationship_waf_rule.rb → ngwaf_response_links_get_all_services_links.rb} +11 -10
  234. data/lib/fastly/models/origin_inspector_response_body_get_all_services.rb +256 -0
  235. data/lib/fastly/models/origin_inspector_response_customer.rb +216 -0
  236. data/lib/fastly/models/origin_inspector_response_enabled_services.rb +219 -0
  237. data/lib/fastly/models/origin_inspector_response_links_get_all_services.rb +216 -0
  238. data/lib/fastly/models/origin_inspector_response_links_get_all_services_links.rb +217 -0
  239. data/lib/fastly/models/pop.rb +6 -6
  240. data/lib/fastly/models/rate_limiter.rb +1 -1
  241. data/lib/fastly/models/rate_limiter_response.rb +1 -1
  242. data/lib/fastly/models/resource.rb +1 -1
  243. data/lib/fastly/models/resource_response.rb +1 -1
  244. data/lib/fastly/models/{waf_active_rules_response.rb → websockets_response_body_get_all_services.rb} +34 -33
  245. data/lib/fastly/models/{relationship_waf_tags_waf_tags.rb → websockets_response_customer.rb} +10 -12
  246. data/lib/fastly/models/websockets_response_enabled_services.rb +219 -0
  247. data/lib/fastly/models/websockets_response_links_get_all_services.rb +216 -0
  248. data/lib/fastly/models/websockets_response_links_get_all_services_links.rb +217 -0
  249. data/lib/fastly/version.rb +1 -1
  250. data/lib/fastly.rb +83 -109
  251. data/sig.json +1 -1
  252. metadata +168 -220
  253. data/docs/IncludedWithWafActiveRuleItem.md +0 -13
  254. data/docs/IncludedWithWafExclusionItem.md +0 -12
  255. data/docs/IncludedWithWafRuleItem.md +0 -12
  256. data/docs/RelationshipMemberWafActiveRule.md +0 -11
  257. data/docs/RelationshipMemberWafFirewall.md +0 -11
  258. data/docs/RelationshipMemberWafFirewallVersion.md +0 -11
  259. data/docs/RelationshipMemberWafRule.md +0 -11
  260. data/docs/RelationshipMemberWafRuleRevision.md +0 -11
  261. data/docs/RelationshipMemberWafTag.md +0 -11
  262. data/docs/RelationshipWafFirewallVersion.md +0 -10
  263. data/docs/RelationshipWafFirewallVersionWafFirewallVersion.md +0 -10
  264. data/docs/RelationshipWafFirewallVersions.md +0 -10
  265. data/docs/RelationshipWafRuleRevisionWafRuleRevisions.md +0 -10
  266. data/docs/RelationshipWafRuleRevisions.md +0 -10
  267. data/docs/RelationshipWafTagsWafTags.md +0 -10
  268. data/docs/RelationshipsForWafActiveRule.md +0 -11
  269. data/docs/RelationshipsForWafExclusion.md +0 -11
  270. data/docs/RelationshipsForWafFirewallVersion.md +0 -11
  271. data/docs/RelationshipsForWafRule.md +0 -11
  272. data/docs/SchemasWafFirewallVersion.md +0 -10
  273. data/docs/SchemasWafFirewallVersionData.md +0 -11
  274. data/docs/TypeWafRuleRevision.md +0 -9
  275. data/docs/TypeWafTag.md +0 -9
  276. data/docs/WafActiveRule.md +0 -10
  277. data/docs/WafActiveRuleData.md +0 -12
  278. data/docs/WafActiveRuleDataAttributes.md +0 -12
  279. data/docs/WafActiveRuleResponse.md +0 -10
  280. data/docs/WafActiveRuleResponseData.md +0 -13
  281. data/docs/WafActiveRuleResponseDataAllOf.md +0 -12
  282. data/docs/WafActiveRuleResponseDataAttributes.md +0 -14
  283. data/docs/WafActiveRuleResponseDataAttributesAllOf.md +0 -11
  284. data/docs/WafActiveRuleResponseDataRelationships.md +0 -11
  285. data/docs/WafActiveRulesApi.md +0 -367
  286. data/docs/WafActiveRulesResponse.md +0 -13
  287. data/docs/WafActiveRulesResponseAllOf.md +0 -11
  288. data/docs/WafExclusionData.md +0 -12
  289. data/docs/WafExclusionDataAttributes.md +0 -15
  290. data/docs/WafExclusionResponse.md +0 -10
  291. data/docs/WafExclusionResponseData.md +0 -13
  292. data/docs/WafExclusionResponseDataAllOf.md +0 -12
  293. data/docs/WafExclusionResponseDataAttributes.md +0 -18
  294. data/docs/WafExclusionResponseDataAttributesAllOf.md +0 -15
  295. data/docs/WafExclusionResponseDataRelationships.md +0 -11
  296. data/docs/WafExclusionsApi.md +0 -238
  297. data/docs/WafExclusionsResponse.md +0 -13
  298. data/docs/WafExclusionsResponseAllOf.md +0 -11
  299. data/docs/WafFirewallData.md +0 -11
  300. data/docs/WafFirewallDataAttributes.md +0 -13
  301. data/docs/WafFirewallResponse.md +0 -11
  302. data/docs/WafFirewallResponseData.md +0 -13
  303. data/docs/WafFirewallResponseDataAllOf.md +0 -12
  304. data/docs/WafFirewallResponseDataAttributes.md +0 -21
  305. data/docs/WafFirewallResponseDataAttributesAllOf.md +0 -18
  306. data/docs/WafFirewallVersion.md +0 -10
  307. data/docs/WafFirewallVersionData.md +0 -11
  308. data/docs/WafFirewallVersionDataAttributes.md +0 -40
  309. data/docs/WafFirewallVersionResponse.md +0 -11
  310. data/docs/WafFirewallVersionResponseData.md +0 -13
  311. data/docs/WafFirewallVersionResponseDataAllOf.md +0 -12
  312. data/docs/WafFirewallVersionResponseDataAttributes.md +0 -24
  313. data/docs/WafFirewallVersionResponseDataAttributesAllOf.md +0 -21
  314. data/docs/WafFirewallVersionsApi.md +0 -265
  315. data/docs/WafFirewallVersionsResponse.md +0 -13
  316. data/docs/WafFirewallVersionsResponseAllOf.md +0 -11
  317. data/docs/WafFirewallsApi.md +0 -222
  318. data/docs/WafFirewallsResponse.md +0 -13
  319. data/docs/WafFirewallsResponseAllOf.md +0 -11
  320. data/docs/WafRule.md +0 -12
  321. data/docs/WafRuleAttributes.md +0 -12
  322. data/docs/WafRuleResponse.md +0 -11
  323. data/docs/WafRuleResponseData.md +0 -13
  324. data/docs/WafRuleResponseDataAllOf.md +0 -10
  325. data/docs/WafRuleRevision.md +0 -12
  326. data/docs/WafRuleRevisionAttributes.md +0 -17
  327. data/docs/WafRuleRevisionResponse.md +0 -11
  328. data/docs/WafRuleRevisionResponseData.md +0 -13
  329. data/docs/WafRuleRevisionResponseDataAllOf.md +0 -10
  330. data/docs/WafRuleRevisionsApi.md +0 -103
  331. data/docs/WafRuleRevisionsResponse.md +0 -13
  332. data/docs/WafRuleRevisionsResponseAllOf.md +0 -11
  333. data/docs/WafRulesApi.md +0 -107
  334. data/docs/WafRulesResponse.md +0 -13
  335. data/docs/WafRulesResponseAllOf.md +0 -11
  336. data/docs/WafTag.md +0 -12
  337. data/docs/WafTagAttributes.md +0 -10
  338. data/docs/WafTagsApi.md +0 -61
  339. data/docs/WafTagsResponse.md +0 -13
  340. data/docs/WafTagsResponseAllOf.md +0 -11
  341. data/docs/WafTagsResponseDataItem.md +0 -13
  342. data/lib/fastly/api/waf_active_rules_api.rb +0 -667
  343. data/lib/fastly/api/waf_exclusions_api.rb +0 -433
  344. data/lib/fastly/api/waf_firewall_versions_api.rb +0 -460
  345. data/lib/fastly/api/waf_firewalls_api.rb +0 -377
  346. data/lib/fastly/api/waf_rule_revisions_api.rb +0 -177
  347. data/lib/fastly/api/waf_rules_api.rb +0 -171
  348. data/lib/fastly/api/waf_tags_api.rb +0 -100
  349. data/lib/fastly/models/relationship_member_waf_firewall_version.rb +0 -228
  350. data/lib/fastly/models/relationship_member_waf_tag.rb +0 -228
  351. data/lib/fastly/models/relationship_waf_active_rules.rb +0 -216
  352. data/lib/fastly/models/relationship_waf_firewall_version.rb +0 -216
  353. data/lib/fastly/models/relationship_waf_firewall_versions.rb +0 -216
  354. data/lib/fastly/models/relationship_waf_rule_revision.rb +0 -216
  355. data/lib/fastly/models/relationship_waf_rule_revision_waf_rule_revisions.rb +0 -218
  356. data/lib/fastly/models/relationships_for_waf_active_rule.rb +0 -245
  357. data/lib/fastly/models/relationships_for_waf_firewall_version.rb +0 -245
  358. data/lib/fastly/models/relationships_for_waf_rule.rb +0 -245
  359. data/lib/fastly/models/schemas_waf_firewall_version.rb +0 -216
  360. data/lib/fastly/models/schemas_waf_firewall_version_data.rb +0 -227
  361. data/lib/fastly/models/type_waf_active_rule.rb +0 -34
  362. data/lib/fastly/models/type_waf_firewall_version.rb +0 -34
  363. data/lib/fastly/models/type_waf_rule.rb +0 -34
  364. data/lib/fastly/models/type_waf_rule_revision.rb +0 -34
  365. data/lib/fastly/models/type_waf_tag.rb +0 -34
  366. data/lib/fastly/models/waf_active_rule.rb +0 -216
  367. data/lib/fastly/models/waf_active_rule_data.rb +0 -236
  368. data/lib/fastly/models/waf_active_rule_response_data.rb +0 -253
  369. data/lib/fastly/models/waf_active_rule_response_data_all_of.rb +0 -234
  370. data/lib/fastly/models/waf_active_rule_response_data_attributes_all_of.rb +0 -227
  371. data/lib/fastly/models/waf_active_rule_response_data_relationships.rb +0 -245
  372. data/lib/fastly/models/waf_active_rules_response_all_of.rb +0 -229
  373. data/lib/fastly/models/waf_exclusion.rb +0 -216
  374. data/lib/fastly/models/waf_exclusion_data.rb +0 -236
  375. data/lib/fastly/models/waf_exclusion_data_attributes.rb +0 -316
  376. data/lib/fastly/models/waf_exclusion_response_data.rb +0 -254
  377. data/lib/fastly/models/waf_exclusion_response_data_all_of.rb +0 -235
  378. data/lib/fastly/models/waf_exclusion_response_data_attributes_all_of.rb +0 -316
  379. data/lib/fastly/models/waf_exclusion_response_data_relationships.rb +0 -245
  380. data/lib/fastly/models/waf_exclusions_response_all_of.rb +0 -229
  381. data/lib/fastly/models/waf_firewall.rb +0 -216
  382. data/lib/fastly/models/waf_firewall_data.rb +0 -227
  383. data/lib/fastly/models/waf_firewall_data_attributes.rb +0 -248
  384. data/lib/fastly/models/waf_firewall_response_data.rb +0 -253
  385. data/lib/fastly/models/waf_firewall_response_data_all_of.rb +0 -234
  386. data/lib/fastly/models/waf_firewall_response_data_attributes.rb +0 -337
  387. data/lib/fastly/models/waf_firewall_response_data_attributes_all_of.rb +0 -296
  388. data/lib/fastly/models/waf_firewall_version.rb +0 -216
  389. data/lib/fastly/models/waf_firewall_version_data_attributes.rb +0 -551
  390. data/lib/fastly/models/waf_firewall_version_response.rb +0 -227
  391. data/lib/fastly/models/waf_firewall_version_response_data_all_of.rb +0 -235
  392. data/lib/fastly/models/waf_firewall_version_response_data_attributes.rb +0 -403
  393. data/lib/fastly/models/waf_firewall_version_response_data_attributes_all_of.rb +0 -362
  394. data/lib/fastly/models/waf_firewall_versions_response_all_of.rb +0 -229
  395. data/lib/fastly/models/waf_firewalls_response_all_of.rb +0 -229
  396. data/lib/fastly/models/waf_rule.rb +0 -236
  397. data/lib/fastly/models/waf_rule_response.rb +0 -227
  398. data/lib/fastly/models/waf_rule_response_data_all_of.rb +0 -216
  399. data/lib/fastly/models/waf_rule_revision_attributes.rb +0 -321
  400. data/lib/fastly/models/waf_rule_revision_response.rb +0 -227
  401. data/lib/fastly/models/waf_rule_revision_response_data.rb +0 -254
  402. data/lib/fastly/models/waf_rule_revisions_response.rb +0 -255
  403. data/lib/fastly/models/waf_rule_revisions_response_all_of.rb +0 -229
  404. data/lib/fastly/models/waf_rules_response.rb +0 -255
  405. data/lib/fastly/models/waf_tag.rb +0 -237
  406. data/lib/fastly/models/waf_tags_response.rb +0 -255
  407. data/lib/fastly/models/waf_tags_response_data_item.rb +0 -254
@@ -1,362 +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 WafFirewallVersionResponseDataAttributesAllOf
16
- # Whether a specific firewall version is currently deployed.
17
- attr_accessor :active
18
-
19
- # The number of active Fastly rules set to block.
20
- attr_accessor :active_rules_fastly_block_count
21
-
22
- # The number of active Fastly rules set to log.
23
- attr_accessor :active_rules_fastly_log_count
24
-
25
- # The number of active Fastly rules set to score.
26
- attr_accessor :active_rules_fastly_score_count
27
-
28
- # The number of active OWASP rules set to block.
29
- attr_accessor :active_rules_owasp_block_count
30
-
31
- # The number of active OWASP rules set to log.
32
- attr_accessor :active_rules_owasp_log_count
33
-
34
- # The number of active OWASP rules set to score.
35
- attr_accessor :active_rules_owasp_score_count
36
-
37
- # The number of active Trustwave rules set to block.
38
- attr_accessor :active_rules_trustwave_block_count
39
-
40
- # The number of active Trustwave rules set to log.
41
- attr_accessor :active_rules_trustwave_log_count
42
-
43
- # The status of the last deployment of this firewall version.
44
- attr_accessor :last_deployment_status
45
-
46
- # Time-stamp (GMT) indicating when the firewall version was last deployed.
47
- attr_accessor :deployed_at
48
-
49
- # Contains error message if the firewall version fails to deploy.
50
- attr_accessor :error
51
-
52
- class EnumAttributeValidator
53
- attr_reader :datatype
54
- attr_reader :allowable_values
55
-
56
- def initialize(datatype, allowable_values)
57
- @allowable_values = allowable_values.map do |value|
58
- case datatype.to_s
59
- when /Integer/i
60
- value.to_i
61
- when /Float/i
62
- value.to_f
63
- else
64
- value
65
- end
66
- end
67
- end
68
-
69
- def valid?(value)
70
- !value || allowable_values.include?(value)
71
- end
72
- end
73
-
74
- # Attribute mapping from ruby-style variable name to JSON key.
75
- def self.attribute_map
76
- {
77
- :'active' => :'active',
78
- :'active_rules_fastly_block_count' => :'active_rules_fastly_block_count',
79
- :'active_rules_fastly_log_count' => :'active_rules_fastly_log_count',
80
- :'active_rules_fastly_score_count' => :'active_rules_fastly_score_count',
81
- :'active_rules_owasp_block_count' => :'active_rules_owasp_block_count',
82
- :'active_rules_owasp_log_count' => :'active_rules_owasp_log_count',
83
- :'active_rules_owasp_score_count' => :'active_rules_owasp_score_count',
84
- :'active_rules_trustwave_block_count' => :'active_rules_trustwave_block_count',
85
- :'active_rules_trustwave_log_count' => :'active_rules_trustwave_log_count',
86
- :'last_deployment_status' => :'last_deployment_status',
87
- :'deployed_at' => :'deployed_at',
88
- :'error' => :'error'
89
- }
90
- end
91
-
92
- # Returns all the JSON keys this model knows about
93
- def self.acceptable_attributes
94
- attribute_map.values
95
- end
96
-
97
- # Attribute type mapping.
98
- def self.fastly_types
99
- {
100
- :'active' => :'Boolean',
101
- :'active_rules_fastly_block_count' => :'Integer',
102
- :'active_rules_fastly_log_count' => :'Integer',
103
- :'active_rules_fastly_score_count' => :'Integer',
104
- :'active_rules_owasp_block_count' => :'Integer',
105
- :'active_rules_owasp_log_count' => :'Integer',
106
- :'active_rules_owasp_score_count' => :'Integer',
107
- :'active_rules_trustwave_block_count' => :'Integer',
108
- :'active_rules_trustwave_log_count' => :'Integer',
109
- :'last_deployment_status' => :'String',
110
- :'deployed_at' => :'String',
111
- :'error' => :'String'
112
- }
113
- end
114
-
115
- # List of attributes with nullable: true
116
- def self.fastly_nullable
117
- Set.new([
118
- :'last_deployment_status',
119
- ])
120
- end
121
-
122
- # Initializes the object
123
- # @param [Hash] attributes Model attributes in the form of hash
124
- def initialize(attributes = {})
125
- if (!attributes.is_a?(Hash))
126
- fail ArgumentError, "The input argument (attributes) must be a hash in `Fastly::WafFirewallVersionResponseDataAttributesAllOf` initialize method"
127
- end
128
-
129
- # check to see if the attribute exists and convert string to symbol for hash key
130
- attributes = attributes.each_with_object({}) { |(k, v), h|
131
- if (!self.class.attribute_map.key?(k.to_sym))
132
- fail ArgumentError, "`#{k}` is not a valid attribute in `Fastly::WafFirewallVersionResponseDataAttributesAllOf`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
133
- end
134
- h[k.to_sym] = v
135
- }
136
-
137
- if attributes.key?(:'active')
138
- self.active = attributes[:'active']
139
- end
140
-
141
- if attributes.key?(:'active_rules_fastly_block_count')
142
- self.active_rules_fastly_block_count = attributes[:'active_rules_fastly_block_count']
143
- end
144
-
145
- if attributes.key?(:'active_rules_fastly_log_count')
146
- self.active_rules_fastly_log_count = attributes[:'active_rules_fastly_log_count']
147
- end
148
-
149
- if attributes.key?(:'active_rules_fastly_score_count')
150
- self.active_rules_fastly_score_count = attributes[:'active_rules_fastly_score_count']
151
- end
152
-
153
- if attributes.key?(:'active_rules_owasp_block_count')
154
- self.active_rules_owasp_block_count = attributes[:'active_rules_owasp_block_count']
155
- end
156
-
157
- if attributes.key?(:'active_rules_owasp_log_count')
158
- self.active_rules_owasp_log_count = attributes[:'active_rules_owasp_log_count']
159
- end
160
-
161
- if attributes.key?(:'active_rules_owasp_score_count')
162
- self.active_rules_owasp_score_count = attributes[:'active_rules_owasp_score_count']
163
- end
164
-
165
- if attributes.key?(:'active_rules_trustwave_block_count')
166
- self.active_rules_trustwave_block_count = attributes[:'active_rules_trustwave_block_count']
167
- end
168
-
169
- if attributes.key?(:'active_rules_trustwave_log_count')
170
- self.active_rules_trustwave_log_count = attributes[:'active_rules_trustwave_log_count']
171
- end
172
-
173
- if attributes.key?(:'last_deployment_status')
174
- self.last_deployment_status = attributes[:'last_deployment_status']
175
- end
176
-
177
- if attributes.key?(:'deployed_at')
178
- self.deployed_at = attributes[:'deployed_at']
179
- end
180
-
181
- if attributes.key?(:'error')
182
- self.error = attributes[:'error']
183
- end
184
- end
185
-
186
- # Show invalid properties with the reasons. Usually used together with valid?
187
- # @return Array for valid properties with the reasons
188
- def list_invalid_properties
189
- invalid_properties = Array.new
190
- invalid_properties
191
- end
192
-
193
- # Check to see if the all the properties in the model are valid
194
- # @return true if the model is valid
195
- def valid?
196
- last_deployment_status_validator = EnumAttributeValidator.new('String', ["null", "pending", "in progress", "completed", "failed"])
197
- return false unless last_deployment_status_validator.valid?(@last_deployment_status)
198
- true
199
- end
200
-
201
- # Custom attribute writer method checking allowed values (enum).
202
- # @param [Object] last_deployment_status Object to be assigned
203
- def last_deployment_status=(last_deployment_status)
204
- validator = EnumAttributeValidator.new('String', ["null", "pending", "in progress", "completed", "failed"])
205
- unless validator.valid?(last_deployment_status)
206
- fail ArgumentError, "invalid value for \"last_deployment_status\", must be one of #{validator.allowable_values}."
207
- end
208
- @last_deployment_status = last_deployment_status
209
- end
210
-
211
- # Checks equality by comparing each attribute.
212
- # @param [Object] Object to be compared
213
- def ==(o)
214
- return true if self.equal?(o)
215
- self.class == o.class &&
216
- active == o.active &&
217
- active_rules_fastly_block_count == o.active_rules_fastly_block_count &&
218
- active_rules_fastly_log_count == o.active_rules_fastly_log_count &&
219
- active_rules_fastly_score_count == o.active_rules_fastly_score_count &&
220
- active_rules_owasp_block_count == o.active_rules_owasp_block_count &&
221
- active_rules_owasp_log_count == o.active_rules_owasp_log_count &&
222
- active_rules_owasp_score_count == o.active_rules_owasp_score_count &&
223
- active_rules_trustwave_block_count == o.active_rules_trustwave_block_count &&
224
- active_rules_trustwave_log_count == o.active_rules_trustwave_log_count &&
225
- last_deployment_status == o.last_deployment_status &&
226
- deployed_at == o.deployed_at &&
227
- error == o.error
228
- end
229
-
230
- # @see the `==` method
231
- # @param [Object] Object to be compared
232
- def eql?(o)
233
- self == o
234
- end
235
-
236
- # Calculates hash code according to all attributes.
237
- # @return [Integer] Hash code
238
- def hash
239
- [active, active_rules_fastly_block_count, active_rules_fastly_log_count, active_rules_fastly_score_count, active_rules_owasp_block_count, active_rules_owasp_log_count, active_rules_owasp_score_count, active_rules_trustwave_block_count, active_rules_trustwave_log_count, last_deployment_status, deployed_at, error].hash
240
- end
241
-
242
- # Builds the object from hash
243
- # @param [Hash] attributes Model attributes in the form of hash
244
- # @return [Object] Returns the model itself
245
- def self.build_from_hash(attributes)
246
- new.build_from_hash(attributes)
247
- end
248
-
249
- # Builds the object from hash
250
- # @param [Hash] attributes Model attributes in the form of hash
251
- # @return [Object] Returns the model itself
252
- def build_from_hash(attributes)
253
- return nil unless attributes.is_a?(Hash)
254
- self.class.fastly_types.each_pair do |key, type|
255
- if attributes[self.class.attribute_map[key]].nil? && self.class.fastly_nullable.include?(key)
256
- self.send("#{key}=", nil)
257
- elsif type =~ /\AArray<(.*)>/i
258
- # check to ensure the input is an array given that the attribute
259
- # is documented as an array but the input is not
260
- if attributes[self.class.attribute_map[key]].is_a?(Array)
261
- self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
262
- end
263
- elsif !attributes[self.class.attribute_map[key]].nil?
264
- self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
265
- end
266
- end
267
-
268
- self
269
- end
270
-
271
- # Deserializes the data based on type
272
- # @param string type Data type
273
- # @param string value Value to be deserialized
274
- # @return [Object] Deserialized data
275
- def _deserialize(type, value)
276
- case type.to_sym
277
- when :Time
278
- Time.parse(value)
279
- when :Date
280
- Date.parse(value)
281
- when :String
282
- value.to_s
283
- when :Integer
284
- value.to_i
285
- when :Float
286
- value.to_f
287
- when :Boolean
288
- if value.to_s =~ /\A(true|t|yes|y|1)\z/i
289
- true
290
- else
291
- false
292
- end
293
- when :Object
294
- # generic object (usually a Hash), return directly
295
- value
296
- when /\AArray<(?<inner_type>.+)>\z/
297
- inner_type = Regexp.last_match[:inner_type]
298
- value.map { |v| _deserialize(inner_type, v) }
299
- when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
300
- k_type = Regexp.last_match[:k_type]
301
- v_type = Regexp.last_match[:v_type]
302
- {}.tap do |hash|
303
- value.each do |k, v|
304
- hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
305
- end
306
- end
307
- else # model
308
- # models (e.g. Pet) or oneOf
309
- klass = Fastly.const_get(type)
310
- klass.respond_to?(:fastly_one_of) ? klass.build(value) : klass.build_from_hash(value)
311
- end
312
- end
313
-
314
- # Returns the string representation of the object
315
- # @return [String] String presentation of the object
316
- def to_s
317
- to_hash.to_s
318
- end
319
-
320
- # to_body is an alias to to_hash (backward compatibility)
321
- # @return [Hash] Returns the object in the form of hash
322
- def to_body
323
- to_hash
324
- end
325
-
326
- # Returns the object in the form of hash
327
- # @return [Hash] Returns the object in the form of hash
328
- def to_hash
329
- hash = {}
330
- self.class.attribute_map.each_pair do |attr, param|
331
- value = self.send(attr)
332
- if value.nil?
333
- is_nullable = self.class.fastly_nullable.include?(attr)
334
- next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
335
- end
336
-
337
- hash[param] = _to_hash(value)
338
- end
339
- hash
340
- end
341
-
342
- # Outputs non-array value in the form of hash
343
- # For object, use to_hash. Otherwise, just return the value
344
- # @param [Object] value Any valid value
345
- # @return [Hash] Returns the value in the form of hash
346
- def _to_hash(value)
347
- if value.is_a?(Array)
348
- value.compact.map { |v| _to_hash(v) }
349
- elsif value.is_a?(Hash)
350
- {}.tap do |hash|
351
- value.each { |k, v| hash[k] = _to_hash(v) }
352
- end
353
- elsif value.respond_to? :to_hash
354
- value.to_hash
355
- else
356
- value
357
- end
358
- end
359
-
360
- end
361
-
362
- end
@@ -1,229 +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 WafFirewallVersionsResponseAllOf
16
- attr_accessor :data
17
-
18
- attr_accessor :included
19
-
20
- # Attribute mapping from ruby-style variable name to JSON key.
21
- def self.attribute_map
22
- {
23
- :'data' => :'data',
24
- :'included' => :'included'
25
- }
26
- end
27
-
28
- # Returns all the JSON keys this model knows about
29
- def self.acceptable_attributes
30
- attribute_map.values
31
- end
32
-
33
- # Attribute type mapping.
34
- def self.fastly_types
35
- {
36
- :'data' => :'Array<WafFirewallVersionResponseData>',
37
- :'included' => :'Array<IncludedWithWafFirewallVersionItem>'
38
- }
39
- end
40
-
41
- # List of attributes with nullable: true
42
- def self.fastly_nullable
43
- Set.new([
44
- ])
45
- end
46
-
47
- # Initializes the object
48
- # @param [Hash] attributes Model attributes in the form of hash
49
- def initialize(attributes = {})
50
- if (!attributes.is_a?(Hash))
51
- fail ArgumentError, "The input argument (attributes) must be a hash in `Fastly::WafFirewallVersionsResponseAllOf` initialize method"
52
- end
53
-
54
- # check to see if the attribute exists and convert string to symbol for hash key
55
- attributes = attributes.each_with_object({}) { |(k, v), h|
56
- if (!self.class.attribute_map.key?(k.to_sym))
57
- fail ArgumentError, "`#{k}` is not a valid attribute in `Fastly::WafFirewallVersionsResponseAllOf`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
58
- end
59
- h[k.to_sym] = v
60
- }
61
-
62
- if attributes.key?(:'data')
63
- if (value = attributes[:'data']).is_a?(Array)
64
- self.data = value
65
- end
66
- end
67
-
68
- if attributes.key?(:'included')
69
- if (value = attributes[:'included']).is_a?(Array)
70
- self.included = value
71
- end
72
- end
73
- end
74
-
75
- # Show invalid properties with the reasons. Usually used together with valid?
76
- # @return Array for valid properties with the reasons
77
- def list_invalid_properties
78
- invalid_properties = Array.new
79
- invalid_properties
80
- end
81
-
82
- # Check to see if the all the properties in the model are valid
83
- # @return true if the model is valid
84
- def valid?
85
- true
86
- end
87
-
88
- # Checks equality by comparing each attribute.
89
- # @param [Object] Object to be compared
90
- def ==(o)
91
- return true if self.equal?(o)
92
- self.class == o.class &&
93
- data == o.data &&
94
- included == o.included
95
- end
96
-
97
- # @see the `==` method
98
- # @param [Object] Object to be compared
99
- def eql?(o)
100
- self == o
101
- end
102
-
103
- # Calculates hash code according to all attributes.
104
- # @return [Integer] Hash code
105
- def hash
106
- [data, included].hash
107
- end
108
-
109
- # Builds the object from hash
110
- # @param [Hash] attributes Model attributes in the form of hash
111
- # @return [Object] Returns the model itself
112
- def self.build_from_hash(attributes)
113
- new.build_from_hash(attributes)
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 build_from_hash(attributes)
120
- return nil unless attributes.is_a?(Hash)
121
- self.class.fastly_types.each_pair do |key, type|
122
- if attributes[self.class.attribute_map[key]].nil? && self.class.fastly_nullable.include?(key)
123
- self.send("#{key}=", nil)
124
- elsif type =~ /\AArray<(.*)>/i
125
- # check to ensure the input is an array given that the attribute
126
- # is documented as an array but the input is not
127
- if attributes[self.class.attribute_map[key]].is_a?(Array)
128
- self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
129
- end
130
- elsif !attributes[self.class.attribute_map[key]].nil?
131
- self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
132
- end
133
- end
134
-
135
- self
136
- end
137
-
138
- # Deserializes the data based on type
139
- # @param string type Data type
140
- # @param string value Value to be deserialized
141
- # @return [Object] Deserialized data
142
- def _deserialize(type, value)
143
- case type.to_sym
144
- when :Time
145
- Time.parse(value)
146
- when :Date
147
- Date.parse(value)
148
- when :String
149
- value.to_s
150
- when :Integer
151
- value.to_i
152
- when :Float
153
- value.to_f
154
- when :Boolean
155
- if value.to_s =~ /\A(true|t|yes|y|1)\z/i
156
- true
157
- else
158
- false
159
- end
160
- when :Object
161
- # generic object (usually a Hash), return directly
162
- value
163
- when /\AArray<(?<inner_type>.+)>\z/
164
- inner_type = Regexp.last_match[:inner_type]
165
- value.map { |v| _deserialize(inner_type, v) }
166
- when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
167
- k_type = Regexp.last_match[:k_type]
168
- v_type = Regexp.last_match[:v_type]
169
- {}.tap do |hash|
170
- value.each do |k, v|
171
- hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
172
- end
173
- end
174
- else # model
175
- # models (e.g. Pet) or oneOf
176
- klass = Fastly.const_get(type)
177
- klass.respond_to?(:fastly_one_of) ? klass.build(value) : klass.build_from_hash(value)
178
- end
179
- end
180
-
181
- # Returns the string representation of the object
182
- # @return [String] String presentation of the object
183
- def to_s
184
- to_hash.to_s
185
- end
186
-
187
- # to_body is an alias to to_hash (backward compatibility)
188
- # @return [Hash] Returns the object in the form of hash
189
- def to_body
190
- to_hash
191
- end
192
-
193
- # Returns the object in the form of hash
194
- # @return [Hash] Returns the object in the form of hash
195
- def to_hash
196
- hash = {}
197
- self.class.attribute_map.each_pair do |attr, param|
198
- value = self.send(attr)
199
- if value.nil?
200
- is_nullable = self.class.fastly_nullable.include?(attr)
201
- next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
202
- end
203
-
204
- hash[param] = _to_hash(value)
205
- end
206
- hash
207
- end
208
-
209
- # Outputs non-array value in the form of hash
210
- # For object, use to_hash. Otherwise, just return the value
211
- # @param [Object] value Any valid value
212
- # @return [Hash] Returns the value in the form of hash
213
- def _to_hash(value)
214
- if value.is_a?(Array)
215
- value.compact.map { |v| _to_hash(v) }
216
- elsif value.is_a?(Hash)
217
- {}.tap do |hash|
218
- value.each { |k, v| hash[k] = _to_hash(v) }
219
- end
220
- elsif value.respond_to? :to_hash
221
- value.to_hash
222
- else
223
- value
224
- end
225
- end
226
-
227
- end
228
-
229
- end