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
@@ -12,13 +12,13 @@ require 'date'
12
12
  require 'time'
13
13
 
14
14
  module Fastly
15
- class WafActiveRuleResponse
16
- attr_accessor :data
15
+ class NgwafResponseCustomer
16
+ attr_accessor :customer
17
17
 
18
18
  # Attribute mapping from ruby-style variable name to JSON key.
19
19
  def self.attribute_map
20
20
  {
21
- :'data' => :'data'
21
+ :'customer' => :'customer'
22
22
  }
23
23
  end
24
24
 
@@ -30,7 +30,7 @@ module Fastly
30
30
  # Attribute type mapping.
31
31
  def self.fastly_types
32
32
  {
33
- :'data' => :'WafActiveRuleResponseData'
33
+ :'customer' => :'BotManagementResponseCustomerCustomer'
34
34
  }
35
35
  end
36
36
 
@@ -44,19 +44,19 @@ module Fastly
44
44
  # @param [Hash] attributes Model attributes in the form of hash
45
45
  def initialize(attributes = {})
46
46
  if (!attributes.is_a?(Hash))
47
- fail ArgumentError, "The input argument (attributes) must be a hash in `Fastly::WafActiveRuleResponse` initialize method"
47
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Fastly::NgwafResponseCustomer` initialize method"
48
48
  end
49
49
 
50
50
  # check to see if the attribute exists and convert string to symbol for hash key
51
51
  attributes = attributes.each_with_object({}) { |(k, v), h|
52
52
  if (!self.class.attribute_map.key?(k.to_sym))
53
- fail ArgumentError, "`#{k}` is not a valid attribute in `Fastly::WafActiveRuleResponse`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
53
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Fastly::NgwafResponseCustomer`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
54
54
  end
55
55
  h[k.to_sym] = v
56
56
  }
57
57
 
58
- if attributes.key?(:'data')
59
- self.data = attributes[:'data']
58
+ if attributes.key?(:'customer')
59
+ self.customer = attributes[:'customer']
60
60
  end
61
61
  end
62
62
 
@@ -78,7 +78,7 @@ module Fastly
78
78
  def ==(o)
79
79
  return true if self.equal?(o)
80
80
  self.class == o.class &&
81
- data == o.data
81
+ customer == o.customer
82
82
  end
83
83
 
84
84
  # @see the `==` method
@@ -90,7 +90,7 @@ module Fastly
90
90
  # Calculates hash code according to all attributes.
91
91
  # @return [Integer] Hash code
92
92
  def hash
93
- [data].hash
93
+ [customer].hash
94
94
  end
95
95
 
96
96
  # Builds the object from hash
@@ -12,13 +12,14 @@ require 'date'
12
12
  require 'time'
13
13
 
14
14
  module Fastly
15
- class RelationshipWafRuleRevisions
16
- attr_accessor :waf_rule_revisions
15
+ class NgwafResponseEnabledServices
16
+ # A list of services with the Next-Gen WAF enabled.
17
+ attr_accessor :services
17
18
 
18
19
  # Attribute mapping from ruby-style variable name to JSON key.
19
20
  def self.attribute_map
20
21
  {
21
- :'waf_rule_revisions' => :'waf_rule_revisions'
22
+ :'services' => :'services'
22
23
  }
23
24
  end
24
25
 
@@ -30,7 +31,7 @@ module Fastly
30
31
  # Attribute type mapping.
31
32
  def self.fastly_types
32
33
  {
33
- :'waf_rule_revisions' => :'RelationshipWafRuleRevisionWafRuleRevisions'
34
+ :'services' => :'Array<String>'
34
35
  }
35
36
  end
36
37
 
@@ -44,19 +45,21 @@ module Fastly
44
45
  # @param [Hash] attributes Model attributes in the form of hash
45
46
  def initialize(attributes = {})
46
47
  if (!attributes.is_a?(Hash))
47
- fail ArgumentError, "The input argument (attributes) must be a hash in `Fastly::RelationshipWafRuleRevisions` initialize method"
48
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Fastly::NgwafResponseEnabledServices` initialize method"
48
49
  end
49
50
 
50
51
  # check to see if the attribute exists and convert string to symbol for hash key
51
52
  attributes = attributes.each_with_object({}) { |(k, v), h|
52
53
  if (!self.class.attribute_map.key?(k.to_sym))
53
- fail ArgumentError, "`#{k}` is not a valid attribute in `Fastly::RelationshipWafRuleRevisions`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
54
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Fastly::NgwafResponseEnabledServices`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
54
55
  end
55
56
  h[k.to_sym] = v
56
57
  }
57
58
 
58
- if attributes.key?(:'waf_rule_revisions')
59
- self.waf_rule_revisions = attributes[:'waf_rule_revisions']
59
+ if attributes.key?(:'services')
60
+ if (value = attributes[:'services']).is_a?(Array)
61
+ self.services = value
62
+ end
60
63
  end
61
64
  end
62
65
 
@@ -78,7 +81,7 @@ module Fastly
78
81
  def ==(o)
79
82
  return true if self.equal?(o)
80
83
  self.class == o.class &&
81
- waf_rule_revisions == o.waf_rule_revisions
84
+ services == o.services
82
85
  end
83
86
 
84
87
  # @see the `==` method
@@ -90,7 +93,7 @@ module Fastly
90
93
  # Calculates hash code according to all attributes.
91
94
  # @return [Integer] Hash code
92
95
  def hash
93
- [waf_rule_revisions].hash
96
+ [services].hash
94
97
  end
95
98
 
96
99
  # Builds the object from hash
@@ -12,13 +12,13 @@ require 'date'
12
12
  require 'time'
13
13
 
14
14
  module Fastly
15
- class WafRuleRevisionResponseDataAllOf
16
- attr_accessor :relationships
15
+ class NgwafResponseLinksGetAllServices
16
+ attr_accessor :_links
17
17
 
18
18
  # Attribute mapping from ruby-style variable name to JSON key.
19
19
  def self.attribute_map
20
20
  {
21
- :'relationships' => :'relationships'
21
+ :'_links' => :'_links'
22
22
  }
23
23
  end
24
24
 
@@ -30,7 +30,7 @@ module Fastly
30
30
  # Attribute type mapping.
31
31
  def self.fastly_types
32
32
  {
33
- :'relationships' => :'RelationshipWafRule'
33
+ :'_links' => :'NgwafResponseLinksGetAllServicesLinks'
34
34
  }
35
35
  end
36
36
 
@@ -44,19 +44,19 @@ module Fastly
44
44
  # @param [Hash] attributes Model attributes in the form of hash
45
45
  def initialize(attributes = {})
46
46
  if (!attributes.is_a?(Hash))
47
- fail ArgumentError, "The input argument (attributes) must be a hash in `Fastly::WafRuleRevisionResponseDataAllOf` initialize method"
47
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Fastly::NgwafResponseLinksGetAllServices` initialize method"
48
48
  end
49
49
 
50
50
  # check to see if the attribute exists and convert string to symbol for hash key
51
51
  attributes = attributes.each_with_object({}) { |(k, v), h|
52
52
  if (!self.class.attribute_map.key?(k.to_sym))
53
- fail ArgumentError, "`#{k}` is not a valid attribute in `Fastly::WafRuleRevisionResponseDataAllOf`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
53
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Fastly::NgwafResponseLinksGetAllServices`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
54
54
  end
55
55
  h[k.to_sym] = v
56
56
  }
57
57
 
58
- if attributes.key?(:'relationships')
59
- self.relationships = attributes[:'relationships']
58
+ if attributes.key?(:'_links')
59
+ self._links = attributes[:'_links']
60
60
  end
61
61
  end
62
62
 
@@ -78,7 +78,7 @@ module Fastly
78
78
  def ==(o)
79
79
  return true if self.equal?(o)
80
80
  self.class == o.class &&
81
- relationships == o.relationships
81
+ _links == o._links
82
82
  end
83
83
 
84
84
  # @see the `==` method
@@ -90,7 +90,7 @@ module Fastly
90
90
  # Calculates hash code according to all attributes.
91
91
  # @return [Integer] Hash code
92
92
  def hash
93
- [relationships].hash
93
+ [_links].hash
94
94
  end
95
95
 
96
96
  # Builds the object from hash
@@ -12,13 +12,14 @@ require 'date'
12
12
  require 'time'
13
13
 
14
14
  module Fastly
15
- class RelationshipWafRule
16
- attr_accessor :waf_rule
15
+ class NgwafResponseLinksGetAllServicesLinks
16
+ # Location of resource
17
+ attr_accessor :_self
17
18
 
18
19
  # Attribute mapping from ruby-style variable name to JSON key.
19
20
  def self.attribute_map
20
21
  {
21
- :'waf_rule' => :'waf_rule'
22
+ :'_self' => :'self'
22
23
  }
23
24
  end
24
25
 
@@ -30,7 +31,7 @@ module Fastly
30
31
  # Attribute type mapping.
31
32
  def self.fastly_types
32
33
  {
33
- :'waf_rule' => :'RelationshipWafRuleWafRule'
34
+ :'_self' => :'String'
34
35
  }
35
36
  end
36
37
 
@@ -44,19 +45,19 @@ module Fastly
44
45
  # @param [Hash] attributes Model attributes in the form of hash
45
46
  def initialize(attributes = {})
46
47
  if (!attributes.is_a?(Hash))
47
- fail ArgumentError, "The input argument (attributes) must be a hash in `Fastly::RelationshipWafRule` initialize method"
48
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Fastly::NgwafResponseLinksGetAllServicesLinks` initialize method"
48
49
  end
49
50
 
50
51
  # check to see if the attribute exists and convert string to symbol for hash key
51
52
  attributes = attributes.each_with_object({}) { |(k, v), h|
52
53
  if (!self.class.attribute_map.key?(k.to_sym))
53
- fail ArgumentError, "`#{k}` is not a valid attribute in `Fastly::RelationshipWafRule`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
54
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Fastly::NgwafResponseLinksGetAllServicesLinks`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
54
55
  end
55
56
  h[k.to_sym] = v
56
57
  }
57
58
 
58
- if attributes.key?(:'waf_rule')
59
- self.waf_rule = attributes[:'waf_rule']
59
+ if attributes.key?(:'_self')
60
+ self._self = attributes[:'_self']
60
61
  end
61
62
  end
62
63
 
@@ -78,7 +79,7 @@ module Fastly
78
79
  def ==(o)
79
80
  return true if self.equal?(o)
80
81
  self.class == o.class &&
81
- waf_rule == o.waf_rule
82
+ _self == o._self
82
83
  end
83
84
 
84
85
  # @see the `==` method
@@ -90,7 +91,7 @@ module Fastly
90
91
  # Calculates hash code according to all attributes.
91
92
  # @return [Integer] Hash code
92
93
  def hash
93
- [waf_rule].hash
94
+ [_self].hash
94
95
  end
95
96
 
96
97
  # Builds the object from hash
@@ -0,0 +1,256 @@
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 OriginInspectorResponseBodyGetAllServices
16
+ attr_accessor :product
17
+
18
+ attr_accessor :customer
19
+
20
+ # A list of services with Origin Inspector enabled.
21
+ attr_accessor :services
22
+
23
+ attr_accessor :_links
24
+
25
+ # Attribute mapping from ruby-style variable name to JSON key.
26
+ def self.attribute_map
27
+ {
28
+ :'product' => :'product',
29
+ :'customer' => :'customer',
30
+ :'services' => :'services',
31
+ :'_links' => :'_links'
32
+ }
33
+ end
34
+
35
+ # Returns all the JSON keys this model knows about
36
+ def self.acceptable_attributes
37
+ attribute_map.values
38
+ end
39
+
40
+ # Attribute type mapping.
41
+ def self.fastly_types
42
+ {
43
+ :'product' => :'OriginInspectorResponseProductProduct',
44
+ :'customer' => :'BotManagementResponseCustomerCustomer',
45
+ :'services' => :'Array<String>',
46
+ :'_links' => :'OriginInspectorResponseLinksGetAllServicesLinks'
47
+ }
48
+ end
49
+
50
+ # List of attributes with nullable: true
51
+ def self.fastly_nullable
52
+ Set.new([
53
+ ])
54
+ end
55
+
56
+ # List of class defined in allOf (OpenAPI v3)
57
+ def self.fastly_all_of
58
+ [
59
+ :'OriginInspectorResponseCustomer',
60
+ :'OriginInspectorResponseEnabledServices',
61
+ :'OriginInspectorResponseLinksGetAllServices',
62
+ :'OriginInspectorResponseProduct'
63
+ ]
64
+ end
65
+
66
+ # Initializes the object
67
+ # @param [Hash] attributes Model attributes in the form of hash
68
+ def initialize(attributes = {})
69
+ if (!attributes.is_a?(Hash))
70
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Fastly::OriginInspectorResponseBodyGetAllServices` initialize method"
71
+ end
72
+
73
+ # check to see if the attribute exists and convert string to symbol for hash key
74
+ attributes = attributes.each_with_object({}) { |(k, v), h|
75
+ if (!self.class.attribute_map.key?(k.to_sym))
76
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Fastly::OriginInspectorResponseBodyGetAllServices`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
77
+ end
78
+ h[k.to_sym] = v
79
+ }
80
+
81
+ if attributes.key?(:'product')
82
+ self.product = attributes[:'product']
83
+ end
84
+
85
+ if attributes.key?(:'customer')
86
+ self.customer = attributes[:'customer']
87
+ end
88
+
89
+ if attributes.key?(:'services')
90
+ if (value = attributes[:'services']).is_a?(Array)
91
+ self.services = value
92
+ end
93
+ end
94
+
95
+ if attributes.key?(:'_links')
96
+ self._links = attributes[:'_links']
97
+ end
98
+ end
99
+
100
+ # Show invalid properties with the reasons. Usually used together with valid?
101
+ # @return Array for valid properties with the reasons
102
+ def list_invalid_properties
103
+ invalid_properties = Array.new
104
+ invalid_properties
105
+ end
106
+
107
+ # Check to see if the all the properties in the model are valid
108
+ # @return true if the model is valid
109
+ def valid?
110
+ true
111
+ end
112
+
113
+ # Checks equality by comparing each attribute.
114
+ # @param [Object] Object to be compared
115
+ def ==(o)
116
+ return true if self.equal?(o)
117
+ self.class == o.class &&
118
+ product == o.product &&
119
+ customer == o.customer &&
120
+ services == o.services &&
121
+ _links == o._links
122
+ end
123
+
124
+ # @see the `==` method
125
+ # @param [Object] Object to be compared
126
+ def eql?(o)
127
+ self == o
128
+ end
129
+
130
+ # Calculates hash code according to all attributes.
131
+ # @return [Integer] Hash code
132
+ def hash
133
+ [product, customer, services, _links].hash
134
+ end
135
+
136
+ # Builds the object from hash
137
+ # @param [Hash] attributes Model attributes in the form of hash
138
+ # @return [Object] Returns the model itself
139
+ def self.build_from_hash(attributes)
140
+ new.build_from_hash(attributes)
141
+ end
142
+
143
+ # Builds the object from hash
144
+ # @param [Hash] attributes Model attributes in the form of hash
145
+ # @return [Object] Returns the model itself
146
+ def build_from_hash(attributes)
147
+ return nil unless attributes.is_a?(Hash)
148
+ self.class.fastly_types.each_pair do |key, type|
149
+ if attributes[self.class.attribute_map[key]].nil? && self.class.fastly_nullable.include?(key)
150
+ self.send("#{key}=", nil)
151
+ elsif type =~ /\AArray<(.*)>/i
152
+ # check to ensure the input is an array given that the attribute
153
+ # is documented as an array but the input is not
154
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
155
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
156
+ end
157
+ elsif !attributes[self.class.attribute_map[key]].nil?
158
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
159
+ end
160
+ end
161
+
162
+ self
163
+ end
164
+
165
+ # Deserializes the data based on type
166
+ # @param string type Data type
167
+ # @param string value Value to be deserialized
168
+ # @return [Object] Deserialized data
169
+ def _deserialize(type, value)
170
+ case type.to_sym
171
+ when :Time
172
+ Time.parse(value)
173
+ when :Date
174
+ Date.parse(value)
175
+ when :String
176
+ value.to_s
177
+ when :Integer
178
+ value.to_i
179
+ when :Float
180
+ value.to_f
181
+ when :Boolean
182
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
183
+ true
184
+ else
185
+ false
186
+ end
187
+ when :Object
188
+ # generic object (usually a Hash), return directly
189
+ value
190
+ when /\AArray<(?<inner_type>.+)>\z/
191
+ inner_type = Regexp.last_match[:inner_type]
192
+ value.map { |v| _deserialize(inner_type, v) }
193
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
194
+ k_type = Regexp.last_match[:k_type]
195
+ v_type = Regexp.last_match[:v_type]
196
+ {}.tap do |hash|
197
+ value.each do |k, v|
198
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
199
+ end
200
+ end
201
+ else # model
202
+ # models (e.g. Pet) or oneOf
203
+ klass = Fastly.const_get(type)
204
+ klass.respond_to?(:fastly_one_of) ? klass.build(value) : klass.build_from_hash(value)
205
+ end
206
+ end
207
+
208
+ # Returns the string representation of the object
209
+ # @return [String] String presentation of the object
210
+ def to_s
211
+ to_hash.to_s
212
+ end
213
+
214
+ # to_body is an alias to to_hash (backward compatibility)
215
+ # @return [Hash] Returns the object in the form of hash
216
+ def to_body
217
+ to_hash
218
+ end
219
+
220
+ # Returns the object in the form of hash
221
+ # @return [Hash] Returns the object in the form of hash
222
+ def to_hash
223
+ hash = {}
224
+ self.class.attribute_map.each_pair do |attr, param|
225
+ value = self.send(attr)
226
+ if value.nil?
227
+ is_nullable = self.class.fastly_nullable.include?(attr)
228
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
229
+ end
230
+
231
+ hash[param] = _to_hash(value)
232
+ end
233
+ hash
234
+ end
235
+
236
+ # Outputs non-array value in the form of hash
237
+ # For object, use to_hash. Otherwise, just return the value
238
+ # @param [Object] value Any valid value
239
+ # @return [Hash] Returns the value in the form of hash
240
+ def _to_hash(value)
241
+ if value.is_a?(Array)
242
+ value.compact.map { |v| _to_hash(v) }
243
+ elsif value.is_a?(Hash)
244
+ {}.tap do |hash|
245
+ value.each { |k, v| hash[k] = _to_hash(v) }
246
+ end
247
+ elsif value.respond_to? :to_hash
248
+ value.to_hash
249
+ else
250
+ value
251
+ end
252
+ end
253
+
254
+ end
255
+
256
+ end