fastly 6.0.2 → 7.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (288) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +19 -0
  3. data/Gemfile.lock +1 -1
  4. data/README.md +1 -1
  5. data/docs/CacheSetting.md +2 -2
  6. data/docs/CacheSettingResponse.md +3 -3
  7. data/docs/CacheSettingsApi.md +8 -8
  8. data/docs/DomainApi.md +2 -2
  9. data/docs/GzipResponse.md +1 -1
  10. data/docs/Header.md +0 -2
  11. data/docs/HeaderApi.md +8 -8
  12. data/docs/HeaderResponse.md +3 -3
  13. data/docs/HeaderResponseAdditional.md +11 -0
  14. data/docs/{LoggingAzureblobAllOf.md → LoggingAzureblobAdditional.md} +1 -1
  15. data/docs/LoggingAzureblobApi.md +8 -8
  16. data/docs/LoggingAzureblobResponse.md +8 -8
  17. data/docs/{LoggingBigqueryAllOf.md → LoggingBigqueryAdditional.md} +1 -1
  18. data/docs/LoggingBigqueryApi.md +4 -4
  19. data/docs/LoggingBigqueryResponse.md +2 -2
  20. data/docs/{LoggingCloudfilesAllOf.md → LoggingCloudfilesAdditional.md} +1 -1
  21. data/docs/LoggingCloudfilesApi.md +8 -8
  22. data/docs/LoggingCloudfilesResponse.md +8 -8
  23. data/docs/LoggingCommon.md +0 -1
  24. data/docs/{LoggingPapertrail.md → LoggingCommonResponse.md} +2 -4
  25. data/docs/{LoggingLogshuttle.md → LoggingCommonResponseAllOf.md} +1 -4
  26. data/docs/LoggingCommonResponseAllOf1.md +10 -0
  27. data/docs/{LoggingDatadogAllOf.md → LoggingDatadogAdditional.md} +1 -1
  28. data/docs/LoggingDatadogApi.md +4 -4
  29. data/docs/LoggingDatadogResponse.md +2 -2
  30. data/docs/{LoggingDigitaloceanAllOf.md → LoggingDigitaloceanAdditional.md} +1 -1
  31. data/docs/LoggingDigitaloceanApi.md +8 -8
  32. data/docs/LoggingDigitaloceanResponse.md +8 -8
  33. data/docs/{LoggingElasticsearchAllOf.md → LoggingElasticsearchAdditional.md} +1 -1
  34. data/docs/LoggingElasticsearchApi.md +4 -4
  35. data/docs/LoggingElasticsearchResponse.md +2 -2
  36. data/docs/LoggingFormatVersionInteger.md +10 -0
  37. data/docs/LoggingFormatVersionString.md +10 -0
  38. data/docs/{LoggingFtpAllOf.md → LoggingFtpAdditional.md} +1 -2
  39. data/docs/LoggingFtpApi.md +12 -12
  40. data/docs/LoggingFtpResponse.md +9 -9
  41. data/docs/{LoggingFormatVersion.md → LoggingFtpResponseAllOf.md} +2 -1
  42. data/docs/{LoggingGcsAllOf.md → LoggingGcsAdditional.md} +1 -1
  43. data/docs/LoggingGcsApi.md +8 -8
  44. data/docs/LoggingGcsResponse.md +8 -8
  45. data/docs/LoggingGenericCommon.md +0 -2
  46. data/docs/LoggingGenericCommonResponse.md +14 -0
  47. data/docs/LoggingGenericCommonResponseAllOf.md +12 -0
  48. data/docs/LoggingGenericCommonResponseAllOf1.md +11 -0
  49. data/docs/{LoggingGooglePubsubAllOf.md → LoggingGooglePubsubAdditional.md} +1 -1
  50. data/docs/LoggingGooglePubsubResponse.md +2 -2
  51. data/docs/{LoggingHerokuAllOf.md → LoggingHerokuAdditional.md} +1 -1
  52. data/docs/LoggingHerokuApi.md +4 -4
  53. data/docs/LoggingHerokuResponse.md +2 -2
  54. data/docs/{LoggingHoneycombAllOf.md → LoggingHoneycombAdditional.md} +1 -1
  55. data/docs/LoggingHoneycombApi.md +8 -8
  56. data/docs/LoggingHoneycombResponse.md +2 -2
  57. data/docs/{LoggingHttpsAllOf.md → LoggingHttpsAdditional.md} +1 -1
  58. data/docs/LoggingHttpsApi.md +4 -4
  59. data/docs/LoggingHttpsResponse.md +2 -2
  60. data/docs/{LoggingKafkaAllOf.md → LoggingKafkaAdditional.md} +1 -1
  61. data/docs/LoggingKafkaApi.md +4 -4
  62. data/docs/LoggingKafkaResponse.md +6 -6
  63. data/docs/{LoggingKafka.md → LoggingKafkaResponsePost.md} +7 -2
  64. data/docs/{LoggingKinesis.md → LoggingKinesisAdditional.md} +1 -2
  65. data/docs/LoggingKinesisApi.md +2 -2
  66. data/docs/LoggingKinesisResponse.md +2 -2
  67. data/docs/{LoggingLogentriesAllOf.md → LoggingLogentriesAdditional.md} +1 -1
  68. data/docs/LoggingLogentriesApi.md +4 -4
  69. data/docs/LoggingLogentriesResponse.md +2 -2
  70. data/docs/{LoggingLogglyAllOf.md → LoggingLogglyAdditional.md} +1 -1
  71. data/docs/LoggingLogglyApi.md +4 -4
  72. data/docs/LoggingLogglyResponse.md +2 -2
  73. data/docs/{LoggingLogshuttleAllOf.md → LoggingLogshuttleAdditional.md} +1 -1
  74. data/docs/LoggingLogshuttleApi.md +4 -4
  75. data/docs/LoggingLogshuttleResponse.md +2 -2
  76. data/docs/{LoggingNewrelicAllOf.md → LoggingNewrelicAdditional.md} +1 -1
  77. data/docs/LoggingNewrelicApi.md +4 -4
  78. data/docs/LoggingNewrelicResponse.md +2 -2
  79. data/docs/{LoggingOpenstackAllOf.md → LoggingOpenstackAdditional.md} +1 -1
  80. data/docs/LoggingOpenstackApi.md +8 -8
  81. data/docs/LoggingOpenstackResponse.md +8 -8
  82. data/docs/LoggingPapertrailApi.md +4 -4
  83. data/docs/LoggingPapertrailResponse.md +2 -2
  84. data/docs/LoggingPubsubApi.md +4 -4
  85. data/docs/{LoggingS3AllOf.md → LoggingS3Additional.md} +1 -1
  86. data/docs/LoggingS3Api.md +8 -8
  87. data/docs/LoggingS3Response.md +8 -8
  88. data/docs/{LoggingScalyrAllOf.md → LoggingScalyrAdditional.md} +1 -1
  89. data/docs/LoggingScalyrApi.md +4 -4
  90. data/docs/LoggingScalyrResponse.md +2 -2
  91. data/docs/{LoggingSftpAllOf.md → LoggingSftpAdditional.md} +1 -2
  92. data/docs/LoggingSftpApi.md +8 -8
  93. data/docs/LoggingSftpResponse.md +10 -10
  94. data/docs/LoggingSftpResponseAllOf.md +13 -0
  95. data/docs/{LoggingSplunkAllOf.md → LoggingSplunkAdditional.md} +1 -1
  96. data/docs/LoggingSplunkApi.md +4 -4
  97. data/docs/LoggingSplunkResponse.md +2 -2
  98. data/docs/{LoggingSumologicAllOf.md → LoggingSumologicAdditional.md} +1 -1
  99. data/docs/LoggingSumologicApi.md +4 -4
  100. data/docs/LoggingSumologicResponse.md +2 -2
  101. data/docs/{LoggingSyslogAllOf.md → LoggingSyslogAdditional.md} +1 -1
  102. data/docs/LoggingSyslogApi.md +4 -4
  103. data/docs/LoggingSyslogResponse.md +2 -2
  104. data/docs/{PoolAllOf.md → PoolAdditional.md} +1 -6
  105. data/docs/PoolApi.md +46 -22
  106. data/docs/PoolResponse.md +12 -11
  107. data/docs/PoolResponseAllOf.md +1 -1
  108. data/docs/PoolResponseCommon.md +15 -0
  109. data/docs/{Pool.md → PoolResponsePost.md} +14 -7
  110. data/docs/PoolResponsePostAllOf.md +10 -0
  111. data/docs/RequestSettingsAdditional.md +15 -0
  112. data/docs/RequestSettingsApi.md +10 -10
  113. data/docs/RequestSettingsResponse.md +11 -11
  114. data/docs/RequestSettingsResponseAllOf.md +15 -0
  115. data/docs/ResponseObject.md +1 -1
  116. data/docs/ResponseObjectResponse.md +2 -2
  117. data/docs/ServiceIdAndVersionString.md +11 -0
  118. data/docs/TlsCommonResponse.md +14 -0
  119. data/docs/{TlsCommon.md → TlsCommonResponseAllOf.md} +1 -2
  120. data/docs/TlsCommonResponseAllOf1.md +10 -0
  121. data/lib/fastly/api/cache_settings_api.rb +8 -8
  122. data/lib/fastly/api/domain_api.rb +3 -3
  123. data/lib/fastly/api/header_api.rb +12 -12
  124. data/lib/fastly/api/logging_azureblob_api.rb +12 -12
  125. data/lib/fastly/api/logging_bigquery_api.rb +6 -6
  126. data/lib/fastly/api/logging_cloudfiles_api.rb +12 -12
  127. data/lib/fastly/api/logging_datadog_api.rb +6 -6
  128. data/lib/fastly/api/logging_digitalocean_api.rb +12 -12
  129. data/lib/fastly/api/logging_elasticsearch_api.rb +6 -6
  130. data/lib/fastly/api/logging_ftp_api.rb +18 -18
  131. data/lib/fastly/api/logging_gcs_api.rb +12 -12
  132. data/lib/fastly/api/logging_heroku_api.rb +6 -6
  133. data/lib/fastly/api/logging_honeycomb_api.rb +12 -12
  134. data/lib/fastly/api/logging_https_api.rb +6 -6
  135. data/lib/fastly/api/logging_kafka_api.rb +6 -6
  136. data/lib/fastly/api/logging_kinesis_api.rb +7 -3
  137. data/lib/fastly/api/logging_logentries_api.rb +6 -6
  138. data/lib/fastly/api/logging_loggly_api.rb +6 -6
  139. data/lib/fastly/api/logging_logshuttle_api.rb +6 -6
  140. data/lib/fastly/api/logging_newrelic_api.rb +6 -6
  141. data/lib/fastly/api/logging_openstack_api.rb +12 -12
  142. data/lib/fastly/api/logging_papertrail_api.rb +6 -6
  143. data/lib/fastly/api/logging_pubsub_api.rb +6 -6
  144. data/lib/fastly/api/logging_s3_api.rb +12 -12
  145. data/lib/fastly/api/logging_scalyr_api.rb +6 -6
  146. data/lib/fastly/api/logging_sftp_api.rb +12 -12
  147. data/lib/fastly/api/logging_splunk_api.rb +6 -6
  148. data/lib/fastly/api/logging_sumologic_api.rb +6 -6
  149. data/lib/fastly/api/logging_syslog_api.rb +6 -6
  150. data/lib/fastly/api/pool_api.rb +77 -41
  151. data/lib/fastly/api/request_settings_api.rb +15 -15
  152. data/lib/fastly/models/cache_setting.rb +2 -2
  153. data/lib/fastly/models/cache_setting_response.rb +4 -4
  154. data/lib/fastly/models/gzip_response.rb +2 -2
  155. data/lib/fastly/models/header.rb +1 -23
  156. data/lib/fastly/models/header_response.rb +26 -25
  157. data/lib/fastly/models/header_response_additional.rb +229 -0
  158. data/lib/fastly/models/{logging_azureblob_all_of.rb → logging_azureblob_additional.rb} +3 -3
  159. data/lib/fastly/models/logging_azureblob_response.rb +82 -80
  160. data/lib/fastly/models/{logging_bigquery_all_of.rb → logging_bigquery_additional.rb} +3 -3
  161. data/lib/fastly/models/logging_bigquery_response.rb +20 -18
  162. data/lib/fastly/models/{logging_cloudfiles_all_of.rb → logging_cloudfiles_additional.rb} +3 -3
  163. data/lib/fastly/models/logging_cloudfiles_response.rb +83 -81
  164. data/lib/fastly/models/logging_common.rb +1 -25
  165. data/lib/fastly/models/{logging_loggly.rb → logging_common_response.rb} +17 -27
  166. data/lib/fastly/models/{logging_logshuttle.rb → logging_common_response_all_of.rb} +7 -60
  167. data/lib/fastly/models/logging_common_response_all_of1.rb +253 -0
  168. data/lib/fastly/models/{logging_datadog_all_of.rb → logging_datadog_additional.rb} +3 -3
  169. data/lib/fastly/models/logging_datadog_response.rb +19 -18
  170. data/lib/fastly/models/{logging_digitalocean_all_of.rb → logging_digitalocean_additional.rb} +3 -3
  171. data/lib/fastly/models/logging_digitalocean_response.rb +82 -80
  172. data/lib/fastly/models/{logging_elasticsearch_all_of.rb → logging_elasticsearch_additional.rb} +3 -3
  173. data/lib/fastly/models/logging_elasticsearch_response.rb +21 -18
  174. data/lib/fastly/models/logging_format_version_integer.rb +253 -0
  175. data/lib/fastly/models/logging_format_version_string.rb +253 -0
  176. data/lib/fastly/models/{logging_ftp_all_of.rb → logging_ftp_additional.rb} +4 -16
  177. data/lib/fastly/models/logging_ftp_response.rb +88 -85
  178. data/lib/fastly/models/logging_ftp_response_all_of.rb +219 -0
  179. data/lib/fastly/models/{logging_gcs_all_of.rb → logging_gcs_additional.rb} +3 -3
  180. data/lib/fastly/models/logging_gcs_response.rb +80 -77
  181. data/lib/fastly/models/logging_generic_common.rb +1 -25
  182. data/lib/fastly/models/{logging_sumologic.rb → logging_generic_common_response.rb} +60 -80
  183. data/lib/fastly/models/logging_generic_common_response_all_of.rb +286 -0
  184. data/lib/fastly/models/logging_generic_common_response_all_of1.rb +231 -0
  185. data/lib/fastly/models/{logging_google_pubsub_all_of.rb → logging_google_pubsub_additional.rb} +3 -3
  186. data/lib/fastly/models/logging_google_pubsub_response.rb +20 -18
  187. data/lib/fastly/models/{logging_heroku_all_of.rb → logging_heroku_additional.rb} +3 -3
  188. data/lib/fastly/models/logging_heroku_response.rb +19 -18
  189. data/lib/fastly/models/{logging_honeycomb_all_of.rb → logging_honeycomb_additional.rb} +3 -3
  190. data/lib/fastly/models/logging_honeycomb_response.rb +19 -18
  191. data/lib/fastly/models/{logging_https_all_of.rb → logging_https_additional.rb} +3 -3
  192. data/lib/fastly/models/logging_https_response.rb +21 -18
  193. data/lib/fastly/models/{logging_kafka_all_of.rb → logging_kafka_additional.rb} +3 -3
  194. data/lib/fastly/models/logging_kafka_response.rb +71 -69
  195. data/lib/fastly/models/{logging_kafka.rb → logging_kafka_response_post.rb} +72 -18
  196. data/lib/fastly/models/{logging_kinesis.rb → logging_kinesis_additional.rb} +4 -15
  197. data/lib/fastly/models/logging_kinesis_response.rb +51 -15
  198. data/lib/fastly/models/{logging_logentries_all_of.rb → logging_logentries_additional.rb} +3 -3
  199. data/lib/fastly/models/logging_logentries_response.rb +19 -18
  200. data/lib/fastly/models/{logging_loggly_all_of.rb → logging_loggly_additional.rb} +3 -3
  201. data/lib/fastly/models/logging_loggly_response.rb +19 -18
  202. data/lib/fastly/models/{logging_logshuttle_all_of.rb → logging_logshuttle_additional.rb} +3 -3
  203. data/lib/fastly/models/logging_logshuttle_response.rb +19 -18
  204. data/lib/fastly/models/{logging_newrelic_all_of.rb → logging_newrelic_additional.rb} +3 -3
  205. data/lib/fastly/models/logging_newrelic_response.rb +19 -18
  206. data/lib/fastly/models/{logging_openstack_all_of.rb → logging_openstack_additional.rb} +3 -3
  207. data/lib/fastly/models/logging_openstack_response.rb +82 -80
  208. data/lib/fastly/models/logging_papertrail_response.rb +19 -18
  209. data/lib/fastly/models/{logging_s3_all_of.rb → logging_s3_additional.rb} +3 -3
  210. data/lib/fastly/models/logging_s3_response.rb +84 -82
  211. data/lib/fastly/models/{logging_scalyr_all_of.rb → logging_scalyr_additional.rb} +3 -3
  212. data/lib/fastly/models/logging_scalyr_response.rb +19 -18
  213. data/lib/fastly/models/{logging_sftp_all_of.rb → logging_sftp_additional.rb} +4 -16
  214. data/lib/fastly/models/logging_sftp_response.rb +97 -94
  215. data/lib/fastly/models/{domain_check_item.rb → logging_sftp_response_all_of.rb} +44 -40
  216. data/lib/fastly/models/{logging_splunk_all_of.rb → logging_splunk_additional.rb} +3 -3
  217. data/lib/fastly/models/logging_splunk_response.rb +21 -18
  218. data/lib/fastly/models/{logging_sumologic_all_of.rb → logging_sumologic_additional.rb} +3 -3
  219. data/lib/fastly/models/logging_sumologic_response.rb +19 -18
  220. data/lib/fastly/models/{logging_syslog_all_of.rb → logging_syslog_additional.rb} +3 -3
  221. data/lib/fastly/models/logging_syslog_response.rb +21 -18
  222. data/lib/fastly/models/{pool_all_of.rb → pool_additional.rb} +4 -83
  223. data/lib/fastly/models/pool_response.rb +113 -125
  224. data/lib/fastly/models/pool_response_all_of.rb +10 -7
  225. data/lib/fastly/models/pool_response_common.rb +269 -0
  226. data/lib/fastly/models/{pool.rb → pool_response_post.rb} +142 -92
  227. data/lib/fastly/models/pool_response_post_all_of.rb +219 -0
  228. data/lib/fastly/models/{request_settings.rb → request_settings_additional.rb} +4 -64
  229. data/lib/fastly/models/request_settings_response.rb +96 -95
  230. data/lib/fastly/models/request_settings_response_all_of.rb +267 -0
  231. data/lib/fastly/models/response_object.rb +2 -2
  232. data/lib/fastly/models/response_object_response.rb +4 -4
  233. data/lib/fastly/models/{tls_subscription_response_data_all_of.rb → service_id_and_version_string.rb} +16 -16
  234. data/lib/fastly/models/{tls_common.rb → tls_common_response.rb} +15 -7
  235. data/lib/fastly/models/tls_common_response_all_of.rb +259 -0
  236. data/lib/fastly/models/tls_common_response_all_of1.rb +253 -0
  237. data/lib/fastly/models/tls_subscription_response_data.rb +0 -7
  238. data/lib/fastly/version.rb +1 -1
  239. data/lib/fastly.rb +47 -57
  240. data/sig.json +1 -1
  241. metadata +96 -116
  242. data/docs/DomainCheckItem.md +0 -11
  243. data/docs/LoggingAzureblob.md +0 -25
  244. data/docs/LoggingBigquery.md +0 -21
  245. data/docs/LoggingCloudfiles.md +0 -25
  246. data/docs/LoggingDatadog.md +0 -16
  247. data/docs/LoggingDigitalocean.md +0 -25
  248. data/docs/LoggingElasticsearch.md +0 -25
  249. data/docs/LoggingFtp.md +0 -27
  250. data/docs/LoggingGcs.md +0 -26
  251. data/docs/LoggingGooglePubsub.md +0 -19
  252. data/docs/LoggingHeroku.md +0 -16
  253. data/docs/LoggingHoneycomb.md +0 -16
  254. data/docs/LoggingHttps.md +0 -27
  255. data/docs/LoggingLogentries.md +0 -18
  256. data/docs/LoggingLoggly.md +0 -15
  257. data/docs/LoggingNewrelic.md +0 -16
  258. data/docs/LoggingOpenstack.md +0 -25
  259. data/docs/LoggingS3.md +0 -30
  260. data/docs/LoggingScalyr.md +0 -17
  261. data/docs/LoggingSftp.md +0 -27
  262. data/docs/LoggingSplunk.md +0 -23
  263. data/docs/LoggingSumologic.md +0 -16
  264. data/docs/LoggingSyslog.md +0 -25
  265. data/docs/RequestSettings.md +0 -21
  266. data/docs/TlsSubscriptionResponseDataAllOf.md +0 -11
  267. data/lib/fastly/models/logging_azureblob.rb +0 -480
  268. data/lib/fastly/models/logging_bigquery.rb +0 -387
  269. data/lib/fastly/models/logging_cloudfiles.rb +0 -478
  270. data/lib/fastly/models/logging_datadog.rb +0 -351
  271. data/lib/fastly/models/logging_digitalocean.rb +0 -467
  272. data/lib/fastly/models/logging_elasticsearch.rb +0 -446
  273. data/lib/fastly/models/logging_format_version.rb +0 -35
  274. data/lib/fastly/models/logging_ftp.rb +0 -484
  275. data/lib/fastly/models/logging_gcs.rb +0 -474
  276. data/lib/fastly/models/logging_google_pubsub.rb +0 -368
  277. data/lib/fastly/models/logging_heroku.rb +0 -337
  278. data/lib/fastly/models/logging_honeycomb.rb +0 -335
  279. data/lib/fastly/models/logging_https.rb +0 -501
  280. data/lib/fastly/models/logging_logentries.rb +0 -372
  281. data/lib/fastly/models/logging_newrelic.rb +0 -351
  282. data/lib/fastly/models/logging_openstack.rb +0 -465
  283. data/lib/fastly/models/logging_papertrail.rb +0 -339
  284. data/lib/fastly/models/logging_s3.rb +0 -527
  285. data/lib/fastly/models/logging_scalyr.rb +0 -363
  286. data/lib/fastly/models/logging_sftp.rb +0 -491
  287. data/lib/fastly/models/logging_splunk.rb +0 -426
  288. data/lib/fastly/models/logging_syslog.rb +0 -449
@@ -1,527 +0,0 @@
1
- =begin
2
- #Fastly API
3
-
4
- #Via the Fastly API you can perform any of the operations that are possible within the management console, including creating services, domains, and backends, configuring rules or uploading your own application code, as well as account operations such as user administration and billing reports. The API is organized into collections of endpoints that allow manipulation of objects related to Fastly services and accounts. For the most accurate and up-to-date API reference content, visit our [Developer Hub](https://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
- class LoggingS3
16
- # The name for the real-time logging configuration.
17
- attr_accessor :name
18
-
19
- # Where in the generated VCL the logging call should be placed. If not set, endpoints with `format_version` of 2 are placed in `vcl_log` and those with `format_version` of 1 are placed in `vcl_deliver`.
20
- attr_accessor :placement
21
-
22
- # The version of the custom logging format used for the configured endpoint. The logging call gets placed by default in `vcl_log` if `format_version` is set to `2` and in `vcl_deliver` if `format_version` is set to `1`.
23
- attr_accessor :format_version
24
-
25
- # The name of an existing condition in the configured endpoint, or leave blank to always execute.
26
- attr_accessor :response_condition
27
-
28
- # A Fastly [log format string](https://docs.fastly.com/en/guides/custom-log-formats).
29
- attr_accessor :format
30
-
31
- # How the message should be formatted.
32
- attr_accessor :message_type
33
-
34
- # A timestamp format
35
- attr_accessor :timestamp_format
36
-
37
- # How frequently log files are finalized so they can be available for reading (in seconds).
38
- attr_accessor :period
39
-
40
- # The level of gzip encoding when sending logs (default `0`, no compression). Specifying both `compression_codec` and `gzip_level` in the same API request will result in an error.
41
- attr_accessor :gzip_level
42
-
43
- # The codec used for compressing your logs. Valid values are `zstd`, `snappy`, and `gzip`. Specifying both `compression_codec` and `gzip_level` in the same API request will result in an error.
44
- attr_accessor :compression_codec
45
-
46
- # The access key for your S3 account. Not required if `iam_role` is provided.
47
- attr_accessor :access_key
48
-
49
- # The access control list (ACL) specific request header. See the AWS documentation for [Access Control List (ACL) Specific Request Headers](https://docs.aws.amazon.com/AmazonS3/latest/API/mpUploadInitiate.html#initiate-mpu-acl-specific-request-headers) for more information.
50
- attr_accessor :acl
51
-
52
- # The bucket name for S3 account.
53
- attr_accessor :bucket_name
54
-
55
- # The domain of the Amazon S3 endpoint.
56
- attr_accessor :domain
57
-
58
- # The Amazon Resource Name (ARN) for the IAM role granting Fastly access to S3. Not required if `access_key` and `secret_key` are provided.
59
- attr_accessor :iam_role
60
-
61
- # The path to upload logs to.
62
- attr_accessor :path
63
-
64
- # A PGP public key that Fastly will use to encrypt your log files before writing them to disk.
65
- attr_accessor :public_key
66
-
67
- # The S3 redundancy level.
68
- attr_accessor :redundancy
69
-
70
- # The secret key for your S3 account. Not required if `iam_role` is provided.
71
- attr_accessor :secret_key
72
-
73
- # Optional server-side KMS Key Id. Must be set if `server_side_encryption` is set to `aws:kms` or `AES256`.
74
- attr_accessor :server_side_encryption_kms_key_id
75
-
76
- # Set this to `AES256` or `aws:kms` to enable S3 Server Side Encryption.
77
- attr_accessor :server_side_encryption
78
-
79
- class EnumAttributeValidator
80
- attr_reader :datatype
81
- attr_reader :allowable_values
82
-
83
- def initialize(datatype, allowable_values)
84
- @allowable_values = allowable_values.map do |value|
85
- case datatype.to_s
86
- when /Integer/i
87
- value.to_i
88
- when /Float/i
89
- value.to_f
90
- else
91
- value
92
- end
93
- end
94
- end
95
-
96
- def valid?(value)
97
- !value || allowable_values.include?(value)
98
- end
99
- end
100
-
101
- # Attribute mapping from ruby-style variable name to JSON key.
102
- def self.attribute_map
103
- {
104
- :'name' => :'name',
105
- :'placement' => :'placement',
106
- :'format_version' => :'format_version',
107
- :'response_condition' => :'response_condition',
108
- :'format' => :'format',
109
- :'message_type' => :'message_type',
110
- :'timestamp_format' => :'timestamp_format',
111
- :'period' => :'period',
112
- :'gzip_level' => :'gzip_level',
113
- :'compression_codec' => :'compression_codec',
114
- :'access_key' => :'access_key',
115
- :'acl' => :'acl',
116
- :'bucket_name' => :'bucket_name',
117
- :'domain' => :'domain',
118
- :'iam_role' => :'iam_role',
119
- :'path' => :'path',
120
- :'public_key' => :'public_key',
121
- :'redundancy' => :'redundancy',
122
- :'secret_key' => :'secret_key',
123
- :'server_side_encryption_kms_key_id' => :'server_side_encryption_kms_key_id',
124
- :'server_side_encryption' => :'server_side_encryption'
125
- }
126
- end
127
-
128
- # Returns all the JSON keys this model knows about
129
- def self.acceptable_attributes
130
- attribute_map.values
131
- end
132
-
133
- # Attribute type mapping.
134
- def self.fastly_types
135
- {
136
- :'name' => :'String',
137
- :'placement' => :'String',
138
- :'format_version' => :'Integer',
139
- :'response_condition' => :'String',
140
- :'format' => :'String',
141
- :'message_type' => :'String',
142
- :'timestamp_format' => :'String',
143
- :'period' => :'Integer',
144
- :'gzip_level' => :'Integer',
145
- :'compression_codec' => :'String',
146
- :'access_key' => :'String',
147
- :'acl' => :'String',
148
- :'bucket_name' => :'String',
149
- :'domain' => :'String',
150
- :'iam_role' => :'String',
151
- :'path' => :'String',
152
- :'public_key' => :'String',
153
- :'redundancy' => :'String',
154
- :'secret_key' => :'String',
155
- :'server_side_encryption_kms_key_id' => :'String',
156
- :'server_side_encryption' => :'String'
157
- }
158
- end
159
-
160
- # List of attributes with nullable: true
161
- def self.fastly_nullable
162
- Set.new([
163
- :'placement',
164
- :'response_condition',
165
- :'timestamp_format',
166
- :'access_key',
167
- :'iam_role',
168
- :'path',
169
- :'public_key',
170
- :'redundancy',
171
- :'secret_key',
172
- :'server_side_encryption_kms_key_id',
173
- :'server_side_encryption'
174
- ])
175
- end
176
-
177
- # List of class defined in allOf (OpenAPI v3)
178
- def self.fastly_all_of
179
- [
180
- :'LoggingCommon',
181
- :'LoggingGenericCommon',
182
- :'LoggingS3AllOf'
183
- ]
184
- end
185
-
186
- # Initializes the object
187
- # @param [Hash] attributes Model attributes in the form of hash
188
- def initialize(attributes = {})
189
- if (!attributes.is_a?(Hash))
190
- fail ArgumentError, "The input argument (attributes) must be a hash in `Fastly::LoggingS3` initialize method"
191
- end
192
-
193
- # check to see if the attribute exists and convert string to symbol for hash key
194
- attributes = attributes.each_with_object({}) { |(k, v), h|
195
- if (!self.class.attribute_map.key?(k.to_sym))
196
- fail ArgumentError, "`#{k}` is not a valid attribute in `Fastly::LoggingS3`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
197
- end
198
- h[k.to_sym] = v
199
- }
200
-
201
- if attributes.key?(:'name')
202
- self.name = attributes[:'name']
203
- end
204
-
205
- if attributes.key?(:'placement')
206
- self.placement = attributes[:'placement']
207
- end
208
-
209
- if attributes.key?(:'format_version')
210
- self.format_version = attributes[:'format_version']
211
- else
212
- self.format_version = FORMAT_VERSION::v2
213
- end
214
-
215
- if attributes.key?(:'response_condition')
216
- self.response_condition = attributes[:'response_condition']
217
- end
218
-
219
- if attributes.key?(:'format')
220
- self.format = attributes[:'format']
221
- else
222
- self.format = '%h %l %u %t \"%r\" %>s %b'
223
- end
224
-
225
- if attributes.key?(:'message_type')
226
- self.message_type = attributes[:'message_type']
227
- else
228
- self.message_type = 'classic'
229
- end
230
-
231
- if attributes.key?(:'timestamp_format')
232
- self.timestamp_format = attributes[:'timestamp_format']
233
- end
234
-
235
- if attributes.key?(:'period')
236
- self.period = attributes[:'period']
237
- else
238
- self.period = 3600
239
- end
240
-
241
- if attributes.key?(:'gzip_level')
242
- self.gzip_level = attributes[:'gzip_level']
243
- else
244
- self.gzip_level = 0
245
- end
246
-
247
- if attributes.key?(:'compression_codec')
248
- self.compression_codec = attributes[:'compression_codec']
249
- end
250
-
251
- if attributes.key?(:'access_key')
252
- self.access_key = attributes[:'access_key']
253
- end
254
-
255
- if attributes.key?(:'acl')
256
- self.acl = attributes[:'acl']
257
- end
258
-
259
- if attributes.key?(:'bucket_name')
260
- self.bucket_name = attributes[:'bucket_name']
261
- end
262
-
263
- if attributes.key?(:'domain')
264
- self.domain = attributes[:'domain']
265
- end
266
-
267
- if attributes.key?(:'iam_role')
268
- self.iam_role = attributes[:'iam_role']
269
- end
270
-
271
- if attributes.key?(:'path')
272
- self.path = attributes[:'path']
273
- else
274
- self.path = 'null'
275
- end
276
-
277
- if attributes.key?(:'public_key')
278
- self.public_key = attributes[:'public_key']
279
- else
280
- self.public_key = 'null'
281
- end
282
-
283
- if attributes.key?(:'redundancy')
284
- self.redundancy = attributes[:'redundancy']
285
- else
286
- self.redundancy = 'null'
287
- end
288
-
289
- if attributes.key?(:'secret_key')
290
- self.secret_key = attributes[:'secret_key']
291
- end
292
-
293
- if attributes.key?(:'server_side_encryption_kms_key_id')
294
- self.server_side_encryption_kms_key_id = attributes[:'server_side_encryption_kms_key_id']
295
- else
296
- self.server_side_encryption_kms_key_id = 'null'
297
- end
298
-
299
- if attributes.key?(:'server_side_encryption')
300
- self.server_side_encryption = attributes[:'server_side_encryption']
301
- else
302
- self.server_side_encryption = 'null'
303
- end
304
- end
305
-
306
- # Show invalid properties with the reasons. Usually used together with valid?
307
- # @return Array for valid properties with the reasons
308
- def list_invalid_properties
309
- invalid_properties = Array.new
310
- invalid_properties
311
- end
312
-
313
- # Check to see if the all the properties in the model are valid
314
- # @return true if the model is valid
315
- def valid?
316
- placement_validator = EnumAttributeValidator.new('String', ["none", "waf_debug", "null"])
317
- return false unless placement_validator.valid?(@placement)
318
- format_version_validator = EnumAttributeValidator.new('Integer', [1, 2])
319
- return false unless format_version_validator.valid?(@format_version)
320
- message_type_validator = EnumAttributeValidator.new('String', ["classic", "loggly", "logplex", "blank"])
321
- return false unless message_type_validator.valid?(@message_type)
322
- compression_codec_validator = EnumAttributeValidator.new('String', ["zstd", "snappy", "gzip"])
323
- return false unless compression_codec_validator.valid?(@compression_codec)
324
- true
325
- end
326
-
327
- # Custom attribute writer method checking allowed values (enum).
328
- # @param [Object] placement Object to be assigned
329
- def placement=(placement)
330
- validator = EnumAttributeValidator.new('String', ["none", "waf_debug", "null"])
331
- unless validator.valid?(placement)
332
- fail ArgumentError, "invalid value for \"placement\", must be one of #{validator.allowable_values}."
333
- end
334
- @placement = placement
335
- end
336
-
337
- # Custom attribute writer method checking allowed values (enum).
338
- # @param [Object] format_version Object to be assigned
339
- def format_version=(format_version)
340
- validator = EnumAttributeValidator.new('Integer', [1, 2])
341
- unless validator.valid?(format_version)
342
- fail ArgumentError, "invalid value for \"format_version\", must be one of #{validator.allowable_values}."
343
- end
344
- @format_version = format_version
345
- end
346
-
347
- # Custom attribute writer method checking allowed values (enum).
348
- # @param [Object] message_type Object to be assigned
349
- def message_type=(message_type)
350
- validator = EnumAttributeValidator.new('String', ["classic", "loggly", "logplex", "blank"])
351
- unless validator.valid?(message_type)
352
- fail ArgumentError, "invalid value for \"message_type\", must be one of #{validator.allowable_values}."
353
- end
354
- @message_type = message_type
355
- end
356
-
357
- # Custom attribute writer method checking allowed values (enum).
358
- # @param [Object] compression_codec Object to be assigned
359
- def compression_codec=(compression_codec)
360
- validator = EnumAttributeValidator.new('String', ["zstd", "snappy", "gzip"])
361
- unless validator.valid?(compression_codec)
362
- fail ArgumentError, "invalid value for \"compression_codec\", must be one of #{validator.allowable_values}."
363
- end
364
- @compression_codec = compression_codec
365
- end
366
-
367
- # Checks equality by comparing each attribute.
368
- # @param [Object] Object to be compared
369
- def ==(o)
370
- return true if self.equal?(o)
371
- self.class == o.class &&
372
- name == o.name &&
373
- placement == o.placement &&
374
- format_version == o.format_version &&
375
- response_condition == o.response_condition &&
376
- format == o.format &&
377
- message_type == o.message_type &&
378
- timestamp_format == o.timestamp_format &&
379
- period == o.period &&
380
- gzip_level == o.gzip_level &&
381
- compression_codec == o.compression_codec &&
382
- access_key == o.access_key &&
383
- acl == o.acl &&
384
- bucket_name == o.bucket_name &&
385
- domain == o.domain &&
386
- iam_role == o.iam_role &&
387
- path == o.path &&
388
- public_key == o.public_key &&
389
- redundancy == o.redundancy &&
390
- secret_key == o.secret_key &&
391
- server_side_encryption_kms_key_id == o.server_side_encryption_kms_key_id &&
392
- server_side_encryption == o.server_side_encryption
393
- end
394
-
395
- # @see the `==` method
396
- # @param [Object] Object to be compared
397
- def eql?(o)
398
- self == o
399
- end
400
-
401
- # Calculates hash code according to all attributes.
402
- # @return [Integer] Hash code
403
- def hash
404
- [name, placement, format_version, response_condition, format, message_type, timestamp_format, period, gzip_level, compression_codec, access_key, acl, bucket_name, domain, iam_role, path, public_key, redundancy, secret_key, server_side_encryption_kms_key_id, server_side_encryption].hash
405
- end
406
-
407
- # Builds the object from hash
408
- # @param [Hash] attributes Model attributes in the form of hash
409
- # @return [Object] Returns the model itself
410
- def self.build_from_hash(attributes)
411
- new.build_from_hash(attributes)
412
- end
413
-
414
- # Builds the object from hash
415
- # @param [Hash] attributes Model attributes in the form of hash
416
- # @return [Object] Returns the model itself
417
- def build_from_hash(attributes)
418
- return nil unless attributes.is_a?(Hash)
419
- self.class.fastly_types.each_pair do |key, type|
420
- if attributes[self.class.attribute_map[key]].nil? && self.class.fastly_nullable.include?(key)
421
- self.send("#{key}=", nil)
422
- elsif type =~ /\AArray<(.*)>/i
423
- # check to ensure the input is an array given that the attribute
424
- # is documented as an array but the input is not
425
- if attributes[self.class.attribute_map[key]].is_a?(Array)
426
- self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
427
- end
428
- elsif !attributes[self.class.attribute_map[key]].nil?
429
- self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
430
- end
431
- end
432
-
433
- self
434
- end
435
-
436
- # Deserializes the data based on type
437
- # @param string type Data type
438
- # @param string value Value to be deserialized
439
- # @return [Object] Deserialized data
440
- def _deserialize(type, value)
441
- case type.to_sym
442
- when :Time
443
- Time.parse(value)
444
- when :Date
445
- Date.parse(value)
446
- when :String
447
- value.to_s
448
- when :Integer
449
- value.to_i
450
- when :Float
451
- value.to_f
452
- when :Boolean
453
- if value.to_s =~ /\A(true|t|yes|y|1)\z/i
454
- true
455
- else
456
- false
457
- end
458
- when :Object
459
- # generic object (usually a Hash), return directly
460
- value
461
- when /\AArray<(?<inner_type>.+)>\z/
462
- inner_type = Regexp.last_match[:inner_type]
463
- value.map { |v| _deserialize(inner_type, v) }
464
- when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
465
- k_type = Regexp.last_match[:k_type]
466
- v_type = Regexp.last_match[:v_type]
467
- {}.tap do |hash|
468
- value.each do |k, v|
469
- hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
470
- end
471
- end
472
- else # model
473
- # models (e.g. Pet) or oneOf
474
- klass = Fastly.const_get(type)
475
- klass.respond_to?(:fastly_one_of) ? klass.build(value) : klass.build_from_hash(value)
476
- end
477
- end
478
-
479
- # Returns the string representation of the object
480
- # @return [String] String presentation of the object
481
- def to_s
482
- to_hash.to_s
483
- end
484
-
485
- # to_body is an alias to to_hash (backward compatibility)
486
- # @return [Hash] Returns the object in the form of hash
487
- def to_body
488
- to_hash
489
- end
490
-
491
- # Returns the object in the form of hash
492
- # @return [Hash] Returns the object in the form of hash
493
- def to_hash
494
- hash = {}
495
- self.class.attribute_map.each_pair do |attr, param|
496
- value = self.send(attr)
497
- if value.nil?
498
- is_nullable = self.class.fastly_nullable.include?(attr)
499
- next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
500
- end
501
-
502
- hash[param] = _to_hash(value)
503
- end
504
- hash
505
- end
506
-
507
- # Outputs non-array value in the form of hash
508
- # For object, use to_hash. Otherwise, just return the value
509
- # @param [Object] value Any valid value
510
- # @return [Hash] Returns the value in the form of hash
511
- def _to_hash(value)
512
- if value.is_a?(Array)
513
- value.compact.map { |v| _to_hash(v) }
514
- elsif value.is_a?(Hash)
515
- {}.tap do |hash|
516
- value.each { |k, v| hash[k] = _to_hash(v) }
517
- end
518
- elsif value.respond_to? :to_hash
519
- value.to_hash
520
- else
521
- value
522
- end
523
- end
524
-
525
- end
526
-
527
- end