fastly 4.0.0.alpha4 → 4.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (527) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +1 -1
  3. data/README.md +100 -21
  4. data/docs/AclEntry.md +1 -1
  5. data/docs/AclEntryApi.md +0 -176
  6. data/docs/AclEntryResponse.md +1 -1
  7. data/docs/ApexRedirectApi.md +4 -4
  8. data/docs/AutomationToken.md +14 -0
  9. data/docs/AutomationTokenCreateRequest.md +10 -0
  10. data/docs/AutomationTokenCreateRequestAttributes.md +15 -0
  11. data/docs/AutomationTokenCreateResponse.md +24 -0
  12. data/docs/AutomationTokenCreateResponseAllOf.md +17 -0
  13. data/docs/AutomationTokenResponse.md +23 -0
  14. data/docs/AutomationTokenResponseAllOf.md +18 -0
  15. data/docs/AutomationTokensApi.md +209 -0
  16. data/docs/AwsRegion.md +9 -0
  17. data/docs/Backend.md +1 -0
  18. data/docs/BackendApi.md +4 -0
  19. data/docs/BackendResponse.md +1 -0
  20. data/docs/Billing.md +2 -1
  21. data/docs/BillingAddressRequest.md +1 -0
  22. data/docs/BillingAddressVerificationErrorResponse.md +10 -0
  23. data/docs/BillingAddressVerificationErrorResponseErrors.md +14 -0
  24. data/docs/BillingEstimateResponse.md +2 -1
  25. data/docs/BillingResponse.md +2 -1
  26. data/docs/BulkUpdateAclEntry.md +1 -1
  27. data/docs/ConditionApi.md +4 -4
  28. data/docs/EnabledProduct.md +12 -0
  29. data/docs/EnabledProductLinks.md +11 -0
  30. data/docs/EnabledProductProduct.md +11 -0
  31. data/docs/EnabledProductsApi.md +133 -0
  32. data/docs/ErrorResponse.md +10 -0
  33. data/docs/ErrorResponseData.md +11 -0
  34. data/docs/EventAttributes.md +1 -0
  35. data/docs/EventsApi.md +4 -2
  36. data/docs/HeaderApi.md +4 -4
  37. data/docs/Healthcheck.md +5 -4
  38. data/docs/HealthcheckApi.md +46 -42
  39. data/docs/HealthcheckResponse.md +5 -4
  40. data/docs/Http3Api.md +4 -4
  41. data/docs/HttpResponseFormat.md +14 -0
  42. data/docs/HttpStreamFormat.md +11 -0
  43. data/docs/InlineObject.md +10 -0
  44. data/docs/InlineObject1.md +10 -0
  45. data/docs/InlineResponse2001.md +1 -1
  46. data/docs/LoggingAzureblob.md +3 -3
  47. data/docs/LoggingAzureblobApi.md +12 -12
  48. data/docs/LoggingAzureblobResponse.md +3 -3
  49. data/docs/LoggingBigquery.md +4 -3
  50. data/docs/LoggingBigqueryApi.md +16 -12
  51. data/docs/LoggingBigqueryResponse.md +4 -3
  52. data/docs/LoggingCloudfiles.md +3 -3
  53. data/docs/LoggingCloudfilesApi.md +12 -12
  54. data/docs/LoggingCloudfilesResponse.md +3 -3
  55. data/docs/LoggingCommon.md +1 -1
  56. data/docs/LoggingDatadog.md +1 -1
  57. data/docs/LoggingDatadogApi.md +4 -4
  58. data/docs/LoggingDatadogResponse.md +1 -1
  59. data/docs/LoggingDigitalocean.md +3 -3
  60. data/docs/LoggingDigitaloceanApi.md +12 -12
  61. data/docs/LoggingDigitaloceanResponse.md +3 -3
  62. data/docs/LoggingElasticsearch.md +1 -1
  63. data/docs/LoggingElasticsearchApi.md +4 -4
  64. data/docs/LoggingElasticsearchResponse.md +1 -1
  65. data/docs/LoggingFtp.md +3 -3
  66. data/docs/LoggingFtpApi.md +12 -12
  67. data/docs/LoggingFtpResponse.md +3 -3
  68. data/docs/LoggingGcs.md +7 -5
  69. data/docs/LoggingGcsAllOf.md +1 -0
  70. data/docs/LoggingGcsApi.md +32 -24
  71. data/docs/LoggingGcsCommon.md +3 -2
  72. data/docs/LoggingGcsResponse.md +7 -5
  73. data/docs/LoggingGenericCommon.md +2 -2
  74. data/docs/LoggingGooglePubsub.md +4 -3
  75. data/docs/LoggingGooglePubsubResponse.md +4 -3
  76. data/docs/LoggingHeroku.md +1 -1
  77. data/docs/LoggingHerokuApi.md +4 -4
  78. data/docs/LoggingHerokuResponse.md +1 -1
  79. data/docs/LoggingHoneycomb.md +1 -1
  80. data/docs/LoggingHoneycombApi.md +4 -4
  81. data/docs/LoggingHoneycombResponse.md +1 -1
  82. data/docs/LoggingHttps.md +1 -1
  83. data/docs/LoggingHttpsApi.md +4 -4
  84. data/docs/LoggingHttpsResponse.md +1 -1
  85. data/docs/LoggingKafka.md +1 -1
  86. data/docs/LoggingKafkaApi.md +2 -2
  87. data/docs/LoggingKafkaResponse.md +1 -1
  88. data/docs/LoggingKinesis.md +1 -1
  89. data/docs/LoggingKinesisApi.md +2 -2
  90. data/docs/LoggingKinesisResponse.md +1 -1
  91. data/docs/LoggingLogentries.md +1 -1
  92. data/docs/LoggingLogentriesApi.md +4 -4
  93. data/docs/LoggingLogentriesResponse.md +1 -1
  94. data/docs/LoggingLoggly.md +1 -1
  95. data/docs/LoggingLogglyApi.md +4 -4
  96. data/docs/LoggingLogglyResponse.md +1 -1
  97. data/docs/LoggingLogshuttle.md +1 -1
  98. data/docs/LoggingLogshuttleApi.md +4 -4
  99. data/docs/LoggingLogshuttleResponse.md +1 -1
  100. data/docs/LoggingNewrelic.md +2 -2
  101. data/docs/LoggingNewrelicAllOf.md +1 -1
  102. data/docs/LoggingNewrelicApi.md +8 -8
  103. data/docs/LoggingNewrelicResponse.md +2 -2
  104. data/docs/LoggingOpenstack.md +3 -3
  105. data/docs/LoggingOpenstackApi.md +12 -12
  106. data/docs/LoggingOpenstackResponse.md +3 -3
  107. data/docs/LoggingPapertrail.md +1 -1
  108. data/docs/LoggingPapertrailApi.md +4 -4
  109. data/docs/LoggingPapertrailResponse.md +1 -1
  110. data/docs/LoggingPubsubApi.md +16 -12
  111. data/docs/LoggingS3.md +3 -3
  112. data/docs/LoggingS3Api.md +12 -12
  113. data/docs/LoggingS3Response.md +3 -3
  114. data/docs/LoggingScalyr.md +1 -1
  115. data/docs/LoggingScalyrApi.md +4 -4
  116. data/docs/LoggingScalyrResponse.md +1 -1
  117. data/docs/LoggingSftp.md +4 -4
  118. data/docs/LoggingSftpAllOf.md +1 -1
  119. data/docs/LoggingSftpApi.md +16 -16
  120. data/docs/LoggingSftpResponse.md +4 -4
  121. data/docs/LoggingSplunk.md +1 -1
  122. data/docs/LoggingSplunkApi.md +4 -4
  123. data/docs/LoggingSplunkResponse.md +1 -1
  124. data/docs/LoggingSumologic.md +1 -1
  125. data/docs/LoggingSumologicApi.md +4 -4
  126. data/docs/LoggingSumologicResponse.md +1 -1
  127. data/docs/LoggingSyslog.md +1 -1
  128. data/docs/LoggingSyslogApi.md +4 -4
  129. data/docs/LoggingSyslogResponse.md +1 -1
  130. data/docs/MutualAuthentication.md +10 -0
  131. data/docs/MutualAuthenticationApi.md +207 -0
  132. data/docs/MutualAuthenticationData.md +12 -0
  133. data/docs/MutualAuthenticationDataAttributes.md +12 -0
  134. data/docs/MutualAuthenticationResponse.md +10 -0
  135. data/docs/MutualAuthenticationResponseAttributes.md +13 -0
  136. data/docs/MutualAuthenticationResponseAttributesAllOf.md +10 -0
  137. data/docs/MutualAuthenticationResponseData.md +13 -0
  138. data/docs/MutualAuthenticationResponseDataAllOf.md +11 -0
  139. data/docs/MutualAuthenticationsResponse.md +12 -0
  140. data/docs/MutualAuthenticationsResponseAllOf.md +10 -0
  141. data/docs/PublishApi.md +54 -0
  142. data/docs/PublishItem.md +13 -0
  143. data/docs/PublishItemFormats.md +12 -0
  144. data/docs/PublishRequest.md +10 -0
  145. data/docs/PurgeApi.md +9 -9
  146. data/docs/RealtimeMeasurements.md +23 -0
  147. data/docs/RelationshipCommonName.md +1 -1
  148. data/docs/RelationshipMemberMutualAuthentication.md +11 -0
  149. data/docs/RelationshipMutualAuthentication.md +10 -0
  150. data/docs/RelationshipMutualAuthenticationMutualAuthentication.md +10 -0
  151. data/docs/RelationshipMutualAuthentications.md +10 -0
  152. data/docs/RelationshipMutualAuthenticationsMutualAuthentications.md +10 -0
  153. data/docs/RelationshipService.md +1 -1
  154. data/docs/RelationshipServices.md +1 -1
  155. data/docs/{RelationshipServiceService.md → RelationshipServicesServices.md} +1 -1
  156. data/docs/RelationshipTlsCertificateTlsCertificate.md +1 -1
  157. data/docs/RelationshipTlsCertificates.md +1 -1
  158. data/docs/RelationshipTlsCertificatesTlsCertificates.md +10 -0
  159. data/docs/RelationshipTlsConfigurationTlsConfiguration.md +1 -1
  160. data/docs/RelationshipTlsConfigurations.md +1 -1
  161. data/docs/RelationshipTlsConfigurationsTlsConfigurations.md +10 -0
  162. data/docs/RelationshipTlsDomainTlsDomain.md +1 -1
  163. data/docs/RelationshipTlsDomains.md +1 -1
  164. data/docs/RelationshipTlsDomainsTlsDomains.md +10 -0
  165. data/docs/RelationshipTlsPrivateKeyTlsPrivateKey.md +1 -1
  166. data/docs/RelationshipTlsPrivateKeys.md +1 -1
  167. data/docs/RelationshipTlsPrivateKeysTlsPrivateKeys.md +10 -0
  168. data/docs/RelationshipUserUser.md +1 -1
  169. data/docs/RelationshipsForMutualAuthentication.md +10 -0
  170. data/docs/RelationshipsForStar.md +1 -1
  171. data/docs/RelationshipsForTlsBulkCertificate.md +2 -2
  172. data/docs/RelationshipsForTlsConfiguration.md +1 -1
  173. data/docs/RelationshipsForTlsCsr.md +10 -0
  174. data/docs/RelationshipsForTlsPrivateKey.md +1 -1
  175. data/docs/RelationshipsForTlsSubscription.md +2 -2
  176. data/docs/Results.md +24 -1
  177. data/docs/SchemasUserResponse.md +2 -2
  178. data/docs/Service.md +1 -1
  179. data/docs/ServiceApi.md +4 -4
  180. data/docs/ServiceAuthorizationData.md +1 -1
  181. data/docs/ServiceAuthorizationDataRelationships.md +11 -0
  182. data/docs/ServiceAuthorizationDataRelationshipsUser.md +10 -0
  183. data/docs/{RelationshipUserUserData.md → ServiceAuthorizationDataRelationshipsUserData.md} +1 -1
  184. data/docs/ServiceAuthorizationResponseData.md +1 -1
  185. data/docs/ServiceCreate.md +1 -1
  186. data/docs/ServiceDetail.md +1 -1
  187. data/docs/ServiceInvitationData.md +1 -1
  188. data/docs/ServiceInvitationDataRelationships.md +10 -0
  189. data/docs/ServiceListResponse.md +1 -1
  190. data/docs/ServiceResponse.md +1 -1
  191. data/docs/ServiceVersionDetail.md +1 -1
  192. data/docs/ServiceVersionDetailOrNull.md +1 -1
  193. data/docs/TlsCsr.md +10 -0
  194. data/docs/TlsCsrData.md +12 -0
  195. data/docs/TlsCsrDataAttributes.md +19 -0
  196. data/docs/TlsCsrResponse.md +10 -0
  197. data/docs/TlsCsrResponseAttributes.md +10 -0
  198. data/docs/TlsCsrResponseData.md +13 -0
  199. data/docs/TlsCsrsApi.md +52 -0
  200. data/docs/TypeMutualAuthentication.md +9 -0
  201. data/docs/TypeTlsCsr.md +9 -0
  202. data/docs/UpdateBillingAddressRequest.md +1 -0
  203. data/docs/User.md +1 -1
  204. data/docs/UserApi.md +4 -4
  205. data/docs/UserResponse.md +2 -2
  206. data/docs/UserResponseAllOf.md +1 -1
  207. data/docs/ValidatorResult.md +14 -0
  208. data/docs/ValidatorResultMessages.md +13 -0
  209. data/docs/VclApi.md +78 -0
  210. data/docs/VersionDetail.md +1 -1
  211. data/docs/VersionDetailSettings.md +13 -0
  212. data/docs/WafFirewallVersionDataAttributes.md +1 -1
  213. data/docs/WsMessageFormat.md +11 -0
  214. data/lib/fastly/api/acl_entry_api.rb +0 -332
  215. data/lib/fastly/api/automation_tokens_api.rb +340 -0
  216. data/lib/fastly/api/backend_api.rb +6 -0
  217. data/lib/fastly/api/cache_settings_api.rb +2 -2
  218. data/lib/fastly/api/enabled_products_api.rb +228 -0
  219. data/lib/fastly/api/events_api.rb +6 -3
  220. data/lib/fastly/api/healthcheck_api.rb +48 -42
  221. data/lib/fastly/api/logging_azureblob_api.rb +12 -12
  222. data/lib/fastly/api/logging_bigquery_api.rb +18 -12
  223. data/lib/fastly/api/logging_cloudfiles_api.rb +12 -12
  224. data/lib/fastly/api/logging_datadog_api.rb +4 -4
  225. data/lib/fastly/api/logging_digitalocean_api.rb +12 -12
  226. data/lib/fastly/api/logging_elasticsearch_api.rb +4 -4
  227. data/lib/fastly/api/logging_ftp_api.rb +12 -12
  228. data/lib/fastly/api/logging_gcs_api.rb +32 -20
  229. data/lib/fastly/api/logging_heroku_api.rb +4 -4
  230. data/lib/fastly/api/logging_honeycomb_api.rb +4 -4
  231. data/lib/fastly/api/logging_https_api.rb +4 -4
  232. data/lib/fastly/api/logging_kafka_api.rb +2 -2
  233. data/lib/fastly/api/logging_kinesis_api.rb +2 -6
  234. data/lib/fastly/api/logging_logentries_api.rb +4 -4
  235. data/lib/fastly/api/logging_loggly_api.rb +4 -4
  236. data/lib/fastly/api/logging_logshuttle_api.rb +4 -4
  237. data/lib/fastly/api/logging_newrelic_api.rb +8 -8
  238. data/lib/fastly/api/logging_openstack_api.rb +12 -12
  239. data/lib/fastly/api/logging_papertrail_api.rb +4 -4
  240. data/lib/fastly/api/logging_pubsub_api.rb +18 -12
  241. data/lib/fastly/api/logging_s3_api.rb +12 -12
  242. data/lib/fastly/api/logging_scalyr_api.rb +4 -4
  243. data/lib/fastly/api/logging_sftp_api.rb +16 -16
  244. data/lib/fastly/api/logging_splunk_api.rb +4 -4
  245. data/lib/fastly/api/logging_sumologic_api.rb +4 -4
  246. data/lib/fastly/api/logging_syslog_api.rb +4 -4
  247. data/lib/fastly/api/mutual_authentication_api.rb +347 -0
  248. data/lib/fastly/api/publish_api.rb +90 -0
  249. data/lib/fastly/api/purge_api.rb +14 -15
  250. data/lib/fastly/api/service_api.rb +4 -4
  251. data/lib/fastly/api/{domain_ownerships_api.rb → tls_csrs_api.rb} +24 -17
  252. data/lib/fastly/api/user_api.rb +4 -4
  253. data/lib/fastly/api/vcl_api.rb +143 -0
  254. data/lib/fastly/api_client.rb +16 -0
  255. data/lib/fastly/models/acl_entry.rb +1 -1
  256. data/lib/fastly/models/acl_entry_response.rb +1 -4
  257. data/lib/fastly/models/acl_entry_response_all_of.rb +0 -3
  258. data/lib/fastly/models/acl_response.rb +0 -3
  259. data/lib/fastly/models/acl_response_all_of.rb +0 -1
  260. data/lib/fastly/models/apex_redirect.rb +0 -2
  261. data/lib/fastly/models/automation_token.rb +307 -0
  262. data/lib/fastly/models/automation_token_create_request.rb +216 -0
  263. data/lib/fastly/models/automation_token_create_request_attributes.rb +317 -0
  264. data/lib/fastly/models/automation_token_create_response.rb +416 -0
  265. data/lib/fastly/models/automation_token_create_response_all_of.rb +285 -0
  266. data/lib/fastly/models/automation_token_response.rb +394 -0
  267. data/lib/fastly/models/automation_token_response_all_of.rb +295 -0
  268. data/lib/fastly/models/aws_region.rb +56 -0
  269. data/lib/fastly/models/backend.rb +12 -1
  270. data/lib/fastly/models/backend_response.rb +12 -3
  271. data/lib/fastly/models/billing.rb +12 -3
  272. data/lib/fastly/models/billing_address_attributes.rb +4 -1
  273. data/lib/fastly/models/billing_address_request.rb +11 -1
  274. data/lib/fastly/models/billing_address_verification_error_response.rb +218 -0
  275. data/lib/fastly/models/billing_address_verification_error_response_errors.rb +275 -0
  276. data/lib/fastly/models/billing_estimate_response.rb +12 -3
  277. data/lib/fastly/models/billing_response.rb +12 -3
  278. data/lib/fastly/models/billing_response_line_item.rb +0 -1
  279. data/lib/fastly/models/billing_response_line_item_all_of.rb +0 -1
  280. data/lib/fastly/models/billing_status.rb +0 -1
  281. data/lib/fastly/models/billing_total.rb +1 -0
  282. data/lib/fastly/models/bulk_update_acl_entry.rb +1 -2
  283. data/lib/fastly/models/bulk_update_acl_entry_all_of.rb +0 -1
  284. data/lib/fastly/models/cache_setting.rb +2 -2
  285. data/lib/fastly/models/cache_setting_response.rb +2 -4
  286. data/lib/fastly/models/condition.rb +0 -1
  287. data/lib/fastly/models/condition_response.rb +0 -1
  288. data/lib/fastly/models/contact_response.rb +0 -1
  289. data/lib/fastly/models/contact_response_all_of.rb +0 -1
  290. data/lib/fastly/models/customer_response.rb +0 -1
  291. data/lib/fastly/models/customer_response_all_of.rb +0 -1
  292. data/lib/fastly/models/dictionary_item_response.rb +0 -2
  293. data/lib/fastly/models/dictionary_item_response_all_of.rb +0 -2
  294. data/lib/fastly/models/dictionary_response.rb +0 -3
  295. data/lib/fastly/models/dictionary_response_all_of.rb +0 -1
  296. data/lib/fastly/models/director_backend.rb +0 -2
  297. data/lib/fastly/models/director_response.rb +0 -2
  298. data/lib/fastly/models/domain_response.rb +0 -2
  299. data/lib/fastly/models/enabled_product.rb +234 -0
  300. data/lib/fastly/models/enabled_product_links.rb +225 -0
  301. data/lib/fastly/models/enabled_product_product.rb +225 -0
  302. data/lib/fastly/models/error_response.rb +218 -0
  303. data/lib/fastly/models/error_response_data.rb +225 -0
  304. data/lib/fastly/models/event.rb +0 -1
  305. data/lib/fastly/models/event_attributes.rb +13 -7
  306. data/lib/fastly/models/gzip_response.rb +0 -2
  307. data/lib/fastly/models/header_response.rb +0 -2
  308. data/lib/fastly/models/healthcheck.rb +17 -5
  309. data/lib/fastly/models/healthcheck_response.rb +17 -7
  310. data/lib/fastly/models/historical_usage_month_response_all_of_data.rb +0 -1
  311. data/lib/fastly/models/http3.rb +0 -2
  312. data/lib/fastly/models/http_response_format.rb +262 -0
  313. data/lib/fastly/models/http_stream_format.rb +228 -0
  314. data/lib/fastly/models/inline_object.rb +221 -0
  315. data/lib/fastly/models/inline_object1.rb +221 -0
  316. data/lib/fastly/models/inline_response2001.rb +10 -8
  317. data/lib/fastly/models/invitation_response_data.rb +0 -1
  318. data/lib/fastly/models/invitation_response_data_all_of.rb +0 -1
  319. data/lib/fastly/models/logging_azureblob.rb +3 -3
  320. data/lib/fastly/models/logging_azureblob_response.rb +3 -5
  321. data/lib/fastly/models/logging_bigquery.rb +14 -4
  322. data/lib/fastly/models/logging_bigquery_response.rb +14 -6
  323. data/lib/fastly/models/logging_cloudfiles.rb +3 -3
  324. data/lib/fastly/models/logging_cloudfiles_response.rb +3 -5
  325. data/lib/fastly/models/logging_common.rb +1 -1
  326. data/lib/fastly/models/logging_datadog.rb +1 -1
  327. data/lib/fastly/models/logging_datadog_response.rb +1 -3
  328. data/lib/fastly/models/logging_digitalocean.rb +3 -3
  329. data/lib/fastly/models/logging_digitalocean_response.rb +3 -5
  330. data/lib/fastly/models/logging_elasticsearch.rb +1 -1
  331. data/lib/fastly/models/logging_elasticsearch_response.rb +1 -3
  332. data/lib/fastly/models/logging_ftp.rb +3 -3
  333. data/lib/fastly/models/logging_ftp_response.rb +3 -5
  334. data/lib/fastly/models/logging_gcs.rb +30 -11
  335. data/lib/fastly/models/logging_gcs_all_of.rb +15 -6
  336. data/lib/fastly/models/logging_gcs_common.rb +16 -6
  337. data/lib/fastly/models/logging_gcs_response.rb +26 -9
  338. data/lib/fastly/models/logging_generic_common.rb +2 -2
  339. data/lib/fastly/models/logging_google_pubsub.rb +14 -4
  340. data/lib/fastly/models/logging_google_pubsub_response.rb +14 -6
  341. data/lib/fastly/models/logging_heroku.rb +1 -1
  342. data/lib/fastly/models/logging_heroku_response.rb +1 -3
  343. data/lib/fastly/models/logging_honeycomb.rb +1 -1
  344. data/lib/fastly/models/logging_honeycomb_response.rb +1 -3
  345. data/lib/fastly/models/logging_https.rb +1 -1
  346. data/lib/fastly/models/logging_https_response.rb +1 -3
  347. data/lib/fastly/models/logging_kafka.rb +1 -1
  348. data/lib/fastly/models/logging_kafka_response.rb +1 -3
  349. data/lib/fastly/models/logging_kinesis.rb +1 -36
  350. data/lib/fastly/models/logging_kinesis_response.rb +1 -38
  351. data/lib/fastly/models/logging_logentries.rb +1 -1
  352. data/lib/fastly/models/logging_logentries_response.rb +1 -3
  353. data/lib/fastly/models/logging_loggly.rb +1 -1
  354. data/lib/fastly/models/logging_loggly_response.rb +1 -3
  355. data/lib/fastly/models/logging_logshuttle.rb +1 -1
  356. data/lib/fastly/models/logging_logshuttle_response.rb +1 -3
  357. data/lib/fastly/models/logging_newrelic.rb +4 -3
  358. data/lib/fastly/models/logging_newrelic_all_of.rb +3 -2
  359. data/lib/fastly/models/logging_newrelic_response.rb +4 -5
  360. data/lib/fastly/models/logging_openstack.rb +3 -3
  361. data/lib/fastly/models/logging_openstack_response.rb +3 -5
  362. data/lib/fastly/models/logging_papertrail.rb +1 -1
  363. data/lib/fastly/models/logging_papertrail_response.rb +1 -3
  364. data/lib/fastly/models/logging_s3.rb +3 -3
  365. data/lib/fastly/models/logging_s3_response.rb +3 -5
  366. data/lib/fastly/models/logging_scalyr.rb +1 -1
  367. data/lib/fastly/models/logging_scalyr_response.rb +1 -3
  368. data/lib/fastly/models/logging_sftp.rb +6 -5
  369. data/lib/fastly/models/logging_sftp_all_of.rb +3 -2
  370. data/lib/fastly/models/logging_sftp_response.rb +6 -7
  371. data/lib/fastly/models/logging_splunk.rb +1 -1
  372. data/lib/fastly/models/logging_splunk_response.rb +1 -3
  373. data/lib/fastly/models/logging_sumologic.rb +1 -1
  374. data/lib/fastly/models/logging_sumologic_response.rb +1 -3
  375. data/lib/fastly/models/logging_syslog.rb +1 -1
  376. data/lib/fastly/models/logging_syslog_response.rb +1 -3
  377. data/lib/fastly/models/mutual_authentication.rb +216 -0
  378. data/lib/fastly/models/mutual_authentication_data.rb +236 -0
  379. data/lib/fastly/models/mutual_authentication_data_attributes.rb +237 -0
  380. data/lib/fastly/models/mutual_authentication_response.rb +216 -0
  381. data/lib/fastly/models/mutual_authentication_response_attributes.rb +258 -0
  382. data/lib/fastly/models/mutual_authentication_response_attributes_all_of.rb +217 -0
  383. data/lib/fastly/models/mutual_authentication_response_data.rb +253 -0
  384. data/lib/fastly/models/mutual_authentication_response_data_all_of.rb +225 -0
  385. data/lib/fastly/models/mutual_authentications_response.rb +244 -0
  386. data/lib/fastly/models/mutual_authentications_response_all_of.rb +218 -0
  387. data/lib/fastly/models/package_response.rb +0 -2
  388. data/lib/fastly/models/pool_response.rb +0 -3
  389. data/lib/fastly/models/pool_response_all_of.rb +0 -1
  390. data/lib/fastly/models/publish_item.rb +257 -0
  391. data/lib/fastly/models/publish_item_formats.rb +235 -0
  392. data/lib/fastly/models/publish_request.rb +225 -0
  393. data/lib/fastly/models/purge_response.rb +0 -1
  394. data/lib/fastly/models/rate_limiter_response.rb +0 -2
  395. data/lib/fastly/models/realtime.rb +0 -1
  396. data/lib/fastly/models/realtime_entry.rb +3 -2
  397. data/lib/fastly/models/realtime_measurements.rb +234 -4
  398. data/lib/fastly/models/relationship_common_name.rb +1 -1
  399. data/lib/fastly/models/relationship_member_customer.rb +0 -1
  400. data/lib/fastly/models/relationship_member_mutual_authentication.rb +227 -0
  401. data/lib/fastly/models/relationship_member_service.rb +0 -1
  402. data/lib/fastly/models/relationship_member_tls_activation.rb +0 -1
  403. data/lib/fastly/models/relationship_member_tls_bulk_certificate.rb +0 -1
  404. data/lib/fastly/models/relationship_member_tls_certificate.rb +0 -1
  405. data/lib/fastly/models/relationship_member_tls_configuration.rb +0 -1
  406. data/lib/fastly/models/relationship_member_tls_dns_record.rb +0 -1
  407. data/lib/fastly/models/relationship_member_tls_private_key.rb +0 -1
  408. data/lib/fastly/models/relationship_member_tls_subscription.rb +0 -1
  409. data/lib/fastly/models/relationship_member_waf_active_rule.rb +0 -1
  410. data/lib/fastly/models/relationship_member_waf_firewall.rb +0 -1
  411. data/lib/fastly/models/relationship_member_waf_rule.rb +0 -1
  412. data/lib/fastly/models/relationship_mutual_authentication.rb +216 -0
  413. data/lib/fastly/models/relationship_mutual_authentication_mutual_authentication.rb +216 -0
  414. data/lib/fastly/models/relationship_mutual_authentications.rb +216 -0
  415. data/lib/fastly/models/relationship_mutual_authentications_mutual_authentications.rb +218 -0
  416. data/lib/fastly/models/relationship_service.rb +1 -1
  417. data/lib/fastly/models/relationship_services.rb +1 -1
  418. data/lib/fastly/models/{relationship_service_service.rb → relationship_services_services.rb} +3 -3
  419. data/lib/fastly/models/relationship_tls_certificate_tls_certificate.rb +2 -4
  420. data/lib/fastly/models/relationship_tls_certificates.rb +1 -1
  421. data/lib/fastly/models/relationship_tls_certificates_tls_certificates.rb +218 -0
  422. data/lib/fastly/models/relationship_tls_configuration_tls_configuration.rb +2 -4
  423. data/lib/fastly/models/relationship_tls_configurations.rb +1 -1
  424. data/lib/fastly/models/relationship_tls_configurations_tls_configurations.rb +218 -0
  425. data/lib/fastly/models/relationship_tls_domain_tls_domain.rb +2 -4
  426. data/lib/fastly/models/relationship_tls_domains.rb +1 -1
  427. data/lib/fastly/models/relationship_tls_domains_tls_domains.rb +218 -0
  428. data/lib/fastly/models/relationship_tls_private_key_tls_private_key.rb +2 -4
  429. data/lib/fastly/models/relationship_tls_private_keys.rb +1 -1
  430. data/lib/fastly/models/relationship_tls_private_keys_tls_private_keys.rb +218 -0
  431. data/lib/fastly/models/relationship_user_user.rb +1 -1
  432. data/lib/fastly/models/relationships_for_mutual_authentication.rb +235 -0
  433. data/lib/fastly/models/relationships_for_star.rb +1 -1
  434. data/lib/fastly/models/relationships_for_tls_bulk_certificate.rb +2 -2
  435. data/lib/fastly/models/relationships_for_tls_configuration.rb +1 -1
  436. data/lib/fastly/models/relationships_for_tls_csr.rb +235 -0
  437. data/lib/fastly/models/relationships_for_tls_private_key.rb +1 -1
  438. data/lib/fastly/models/relationships_for_tls_subscription.rb +2 -2
  439. data/lib/fastly/models/request_settings_response.rb +0 -2
  440. data/lib/fastly/models/response_object_response.rb +0 -2
  441. data/lib/fastly/models/results.rb +235 -5
  442. data/lib/fastly/models/schemas_contact_response.rb +0 -1
  443. data/lib/fastly/models/schemas_snippet_response.rb +0 -3
  444. data/lib/fastly/models/schemas_user_response.rb +0 -3
  445. data/lib/fastly/models/schemas_vcl_response.rb +0 -2
  446. data/lib/fastly/models/schemas_version_response.rb +0 -1
  447. data/lib/fastly/models/server_response.rb +0 -3
  448. data/lib/fastly/models/server_response_all_of.rb +0 -3
  449. data/lib/fastly/models/service.rb +1 -1
  450. data/lib/fastly/models/service_authorization_data.rb +1 -2
  451. data/lib/fastly/models/service_authorization_data_relationships.rb +225 -0
  452. data/lib/fastly/models/service_authorization_data_relationships_user.rb +217 -0
  453. data/lib/fastly/models/{relationship_user_user_data.rb → service_authorization_data_relationships_user_data.rb} +3 -4
  454. data/lib/fastly/models/service_authorization_response_data.rb +1 -3
  455. data/lib/fastly/models/service_authorization_response_data_all_of.rb +0 -1
  456. data/lib/fastly/models/service_create.rb +1 -1
  457. data/lib/fastly/models/service_detail.rb +2 -2
  458. data/lib/fastly/models/service_detail_all_of.rb +1 -0
  459. data/lib/fastly/models/service_id_and_version.rb +0 -2
  460. data/lib/fastly/models/service_invitation_data.rb +1 -3
  461. data/lib/fastly/models/service_invitation_data_relationships.rb +217 -0
  462. data/lib/fastly/models/service_invitation_response_all_of_data.rb +0 -1
  463. data/lib/fastly/models/service_list_response.rb +1 -2
  464. data/lib/fastly/models/service_list_response_all_of.rb +0 -1
  465. data/lib/fastly/models/service_response.rb +1 -2
  466. data/lib/fastly/models/service_response_all_of.rb +0 -1
  467. data/lib/fastly/models/service_version_detail.rb +1 -4
  468. data/lib/fastly/models/service_version_detail_or_null.rb +5 -20
  469. data/lib/fastly/models/settings_response.rb +0 -2
  470. data/lib/fastly/models/snippet_response.rb +0 -3
  471. data/lib/fastly/models/snippet_response_all_of.rb +0 -1
  472. data/lib/fastly/models/tls_activation_response_data.rb +0 -1
  473. data/lib/fastly/models/tls_activation_response_data_all_of.rb +0 -1
  474. data/lib/fastly/models/tls_bulk_certificate_response_data.rb +0 -1
  475. data/lib/fastly/models/tls_bulk_certificate_response_data_all_of.rb +0 -1
  476. data/lib/fastly/models/tls_certificate_response_data.rb +0 -1
  477. data/lib/fastly/models/tls_certificate_response_data_all_of.rb +0 -1
  478. data/lib/fastly/models/tls_configuration_response_data.rb +0 -1
  479. data/lib/fastly/models/tls_configuration_response_data_all_of.rb +0 -1
  480. data/lib/fastly/models/tls_csr.rb +216 -0
  481. data/lib/fastly/models/tls_csr_data.rb +236 -0
  482. data/lib/fastly/models/tls_csr_data_attributes.rb +314 -0
  483. data/lib/fastly/models/tls_csr_response.rb +216 -0
  484. data/lib/fastly/models/tls_csr_response_attributes.rb +217 -0
  485. data/lib/fastly/models/tls_csr_response_data.rb +245 -0
  486. data/lib/fastly/models/tls_private_key_response_data.rb +0 -1
  487. data/lib/fastly/models/tls_subscription_response_data.rb +0 -1
  488. data/lib/fastly/models/tls_subscription_response_data_all_of.rb +0 -1
  489. data/lib/fastly/models/token_created_response.rb +0 -2
  490. data/lib/fastly/models/token_response.rb +0 -2
  491. data/lib/fastly/models/token_response_all_of.rb +0 -2
  492. data/lib/fastly/models/type_mutual_authentication.rb +34 -0
  493. data/lib/fastly/models/type_tls_csr.rb +34 -0
  494. data/lib/fastly/models/update_billing_address_request.rb +11 -1
  495. data/lib/fastly/models/user.rb +0 -1
  496. data/lib/fastly/models/user_response.rb +0 -3
  497. data/lib/fastly/models/user_response_all_of.rb +0 -2
  498. data/lib/fastly/models/validator_result.rb +294 -0
  499. data/lib/fastly/models/validator_result_messages.rb +265 -0
  500. data/lib/fastly/models/vcl_response.rb +0 -2
  501. data/lib/fastly/models/version_create_response.rb +0 -2
  502. data/lib/fastly/models/version_detail.rb +1 -3
  503. data/lib/fastly/models/version_detail_settings.rb +252 -0
  504. data/lib/fastly/models/version_response.rb +0 -1
  505. data/lib/fastly/models/version_response_all_of.rb +0 -1
  506. data/lib/fastly/models/waf_active_rule_response_data.rb +0 -1
  507. data/lib/fastly/models/waf_active_rule_response_data_all_of.rb +0 -1
  508. data/lib/fastly/models/waf_firewall_data_attributes.rb +0 -1
  509. data/lib/fastly/models/waf_firewall_response_data.rb +0 -1
  510. data/lib/fastly/models/waf_firewall_response_data_all_of.rb +0 -1
  511. data/lib/fastly/models/waf_firewall_response_data_attributes.rb +0 -1
  512. data/lib/fastly/models/waf_firewall_response_data_attributes_all_of.rb +0 -1
  513. data/lib/fastly/models/waf_firewall_version_data_attributes.rb +1 -2
  514. data/lib/fastly/models/waf_rule.rb +0 -1
  515. data/lib/fastly/models/waf_rule_response_data.rb +0 -1
  516. data/lib/fastly/models/waf_tag_attributes.rb +0 -1
  517. data/lib/fastly/models/ws_message_format.rb +228 -0
  518. data/lib/fastly/version.rb +1 -1
  519. data/lib/fastly.rb +65 -5
  520. data/pkg/fastly-4.0.0.gem +0 -0
  521. data/sig.json +1 -0
  522. metadata +137 -15
  523. data/docs/ContentApi.md +0 -52
  524. data/docs/DocsApi.md +0 -123
  525. data/docs/DomainOwnershipsApi.md +0 -47
  526. data/lib/fastly/api/content_api.rb +0 -79
  527. data/lib/fastly/api/docs_api.rb +0 -210
@@ -13,7 +13,7 @@ require 'time'
13
13
 
14
14
  module Fastly
15
15
  class HealthcheckResponse
16
- # How often to run the healthcheck in milliseconds.
16
+ # How often to run the health check in milliseconds.
17
17
  attr_accessor :check_interval
18
18
 
19
19
  # A freeform descriptive note.
@@ -22,6 +22,9 @@ module Fastly
22
22
  # The status code expected from the host.
23
23
  attr_accessor :expected_response
24
24
 
25
+ # Array of custom headers that will be added to the health check probes.
26
+ attr_accessor :headers
27
+
25
28
  # Which host to check.
26
29
  attr_accessor :host
27
30
 
@@ -34,19 +37,19 @@ module Fastly
34
37
  # Which HTTP method to use.
35
38
  attr_accessor :method
36
39
 
37
- # The name of the healthcheck.
40
+ # The name of the health check.
38
41
  attr_accessor :name
39
42
 
40
43
  # The path to check.
41
44
  attr_accessor :path
42
45
 
43
- # How many healthchecks must succeed to be considered healthy.
46
+ # How many health checks must succeed to be considered healthy.
44
47
  attr_accessor :threshold
45
48
 
46
49
  # Timeout in milliseconds.
47
50
  attr_accessor :timeout
48
51
 
49
- # The number of most recent healthcheck queries to keep for this healthcheck.
52
+ # The number of most recent health check queries to keep for this health check.
50
53
  attr_accessor :window
51
54
 
52
55
  attr_accessor :service_id
@@ -68,6 +71,7 @@ module Fastly
68
71
  :'check_interval' => :'check_interval',
69
72
  :'comment' => :'comment',
70
73
  :'expected_response' => :'expected_response',
74
+ :'headers' => :'headers',
71
75
  :'host' => :'host',
72
76
  :'http_version' => :'http_version',
73
77
  :'initial' => :'initial',
@@ -96,6 +100,7 @@ module Fastly
96
100
  :'check_interval' => :'Integer',
97
101
  :'comment' => :'String',
98
102
  :'expected_response' => :'Integer',
103
+ :'headers' => :'Array<String>',
99
104
  :'host' => :'String',
100
105
  :'http_version' => :'String',
101
106
  :'initial' => :'Integer',
@@ -117,8 +122,6 @@ module Fastly
117
122
  def self.fastly_nullable
118
123
  Set.new([
119
124
  :'comment',
120
- :'service_id',
121
- :'version',
122
125
  :'created_at',
123
126
  :'deleted_at',
124
127
  :'updated_at'
@@ -161,6 +164,12 @@ module Fastly
161
164
  self.expected_response = attributes[:'expected_response']
162
165
  end
163
166
 
167
+ if attributes.key?(:'headers')
168
+ if (value = attributes[:'headers']).is_a?(Array)
169
+ self.headers = value
170
+ end
171
+ end
172
+
164
173
  if attributes.key?(:'host')
165
174
  self.host = attributes[:'host']
166
175
  end
@@ -239,6 +248,7 @@ module Fastly
239
248
  check_interval == o.check_interval &&
240
249
  comment == o.comment &&
241
250
  expected_response == o.expected_response &&
251
+ headers == o.headers &&
242
252
  host == o.host &&
243
253
  http_version == o.http_version &&
244
254
  initial == o.initial &&
@@ -264,7 +274,7 @@ module Fastly
264
274
  # Calculates hash code according to all attributes.
265
275
  # @return [Integer] Hash code
266
276
  def hash
267
- [check_interval, comment, expected_response, host, http_version, initial, method, name, path, threshold, timeout, window, service_id, version, created_at, deleted_at, updated_at].hash
277
+ [check_interval, comment, expected_response, headers, host, http_version, initial, method, name, path, threshold, timeout, window, service_id, version, created_at, deleted_at, updated_at].hash
268
278
  end
269
279
 
270
280
  # Builds the object from hash
@@ -45,7 +45,6 @@ module Fastly
45
45
  # List of attributes with nullable: true
46
46
  def self.fastly_nullable
47
47
  Set.new([
48
- :'customer_id',
49
48
  ])
50
49
  end
51
50
 
@@ -61,8 +61,6 @@ module Fastly
61
61
  # List of attributes with nullable: true
62
62
  def self.fastly_nullable
63
63
  Set.new([
64
- :'service_id',
65
- :'version',
66
64
  :'created_at',
67
65
  :'deleted_at',
68
66
  :'updated_at',
@@ -0,0 +1,262 @@
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://developer.fastly.com/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
+ # Payload format for delivering to subscribers of whole HTTP responses (`response` hold mode). One of `body` or `body-bin` must be specified.
16
+ class HttpResponseFormat
17
+ # The HTTP status code.
18
+ attr_accessor :code
19
+
20
+ # The HTTP status string. Defaults to a string appropriate for `code`.
21
+ attr_accessor :reason
22
+
23
+ # A map of arbitrary HTTP response headers to include in the response.
24
+ attr_accessor :headers
25
+
26
+ # The response body as a string.
27
+ attr_accessor :body
28
+
29
+ # The response body as a base64-encoded binary blob.
30
+ attr_accessor :body_bin
31
+
32
+ # Attribute mapping from ruby-style variable name to JSON key.
33
+ def self.attribute_map
34
+ {
35
+ :'code' => :'code',
36
+ :'reason' => :'reason',
37
+ :'headers' => :'headers',
38
+ :'body' => :'body',
39
+ :'body_bin' => :'body-bin'
40
+ }
41
+ end
42
+
43
+ # Returns all the JSON keys this model knows about
44
+ def self.acceptable_attributes
45
+ attribute_map.values
46
+ end
47
+
48
+ # Attribute type mapping.
49
+ def self.fastly_types
50
+ {
51
+ :'code' => :'Integer',
52
+ :'reason' => :'String',
53
+ :'headers' => :'Hash<String, String>',
54
+ :'body' => :'String',
55
+ :'body_bin' => :'String'
56
+ }
57
+ end
58
+
59
+ # List of attributes with nullable: true
60
+ def self.fastly_nullable
61
+ Set.new([
62
+ ])
63
+ end
64
+
65
+ # Initializes the object
66
+ # @param [Hash] attributes Model attributes in the form of hash
67
+ def initialize(attributes = {})
68
+ if (!attributes.is_a?(Hash))
69
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Fastly::HttpResponseFormat` initialize method"
70
+ end
71
+
72
+ # check to see if the attribute exists and convert string to symbol for hash key
73
+ attributes = attributes.each_with_object({}) { |(k, v), h|
74
+ if (!self.class.attribute_map.key?(k.to_sym))
75
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Fastly::HttpResponseFormat`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
76
+ end
77
+ h[k.to_sym] = v
78
+ }
79
+
80
+ if attributes.key?(:'code')
81
+ self.code = attributes[:'code']
82
+ else
83
+ self.code = 200
84
+ end
85
+
86
+ if attributes.key?(:'reason')
87
+ self.reason = attributes[:'reason']
88
+ end
89
+
90
+ if attributes.key?(:'headers')
91
+ if (value = attributes[:'headers']).is_a?(Hash)
92
+ self.headers = value
93
+ end
94
+ end
95
+
96
+ if attributes.key?(:'body')
97
+ self.body = attributes[:'body']
98
+ end
99
+
100
+ if attributes.key?(:'body_bin')
101
+ self.body_bin = attributes[:'body_bin']
102
+ end
103
+ end
104
+
105
+ # Show invalid properties with the reasons. Usually used together with valid?
106
+ # @return Array for valid properties with the reasons
107
+ def list_invalid_properties
108
+ invalid_properties = Array.new
109
+ invalid_properties
110
+ end
111
+
112
+ # Check to see if the all the properties in the model are valid
113
+ # @return true if the model is valid
114
+ def valid?
115
+ true
116
+ end
117
+
118
+ # Checks equality by comparing each attribute.
119
+ # @param [Object] Object to be compared
120
+ def ==(o)
121
+ return true if self.equal?(o)
122
+ self.class == o.class &&
123
+ code == o.code &&
124
+ reason == o.reason &&
125
+ headers == o.headers &&
126
+ body == o.body &&
127
+ body_bin == o.body_bin
128
+ end
129
+
130
+ # @see the `==` method
131
+ # @param [Object] Object to be compared
132
+ def eql?(o)
133
+ self == o
134
+ end
135
+
136
+ # Calculates hash code according to all attributes.
137
+ # @return [Integer] Hash code
138
+ def hash
139
+ [code, reason, headers, body, body_bin].hash
140
+ end
141
+
142
+ # Builds the object from hash
143
+ # @param [Hash] attributes Model attributes in the form of hash
144
+ # @return [Object] Returns the model itself
145
+ def self.build_from_hash(attributes)
146
+ new.build_from_hash(attributes)
147
+ end
148
+
149
+ # Builds the object from hash
150
+ # @param [Hash] attributes Model attributes in the form of hash
151
+ # @return [Object] Returns the model itself
152
+ def build_from_hash(attributes)
153
+ return nil unless attributes.is_a?(Hash)
154
+ self.class.fastly_types.each_pair do |key, type|
155
+ if attributes[self.class.attribute_map[key]].nil? && self.class.fastly_nullable.include?(key)
156
+ self.send("#{key}=", nil)
157
+ elsif type =~ /\AArray<(.*)>/i
158
+ # check to ensure the input is an array given that the attribute
159
+ # is documented as an array but the input is not
160
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
161
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
162
+ end
163
+ elsif !attributes[self.class.attribute_map[key]].nil?
164
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
165
+ end
166
+ end
167
+
168
+ self
169
+ end
170
+
171
+ # Deserializes the data based on type
172
+ # @param string type Data type
173
+ # @param string value Value to be deserialized
174
+ # @return [Object] Deserialized data
175
+ def _deserialize(type, value)
176
+ case type.to_sym
177
+ when :Time
178
+ Time.parse(value)
179
+ when :Date
180
+ Date.parse(value)
181
+ when :String
182
+ value.to_s
183
+ when :Integer
184
+ value.to_i
185
+ when :Float
186
+ value.to_f
187
+ when :Boolean
188
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
189
+ true
190
+ else
191
+ false
192
+ end
193
+ when :Object
194
+ # generic object (usually a Hash), return directly
195
+ value
196
+ when /\AArray<(?<inner_type>.+)>\z/
197
+ inner_type = Regexp.last_match[:inner_type]
198
+ value.map { |v| _deserialize(inner_type, v) }
199
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
200
+ k_type = Regexp.last_match[:k_type]
201
+ v_type = Regexp.last_match[:v_type]
202
+ {}.tap do |hash|
203
+ value.each do |k, v|
204
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
205
+ end
206
+ end
207
+ else # model
208
+ # models (e.g. Pet) or oneOf
209
+ klass = Fastly.const_get(type)
210
+ klass.respond_to?(:fastly_one_of) ? klass.build(value) : klass.build_from_hash(value)
211
+ end
212
+ end
213
+
214
+ # Returns the string representation of the object
215
+ # @return [String] String presentation of the object
216
+ def to_s
217
+ to_hash.to_s
218
+ end
219
+
220
+ # to_body is an alias to to_hash (backward compatibility)
221
+ # @return [Hash] Returns the object in the form of hash
222
+ def to_body
223
+ to_hash
224
+ end
225
+
226
+ # Returns the object in the form of hash
227
+ # @return [Hash] Returns the object in the form of hash
228
+ def to_hash
229
+ hash = {}
230
+ self.class.attribute_map.each_pair do |attr, param|
231
+ value = self.send(attr)
232
+ if value.nil?
233
+ is_nullable = self.class.fastly_nullable.include?(attr)
234
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
235
+ end
236
+
237
+ hash[param] = _to_hash(value)
238
+ end
239
+ hash
240
+ end
241
+
242
+ # Outputs non-array value in the form of hash
243
+ # For object, use to_hash. Otherwise, just return the value
244
+ # @param [Object] value Any valid value
245
+ # @return [Hash] Returns the value in the form of hash
246
+ def _to_hash(value)
247
+ if value.is_a?(Array)
248
+ value.compact.map { |v| _to_hash(v) }
249
+ elsif value.is_a?(Hash)
250
+ {}.tap do |hash|
251
+ value.each { |k, v| hash[k] = _to_hash(v) }
252
+ end
253
+ elsif value.respond_to? :to_hash
254
+ value.to_hash
255
+ else
256
+ value
257
+ end
258
+ end
259
+
260
+ end
261
+
262
+ end
@@ -0,0 +1,228 @@
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://developer.fastly.com/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
+ # Payload format for delivering to subscribers of HTTP streaming response bodies (`stream` hold mode). One of `content` or `content-bin` must be specified.
16
+ class HttpStreamFormat
17
+ # A fragment of body data as a string.
18
+ attr_accessor :content
19
+
20
+ # A fragment of body data as a base64-encoded binary blob.
21
+ attr_accessor :content_bin
22
+
23
+ # Attribute mapping from ruby-style variable name to JSON key.
24
+ def self.attribute_map
25
+ {
26
+ :'content' => :'content',
27
+ :'content_bin' => :'content-bin'
28
+ }
29
+ end
30
+
31
+ # Returns all the JSON keys this model knows about
32
+ def self.acceptable_attributes
33
+ attribute_map.values
34
+ end
35
+
36
+ # Attribute type mapping.
37
+ def self.fastly_types
38
+ {
39
+ :'content' => :'String',
40
+ :'content_bin' => :'String'
41
+ }
42
+ end
43
+
44
+ # List of attributes with nullable: true
45
+ def self.fastly_nullable
46
+ Set.new([
47
+ ])
48
+ end
49
+
50
+ # Initializes the object
51
+ # @param [Hash] attributes Model attributes in the form of hash
52
+ def initialize(attributes = {})
53
+ if (!attributes.is_a?(Hash))
54
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Fastly::HttpStreamFormat` initialize method"
55
+ end
56
+
57
+ # check to see if the attribute exists and convert string to symbol for hash key
58
+ attributes = attributes.each_with_object({}) { |(k, v), h|
59
+ if (!self.class.attribute_map.key?(k.to_sym))
60
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Fastly::HttpStreamFormat`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
61
+ end
62
+ h[k.to_sym] = v
63
+ }
64
+
65
+ if attributes.key?(:'content')
66
+ self.content = attributes[:'content']
67
+ end
68
+
69
+ if attributes.key?(:'content_bin')
70
+ self.content_bin = attributes[:'content_bin']
71
+ end
72
+ end
73
+
74
+ # Show invalid properties with the reasons. Usually used together with valid?
75
+ # @return Array for valid properties with the reasons
76
+ def list_invalid_properties
77
+ invalid_properties = Array.new
78
+ invalid_properties
79
+ end
80
+
81
+ # Check to see if the all the properties in the model are valid
82
+ # @return true if the model is valid
83
+ def valid?
84
+ true
85
+ end
86
+
87
+ # Checks equality by comparing each attribute.
88
+ # @param [Object] Object to be compared
89
+ def ==(o)
90
+ return true if self.equal?(o)
91
+ self.class == o.class &&
92
+ content == o.content &&
93
+ content_bin == o.content_bin
94
+ end
95
+
96
+ # @see the `==` method
97
+ # @param [Object] Object to be compared
98
+ def eql?(o)
99
+ self == o
100
+ end
101
+
102
+ # Calculates hash code according to all attributes.
103
+ # @return [Integer] Hash code
104
+ def hash
105
+ [content, content_bin].hash
106
+ end
107
+
108
+ # Builds the object from hash
109
+ # @param [Hash] attributes Model attributes in the form of hash
110
+ # @return [Object] Returns the model itself
111
+ def self.build_from_hash(attributes)
112
+ new.build_from_hash(attributes)
113
+ end
114
+
115
+ # Builds the object from hash
116
+ # @param [Hash] attributes Model attributes in the form of hash
117
+ # @return [Object] Returns the model itself
118
+ def build_from_hash(attributes)
119
+ return nil unless attributes.is_a?(Hash)
120
+ self.class.fastly_types.each_pair do |key, type|
121
+ if attributes[self.class.attribute_map[key]].nil? && self.class.fastly_nullable.include?(key)
122
+ self.send("#{key}=", nil)
123
+ elsif type =~ /\AArray<(.*)>/i
124
+ # check to ensure the input is an array given that the attribute
125
+ # is documented as an array but the input is not
126
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
127
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
128
+ end
129
+ elsif !attributes[self.class.attribute_map[key]].nil?
130
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
131
+ end
132
+ end
133
+
134
+ self
135
+ end
136
+
137
+ # Deserializes the data based on type
138
+ # @param string type Data type
139
+ # @param string value Value to be deserialized
140
+ # @return [Object] Deserialized data
141
+ def _deserialize(type, value)
142
+ case type.to_sym
143
+ when :Time
144
+ Time.parse(value)
145
+ when :Date
146
+ Date.parse(value)
147
+ when :String
148
+ value.to_s
149
+ when :Integer
150
+ value.to_i
151
+ when :Float
152
+ value.to_f
153
+ when :Boolean
154
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
155
+ true
156
+ else
157
+ false
158
+ end
159
+ when :Object
160
+ # generic object (usually a Hash), return directly
161
+ value
162
+ when /\AArray<(?<inner_type>.+)>\z/
163
+ inner_type = Regexp.last_match[:inner_type]
164
+ value.map { |v| _deserialize(inner_type, v) }
165
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
166
+ k_type = Regexp.last_match[:k_type]
167
+ v_type = Regexp.last_match[:v_type]
168
+ {}.tap do |hash|
169
+ value.each do |k, v|
170
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
171
+ end
172
+ end
173
+ else # model
174
+ # models (e.g. Pet) or oneOf
175
+ klass = Fastly.const_get(type)
176
+ klass.respond_to?(:fastly_one_of) ? klass.build(value) : klass.build_from_hash(value)
177
+ end
178
+ end
179
+
180
+ # Returns the string representation of the object
181
+ # @return [String] String presentation of the object
182
+ def to_s
183
+ to_hash.to_s
184
+ end
185
+
186
+ # to_body is an alias to to_hash (backward compatibility)
187
+ # @return [Hash] Returns the object in the form of hash
188
+ def to_body
189
+ to_hash
190
+ end
191
+
192
+ # Returns the object in the form of hash
193
+ # @return [Hash] Returns the object in the form of hash
194
+ def to_hash
195
+ hash = {}
196
+ self.class.attribute_map.each_pair do |attr, param|
197
+ value = self.send(attr)
198
+ if value.nil?
199
+ is_nullable = self.class.fastly_nullable.include?(attr)
200
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
201
+ end
202
+
203
+ hash[param] = _to_hash(value)
204
+ end
205
+ hash
206
+ end
207
+
208
+ # Outputs non-array value in the form of hash
209
+ # For object, use to_hash. Otherwise, just return the value
210
+ # @param [Object] value Any valid value
211
+ # @return [Hash] Returns the value in the form of hash
212
+ def _to_hash(value)
213
+ if value.is_a?(Array)
214
+ value.compact.map { |v| _to_hash(v) }
215
+ elsif value.is_a?(Hash)
216
+ {}.tap do |hash|
217
+ value.each { |k, v| hash[k] = _to_hash(v) }
218
+ end
219
+ elsif value.respond_to? :to_hash
220
+ value.to_hash
221
+ else
222
+ value
223
+ end
224
+ end
225
+
226
+ end
227
+
228
+ end