iron_admin 0.4.1 → 0.6.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 (456) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +66 -30
  3. data/app/assets/config/iron_admin_manifest.js +12 -0
  4. data/app/components/iron_admin/dashboards/metric_card_component.html.haml +8 -3
  5. data/app/components/iron_admin/dashboards/metric_card_component.rb +21 -1
  6. data/app/components/iron_admin/form/belongs_to_component.rb +60 -6
  7. data/app/components/iron_admin/form/nested_form_component.html.haml +28 -0
  8. data/app/components/iron_admin/form/nested_form_component.rb +81 -0
  9. data/app/components/iron_admin/resources/data_table_component.html.haml +1 -1
  10. data/app/components/iron_admin/resources/data_table_component.rb +6 -0
  11. data/app/components/iron_admin/resources/show_field_component.rb +2 -0
  12. data/app/controllers/iron_admin/application_controller.rb +32 -1
  13. data/app/controllers/iron_admin/concerns/action_executable.rb +44 -0
  14. data/app/controllers/iron_admin/concerns/filterable.rb +84 -0
  15. data/app/controllers/iron_admin/concerns/json_params_coercion.rb +67 -0
  16. data/app/controllers/iron_admin/concerns/nested_permittable.rb +36 -0
  17. data/app/controllers/iron_admin/concerns/scopeable.rb +84 -0
  18. data/app/controllers/iron_admin/concerns/searchable.rb +13 -16
  19. data/app/controllers/iron_admin/exports_controller.rb +15 -11
  20. data/app/controllers/iron_admin/imports_controller.rb +83 -0
  21. data/app/controllers/iron_admin/live_controller.rb +12 -0
  22. data/app/controllers/iron_admin/resources_controller.rb +118 -117
  23. data/app/controllers/iron_admin/search_controller.rb +5 -5
  24. data/app/controllers/iron_admin/tools_controller.rb +63 -4
  25. data/app/helpers/iron_admin/application_helper.rb +33 -14
  26. data/app/helpers/iron_admin/field_display_helper.rb +160 -1
  27. data/app/javascript/iron_admin/controllers/cp_nested_form_controller.js +113 -0
  28. data/app/javascript/iron_admin/controllers/filter_operator_controller.js +10 -0
  29. data/app/javascript/iron_admin/index.js +4 -0
  30. data/app/views/iron_admin/dashboard/index.html.haml +7 -2
  31. data/app/views/iron_admin/form/_nested_row.html.haml +70 -0
  32. data/app/views/iron_admin/imports/new.html.haml +27 -0
  33. data/app/views/iron_admin/imports/preview.html.haml +31 -0
  34. data/app/views/iron_admin/resources/_form.html.haml +81 -5
  35. data/app/views/iron_admin/resources/action_form.html.haml +62 -0
  36. data/app/views/iron_admin/resources/bulk_action_form.html.haml +62 -0
  37. data/app/views/iron_admin/resources/index.html.haml +60 -18
  38. data/app/views/iron_admin/tools/action_form.html.haml +57 -0
  39. data/app/views/iron_admin/tools/show.html.haml +20 -1
  40. data/config/importmap.rb +2 -0
  41. data/config/locales/en.yml +36 -0
  42. data/config/routes.rb +7 -0
  43. data/docs/components/filter-components.md +60 -0
  44. data/docs/getting-started/installation.md +113 -27
  45. data/docs/getting-started/quick-start.md +17 -1
  46. data/docs/guides/authentication.md +7 -6
  47. data/docs/guides/custom-adapters.md +628 -0
  48. data/docs/guides/extending.md +132 -3
  49. data/docs/guides/fields.md +1 -1
  50. data/docs/guides/resources.md +78 -2
  51. data/docs/guides/troubleshooting.md +68 -10
  52. data/docs/reference/routes.md +10 -0
  53. data/lib/generators/iron_admin/install/install_generator.rb +49 -4
  54. data/lib/generators/iron_admin/install/templates/dashboard.rb.tt +5 -1
  55. data/lib/generators/iron_admin/install_audit/install_audit_generator.rb +26 -10
  56. data/lib/generators/iron_admin/resource/resource_generator.rb +1 -1
  57. data/lib/generators/iron_admin/resource/templates/resource.rb.tt +6 -2
  58. data/lib/iron_admin/action_field.rb +56 -0
  59. data/lib/iron_admin/adapters/active_record.rb +237 -0
  60. data/lib/iron_admin/adapters/base.rb +340 -0
  61. data/lib/iron_admin/adapters/http/column_descriptor.rb +10 -0
  62. data/lib/iron_admin/adapters/http/configuration.rb +27 -0
  63. data/lib/iron_admin/adapters/http/connection.rb +117 -0
  64. data/lib/iron_admin/adapters/http/model_proxy.rb +75 -0
  65. data/lib/iron_admin/adapters/http/query.rb +111 -0
  66. data/lib/iron_admin/adapters/http/record.rb +83 -0
  67. data/lib/iron_admin/adapters/http/type_inferrer.rb +51 -0
  68. data/lib/iron_admin/adapters/http.rb +241 -0
  69. data/lib/iron_admin/adapters/mongoid/association_wrapper.rb +74 -0
  70. data/lib/iron_admin/adapters/mongoid/column_descriptor.rb +10 -0
  71. data/lib/iron_admin/adapters/mongoid.rb +284 -0
  72. data/lib/iron_admin/adapters/registry.rb +44 -0
  73. data/lib/iron_admin/concerns/importable.rb +81 -0
  74. data/lib/iron_admin/concerns/live_updatable.rb +38 -0
  75. data/lib/iron_admin/concerns/nestable.rb +69 -0
  76. data/lib/iron_admin/concerns/soft_deletable.rb +61 -0
  77. data/lib/iron_admin/configuration.rb +20 -0
  78. data/lib/iron_admin/dashboard.rb +15 -20
  79. data/lib/iron_admin/engine.rb +35 -22
  80. data/lib/iron_admin/errors.rb +29 -0
  81. data/lib/iron_admin/field_inferrer.rb +61 -22
  82. data/lib/iron_admin/filters/active_record_query_builder.rb +63 -0
  83. data/lib/iron_admin/filters/base_query_builder.rb +55 -0
  84. data/lib/iron_admin/filters/http_query_builder.rb +39 -0
  85. data/lib/iron_admin/filters/mongoid_query_builder.rb +58 -0
  86. data/lib/iron_admin/filters/query_builder.rb +12 -0
  87. data/lib/iron_admin/import/column_mapper.rb +42 -0
  88. data/lib/iron_admin/import/import_preview.rb +10 -0
  89. data/lib/iron_admin/import/import_result.rb +10 -0
  90. data/lib/iron_admin/import/importer.rb +231 -0
  91. data/lib/iron_admin/import/parser/csv.rb +34 -0
  92. data/lib/iron_admin/import/parser/json.rb +36 -0
  93. data/lib/iron_admin/import/type_caster.rb +47 -0
  94. data/lib/iron_admin/live/broadcaster.rb +43 -0
  95. data/lib/iron_admin/live/poll_cache.rb +28 -0
  96. data/lib/iron_admin/live.rb +29 -0
  97. data/lib/iron_admin/nested_association.rb +15 -0
  98. data/lib/iron_admin/nested_attributes_validator.rb +25 -0
  99. data/lib/iron_admin/policy.rb +72 -13
  100. data/lib/iron_admin/resource.rb +149 -91
  101. data/lib/iron_admin/resource_registry.rb +77 -4
  102. data/lib/iron_admin/tool.rb +50 -0
  103. data/lib/iron_admin/tool_action.rb +73 -0
  104. data/lib/iron_admin/tool_context.rb +49 -0
  105. data/lib/iron_admin/version.rb +1 -1
  106. data/lib/iron_admin.rb +46 -10
  107. data/vendor/bundle/ruby/3.2.0/cache/addressable-2.9.0.gem +0 -0
  108. data/vendor/bundle/ruby/3.2.0/cache/crack-1.0.1.gem +0 -0
  109. data/vendor/bundle/ruby/3.2.0/cache/faraday-2.14.1.gem +0 -0
  110. data/vendor/bundle/ruby/3.2.0/cache/faraday-net_http-3.4.2.gem +0 -0
  111. data/vendor/bundle/ruby/3.2.0/cache/hashdiff-1.2.1.gem +0 -0
  112. data/vendor/bundle/ruby/3.2.0/cache/net-http-0.9.1.gem +0 -0
  113. data/vendor/bundle/ruby/3.2.0/cache/public_suffix-7.0.5.gem +0 -0
  114. data/vendor/bundle/ruby/3.2.0/cache/rexml-3.4.4.gem +0 -0
  115. data/vendor/bundle/ruby/3.2.0/cache/webmock-3.26.2.gem +0 -0
  116. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/bigdecimal-4.0.1/bigdecimal.so +0 -0
  117. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/bigdecimal-4.0.1/gem_make.out +6 -6
  118. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/bigdecimal-4.0.1/mkmf.log +25 -25
  119. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/date-3.5.1/date_core.so +0 -0
  120. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/date-3.5.1/gem_make.out +6 -6
  121. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/date-3.5.1/mkmf.log +4 -4
  122. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/erb-6.0.1/erb/escape.so +0 -0
  123. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/erb-6.0.1/gem_make.out +6 -6
  124. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/erb-6.0.1/mkmf.log +2 -2
  125. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/io-console-0.8.2/gem_make.out +6 -6
  126. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/io-console-0.8.2/io/console.so +0 -0
  127. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/io-console-0.8.2/mkmf.log +22 -22
  128. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/json-2.18.1/gem_make.out +6 -6
  129. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/json-2.18.1/json/ext/generator.so +0 -0
  130. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/json-2.18.1/json/ext/parser.so +0 -0
  131. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/json-2.18.1/mkmf.log +9 -9
  132. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/nio4r-2.7.5/gem_make.out +6 -6
  133. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/nio4r-2.7.5/mkmf.log +12 -12
  134. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/nio4r-2.7.5/nio4r_ext.so +0 -0
  135. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/prism-1.9.0/gem_make.out +6 -6
  136. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/prism-1.9.0/mkmf.log +6 -6
  137. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/prism-1.9.0/prism/prism.so +0 -0
  138. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/psych-5.3.1/gem_make.out +6 -6
  139. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/psych-5.3.1/mkmf.log +7 -7
  140. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/psych-5.3.1/psych.so +0 -0
  141. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/racc-1.8.1/gem_make.out +6 -6
  142. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/racc-1.8.1/racc/cparse.so +0 -0
  143. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/redcarpet-3.6.1/gem_make.out +6 -6
  144. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/redcarpet-3.6.1/redcarpet.so +0 -0
  145. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/stringio-3.2.0/gem_make.out +6 -6
  146. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/stringio-3.2.0/mkmf.log +2 -2
  147. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/stringio-3.2.0/stringio.so +0 -0
  148. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/websocket-driver-0.8.0/gem_make.out +6 -6
  149. data/vendor/bundle/ruby/3.2.0/extensions/x86_64-linux/3.2.0/websocket-driver-0.8.0/websocket_mask.so +0 -0
  150. data/vendor/bundle/ruby/3.2.0/gems/addressable-2.9.0/CHANGELOG.md +326 -0
  151. data/vendor/bundle/ruby/3.2.0/gems/addressable-2.9.0/LICENSE.txt +202 -0
  152. data/vendor/bundle/ruby/3.2.0/gems/addressable-2.9.0/README.md +121 -0
  153. data/vendor/bundle/ruby/3.2.0/gems/addressable-2.9.0/lib/addressable/idna/native.rb +66 -0
  154. data/vendor/bundle/ruby/3.2.0/gems/addressable-2.9.0/lib/addressable/idna/pure.rb +4710 -0
  155. data/vendor/bundle/ruby/3.2.0/gems/addressable-2.9.0/lib/addressable/idna.rb +26 -0
  156. data/vendor/bundle/ruby/3.2.0/gems/addressable-2.9.0/lib/addressable/template.rb +1040 -0
  157. data/vendor/bundle/ruby/3.2.0/gems/addressable-2.9.0/lib/addressable/uri.rb +2602 -0
  158. data/vendor/bundle/ruby/3.2.0/gems/addressable-2.9.0/lib/addressable/version.rb +31 -0
  159. data/vendor/bundle/ruby/3.2.0/gems/addressable-2.9.0/lib/addressable.rb +4 -0
  160. data/vendor/bundle/ruby/3.2.0/gems/bigdecimal-4.0.1/ext/bigdecimal/Makefile +3 -3
  161. data/vendor/bundle/ruby/3.2.0/gems/bigdecimal-4.0.1/lib/bigdecimal.so +0 -0
  162. data/vendor/bundle/ruby/3.2.0/gems/crack-1.0.1/History +58 -0
  163. data/vendor/bundle/ruby/3.2.0/gems/crack-1.0.1/LICENSE +20 -0
  164. data/vendor/bundle/ruby/3.2.0/gems/crack-1.0.1/README.md +43 -0
  165. data/vendor/bundle/ruby/3.2.0/gems/crack-1.0.1/lib/crack/json.rb +113 -0
  166. data/vendor/bundle/ruby/3.2.0/gems/crack-1.0.1/lib/crack/util.rb +17 -0
  167. data/vendor/bundle/ruby/3.2.0/gems/crack-1.0.1/lib/crack/version.rb +3 -0
  168. data/vendor/bundle/ruby/3.2.0/gems/crack-1.0.1/lib/crack/xml.rb +240 -0
  169. data/vendor/bundle/ruby/3.2.0/gems/crack-1.0.1/lib/crack.rb +8 -0
  170. data/vendor/bundle/ruby/3.2.0/gems/date-3.5.1/ext/date/Makefile +3 -3
  171. data/vendor/bundle/ruby/3.2.0/gems/date-3.5.1/lib/date_core.so +0 -0
  172. data/vendor/bundle/ruby/3.2.0/gems/erb-6.0.1/ext/erb/escape/Makefile +3 -3
  173. data/vendor/bundle/ruby/3.2.0/gems/erb-6.0.1/lib/erb/escape.so +0 -0
  174. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.1/CHANGELOG.md +574 -0
  175. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.1/LICENSE.md +20 -0
  176. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.1/README.md +67 -0
  177. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.1/Rakefile +12 -0
  178. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.1/examples/client_spec.rb +119 -0
  179. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.1/examples/client_test.rb +144 -0
  180. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.1/lib/faraday/adapter/test.rb +311 -0
  181. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.1/lib/faraday/adapter.rb +101 -0
  182. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.1/lib/faraday/adapter_registry.rb +30 -0
  183. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.1/lib/faraday/connection.rb +565 -0
  184. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.1/lib/faraday/encoders/flat_params_encoder.rb +105 -0
  185. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.1/lib/faraday/encoders/nested_params_encoder.rb +183 -0
  186. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.1/lib/faraday/error.rb +202 -0
  187. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.1/lib/faraday/logging/formatter.rb +118 -0
  188. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.1/lib/faraday/methods.rb +6 -0
  189. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.1/lib/faraday/middleware.rb +72 -0
  190. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.1/lib/faraday/middleware_registry.rb +83 -0
  191. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.1/lib/faraday/options/connection_options.rb +23 -0
  192. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.1/lib/faraday/options/env.rb +204 -0
  193. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.1/lib/faraday/options/proxy_options.rb +38 -0
  194. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.1/lib/faraday/options/request_options.rb +23 -0
  195. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.1/lib/faraday/options/ssl_options.rb +76 -0
  196. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.1/lib/faraday/options.rb +219 -0
  197. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.1/lib/faraday/parameters.rb +5 -0
  198. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.1/lib/faraday/rack_builder.rb +248 -0
  199. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.1/lib/faraday/request/authorization.rb +54 -0
  200. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.1/lib/faraday/request/instrumentation.rb +58 -0
  201. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.1/lib/faraday/request/json.rb +70 -0
  202. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.1/lib/faraday/request/url_encoded.rb +60 -0
  203. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.1/lib/faraday/request.rb +139 -0
  204. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.1/lib/faraday/response/json.rb +74 -0
  205. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.1/lib/faraday/response/logger.rb +39 -0
  206. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.1/lib/faraday/response/raise_error.rb +83 -0
  207. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.1/lib/faraday/response.rb +95 -0
  208. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.1/lib/faraday/utils/headers.rb +150 -0
  209. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.1/lib/faraday/utils/params_hash.rb +61 -0
  210. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.1/lib/faraday/utils.rb +121 -0
  211. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.1/lib/faraday/version.rb +5 -0
  212. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.1/lib/faraday.rb +158 -0
  213. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.1/spec/external_adapters/faraday_specs_setup.rb +14 -0
  214. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.1/spec/faraday/adapter/test_spec.rb +442 -0
  215. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.1/spec/faraday/adapter_registry_spec.rb +28 -0
  216. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.1/spec/faraday/adapter_spec.rb +55 -0
  217. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.1/spec/faraday/connection_spec.rb +841 -0
  218. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.1/spec/faraday/error_spec.rb +175 -0
  219. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.1/spec/faraday/middleware_registry_spec.rb +31 -0
  220. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.1/spec/faraday/middleware_spec.rb +213 -0
  221. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.1/spec/faraday/options/env_spec.rb +76 -0
  222. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.1/spec/faraday/options/options_spec.rb +297 -0
  223. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.1/spec/faraday/options/proxy_options_spec.rb +79 -0
  224. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.1/spec/faraday/options/request_options_spec.rb +19 -0
  225. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.1/spec/faraday/params_encoders/flat_spec.rb +42 -0
  226. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.1/spec/faraday/params_encoders/nested_spec.rb +151 -0
  227. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.1/spec/faraday/rack_builder_spec.rb +317 -0
  228. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.1/spec/faraday/request/authorization_spec.rb +118 -0
  229. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.1/spec/faraday/request/instrumentation_spec.rb +74 -0
  230. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.1/spec/faraday/request/json_spec.rb +199 -0
  231. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.1/spec/faraday/request/url_encoded_spec.rb +93 -0
  232. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.1/spec/faraday/request_spec.rb +110 -0
  233. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.1/spec/faraday/response/json_spec.rb +206 -0
  234. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.1/spec/faraday/response/logger_spec.rb +299 -0
  235. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.1/spec/faraday/response/raise_error_spec.rb +286 -0
  236. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.1/spec/faraday/response_spec.rb +84 -0
  237. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.1/spec/faraday/utils/headers_spec.rb +109 -0
  238. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.1/spec/faraday/utils_spec.rb +120 -0
  239. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.1/spec/faraday_spec.rb +43 -0
  240. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.1/spec/spec_helper.rb +133 -0
  241. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.1/spec/support/disabling_stub.rb +14 -0
  242. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.1/spec/support/fake_safe_buffer.rb +15 -0
  243. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.1/spec/support/faraday_middleware_subclasses.rb +18 -0
  244. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.1/spec/support/helper_methods.rb +96 -0
  245. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.1/spec/support/shared_examples/adapter.rb +105 -0
  246. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.1/spec/support/shared_examples/params_encoder.rb +18 -0
  247. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.1/spec/support/shared_examples/request_method.rb +263 -0
  248. data/vendor/bundle/ruby/3.2.0/gems/faraday-2.14.1/spec/support/streaming_response_checker.rb +35 -0
  249. data/vendor/bundle/ruby/3.2.0/gems/faraday-net_http-3.4.2/LICENSE.md +21 -0
  250. data/vendor/bundle/ruby/3.2.0/gems/faraday-net_http-3.4.2/README.md +57 -0
  251. data/vendor/bundle/ruby/3.2.0/gems/faraday-net_http-3.4.2/lib/faraday/adapter/net_http.rb +206 -0
  252. data/vendor/bundle/ruby/3.2.0/gems/faraday-net_http-3.4.2/lib/faraday/net_http/version.rb +7 -0
  253. data/vendor/bundle/ruby/3.2.0/gems/faraday-net_http-3.4.2/lib/faraday/net_http.rb +10 -0
  254. data/vendor/bundle/ruby/3.2.0/gems/hashdiff-1.2.1/Gemfile +8 -0
  255. data/vendor/bundle/ruby/3.2.0/gems/hashdiff-1.2.1/LICENSE +19 -0
  256. data/vendor/bundle/ruby/3.2.0/gems/hashdiff-1.2.1/README.md +323 -0
  257. data/vendor/bundle/ruby/3.2.0/gems/hashdiff-1.2.1/Rakefile +18 -0
  258. data/vendor/bundle/ruby/3.2.0/gems/hashdiff-1.2.1/changelog.md +127 -0
  259. data/vendor/bundle/ruby/3.2.0/gems/hashdiff-1.2.1/hashdiff.gemspec +39 -0
  260. data/vendor/bundle/ruby/3.2.0/gems/hashdiff-1.2.1/lib/hashdiff/compare_hashes.rb +101 -0
  261. data/vendor/bundle/ruby/3.2.0/gems/hashdiff-1.2.1/lib/hashdiff/diff.rb +185 -0
  262. data/vendor/bundle/ruby/3.2.0/gems/hashdiff-1.2.1/lib/hashdiff/lcs.rb +66 -0
  263. data/vendor/bundle/ruby/3.2.0/gems/hashdiff-1.2.1/lib/hashdiff/lcs_compare_arrays.rb +32 -0
  264. data/vendor/bundle/ruby/3.2.0/gems/hashdiff-1.2.1/lib/hashdiff/linear_compare_array.rb +159 -0
  265. data/vendor/bundle/ruby/3.2.0/gems/hashdiff-1.2.1/lib/hashdiff/patch.rb +88 -0
  266. data/vendor/bundle/ruby/3.2.0/gems/hashdiff-1.2.1/lib/hashdiff/util.rb +155 -0
  267. data/vendor/bundle/ruby/3.2.0/gems/hashdiff-1.2.1/lib/hashdiff/version.rb +5 -0
  268. data/vendor/bundle/ruby/3.2.0/gems/hashdiff-1.2.1/lib/hashdiff.rb +10 -0
  269. data/vendor/bundle/ruby/3.2.0/gems/io-console-0.8.2/ext/io/console/Makefile +3 -3
  270. data/vendor/bundle/ruby/3.2.0/gems/io-console-0.8.2/lib/io/console.so +0 -0
  271. data/vendor/bundle/ruby/3.2.0/gems/json-2.18.1/ext/json/ext/generator/Makefile +3 -3
  272. data/vendor/bundle/ruby/3.2.0/gems/json-2.18.1/ext/json/ext/parser/Makefile +3 -3
  273. data/vendor/bundle/ruby/3.2.0/gems/json-2.18.1/lib/json/ext/generator.so +0 -0
  274. data/vendor/bundle/ruby/3.2.0/gems/json-2.18.1/lib/json/ext/parser.so +0 -0
  275. data/vendor/bundle/ruby/3.2.0/gems/net-http-0.9.1/BSDL +22 -0
  276. data/vendor/bundle/ruby/3.2.0/gems/net-http-0.9.1/COPYING +56 -0
  277. data/vendor/bundle/ruby/3.2.0/gems/net-http-0.9.1/README.md +93 -0
  278. data/vendor/bundle/ruby/3.2.0/gems/net-http-0.9.1/doc/net-http/examples.rdoc +31 -0
  279. data/vendor/bundle/ruby/3.2.0/gems/net-http-0.9.1/doc/net-http/included_getters.rdoc +3 -0
  280. data/vendor/bundle/ruby/3.2.0/gems/net-http-0.9.1/lib/net/http/exceptions.rb +35 -0
  281. data/vendor/bundle/ruby/3.2.0/gems/net-http-0.9.1/lib/net/http/generic_request.rb +429 -0
  282. data/vendor/bundle/ruby/3.2.0/gems/net-http-0.9.1/lib/net/http/header.rb +985 -0
  283. data/vendor/bundle/ruby/3.2.0/gems/net-http-0.9.1/lib/net/http/proxy_delta.rb +17 -0
  284. data/vendor/bundle/ruby/3.2.0/gems/net-http-0.9.1/lib/net/http/request.rb +88 -0
  285. data/vendor/bundle/ruby/3.2.0/gems/net-http-0.9.1/lib/net/http/requests.rb +444 -0
  286. data/vendor/bundle/ruby/3.2.0/gems/net-http-0.9.1/lib/net/http/response.rb +739 -0
  287. data/vendor/bundle/ruby/3.2.0/gems/net-http-0.9.1/lib/net/http/responses.rb +1242 -0
  288. data/vendor/bundle/ruby/3.2.0/gems/net-http-0.9.1/lib/net/http/status.rb +84 -0
  289. data/vendor/bundle/ruby/3.2.0/gems/net-http-0.9.1/lib/net/http.rb +2608 -0
  290. data/vendor/bundle/ruby/3.2.0/gems/net-http-0.9.1/lib/net/https.rb +23 -0
  291. data/vendor/bundle/ruby/3.2.0/gems/nio4r-2.7.5/ext/nio4r/Makefile +3 -3
  292. data/vendor/bundle/ruby/3.2.0/gems/nio4r-2.7.5/lib/nio4r_ext.so +0 -0
  293. data/vendor/bundle/ruby/3.2.0/gems/prism-1.9.0/ext/prism/Makefile +3 -3
  294. data/vendor/bundle/ruby/3.2.0/gems/prism-1.9.0/lib/prism/prism.so +0 -0
  295. data/vendor/bundle/ruby/3.2.0/gems/psych-5.3.1/ext/psych/Makefile +3 -3
  296. data/vendor/bundle/ruby/3.2.0/gems/psych-5.3.1/lib/psych.so +0 -0
  297. data/vendor/bundle/ruby/3.2.0/gems/public_suffix-7.0.5/CHANGELOG.md +649 -0
  298. data/vendor/bundle/ruby/3.2.0/gems/public_suffix-7.0.5/Gemfile +16 -0
  299. data/vendor/bundle/ruby/3.2.0/gems/public_suffix-7.0.5/LICENSE.txt +22 -0
  300. data/vendor/bundle/ruby/3.2.0/gems/public_suffix-7.0.5/README.md +231 -0
  301. data/vendor/bundle/ruby/3.2.0/gems/public_suffix-7.0.5/SECURITY.md +24 -0
  302. data/vendor/bundle/ruby/3.2.0/gems/public_suffix-7.0.5/data/list.txt +16298 -0
  303. data/vendor/bundle/ruby/3.2.0/gems/public_suffix-7.0.5/lib/public_suffix/domain.rb +235 -0
  304. data/vendor/bundle/ruby/3.2.0/gems/public_suffix-7.0.5/lib/public_suffix/errors.rb +41 -0
  305. data/vendor/bundle/ruby/3.2.0/gems/public_suffix-7.0.5/lib/public_suffix/list.rb +247 -0
  306. data/vendor/bundle/ruby/3.2.0/gems/public_suffix-7.0.5/lib/public_suffix/rule.rb +350 -0
  307. data/vendor/bundle/ruby/3.2.0/gems/public_suffix-7.0.5/lib/public_suffix/version.rb +14 -0
  308. data/vendor/bundle/ruby/3.2.0/gems/public_suffix-7.0.5/lib/public_suffix.rb +177 -0
  309. data/vendor/bundle/ruby/3.2.0/gems/racc-1.8.1/ext/racc/cparse/Makefile +3 -3
  310. data/vendor/bundle/ruby/3.2.0/gems/racc-1.8.1/lib/racc/cparse.so +0 -0
  311. data/vendor/bundle/ruby/3.2.0/gems/redcarpet-3.6.1/ext/redcarpet/Makefile +3 -3
  312. data/vendor/bundle/ruby/3.2.0/gems/redcarpet-3.6.1/lib/redcarpet.so +0 -0
  313. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.4.4/LICENSE.txt +22 -0
  314. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.4.4/NEWS.md +843 -0
  315. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.4.4/README.md +57 -0
  316. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.4.4/doc/rexml/context.rdoc +143 -0
  317. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.4.4/doc/rexml/tasks/rdoc/child.rdoc +87 -0
  318. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.4.4/doc/rexml/tasks/rdoc/document.rdoc +276 -0
  319. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.4.4/doc/rexml/tasks/rdoc/element.rdoc +602 -0
  320. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.4.4/doc/rexml/tasks/rdoc/node.rdoc +97 -0
  321. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.4.4/doc/rexml/tasks/rdoc/parent.rdoc +267 -0
  322. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.4.4/doc/rexml/tasks/tocs/child_toc.rdoc +12 -0
  323. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.4.4/doc/rexml/tasks/tocs/document_toc.rdoc +30 -0
  324. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.4.4/doc/rexml/tasks/tocs/element_toc.rdoc +55 -0
  325. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.4.4/doc/rexml/tasks/tocs/master_toc.rdoc +135 -0
  326. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.4.4/doc/rexml/tasks/tocs/node_toc.rdoc +16 -0
  327. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.4.4/doc/rexml/tasks/tocs/parent_toc.rdoc +25 -0
  328. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.4.4/doc/rexml/tutorial.rdoc +1358 -0
  329. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.4.4/lib/rexml/attlistdecl.rb +63 -0
  330. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.4.4/lib/rexml/attribute.rb +210 -0
  331. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.4.4/lib/rexml/cdata.rb +68 -0
  332. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.4.4/lib/rexml/child.rb +96 -0
  333. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.4.4/lib/rexml/comment.rb +80 -0
  334. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.4.4/lib/rexml/doctype.rb +306 -0
  335. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.4.4/lib/rexml/document.rb +471 -0
  336. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.4.4/lib/rexml/dtd/attlistdecl.rb +11 -0
  337. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.4.4/lib/rexml/dtd/dtd.rb +47 -0
  338. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.4.4/lib/rexml/dtd/elementdecl.rb +18 -0
  339. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.4.4/lib/rexml/dtd/entitydecl.rb +57 -0
  340. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.4.4/lib/rexml/dtd/notationdecl.rb +40 -0
  341. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.4.4/lib/rexml/element.rb +2578 -0
  342. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.4.4/lib/rexml/encoding.rb +48 -0
  343. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.4.4/lib/rexml/entity.rb +142 -0
  344. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.4.4/lib/rexml/formatters/default.rb +116 -0
  345. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.4.4/lib/rexml/formatters/pretty.rb +142 -0
  346. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.4.4/lib/rexml/formatters/transitive.rb +58 -0
  347. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.4.4/lib/rexml/functions.rb +446 -0
  348. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.4.4/lib/rexml/instruction.rb +79 -0
  349. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.4.4/lib/rexml/light/node.rb +188 -0
  350. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.4.4/lib/rexml/namespace.rb +63 -0
  351. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.4.4/lib/rexml/node.rb +80 -0
  352. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.4.4/lib/rexml/output.rb +30 -0
  353. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.4.4/lib/rexml/parent.rb +166 -0
  354. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.4.4/lib/rexml/parseexception.rb +53 -0
  355. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.4.4/lib/rexml/parsers/baseparser.rb +949 -0
  356. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.4.4/lib/rexml/parsers/lightparser.rb +59 -0
  357. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.4.4/lib/rexml/parsers/pullparser.rb +213 -0
  358. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.4.4/lib/rexml/parsers/sax2parser.rb +270 -0
  359. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.4.4/lib/rexml/parsers/streamparser.rb +67 -0
  360. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.4.4/lib/rexml/parsers/treeparser.rb +89 -0
  361. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.4.4/lib/rexml/parsers/ultralightparser.rb +57 -0
  362. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.4.4/lib/rexml/parsers/xpathparser.rb +739 -0
  363. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.4.4/lib/rexml/quickpath.rb +267 -0
  364. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.4.4/lib/rexml/rexml.rb +39 -0
  365. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.4.4/lib/rexml/sax2listener.rb +98 -0
  366. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.4.4/lib/rexml/security.rb +28 -0
  367. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.4.4/lib/rexml/source.rb +388 -0
  368. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.4.4/lib/rexml/streamlistener.rb +93 -0
  369. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.4.4/lib/rexml/text.rb +420 -0
  370. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.4.4/lib/rexml/undefinednamespaceexception.rb +9 -0
  371. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.4.4/lib/rexml/validation/relaxng.rb +540 -0
  372. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.4.4/lib/rexml/validation/validation.rb +144 -0
  373. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.4.4/lib/rexml/validation/validationexception.rb +10 -0
  374. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.4.4/lib/rexml/xmldecl.rb +130 -0
  375. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.4.4/lib/rexml/xmltokens.rb +85 -0
  376. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.4.4/lib/rexml/xpath.rb +70 -0
  377. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.4.4/lib/rexml/xpath_parser.rb +980 -0
  378. data/vendor/bundle/ruby/3.2.0/gems/rexml-3.4.4/lib/rexml.rb +3 -0
  379. data/vendor/bundle/ruby/3.2.0/gems/stringio-3.2.0/ext/stringio/Makefile +3 -3
  380. data/vendor/bundle/ruby/3.2.0/gems/stringio-3.2.0/lib/stringio.so +0 -0
  381. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.26.2/CHANGELOG.md +2148 -0
  382. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.26.2/LICENSE +20 -0
  383. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.26.2/README.md +1229 -0
  384. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.26.2/lib/webmock/api.rb +111 -0
  385. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.26.2/lib/webmock/assertion_failure.rb +13 -0
  386. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.26.2/lib/webmock/callback_registry.rb +37 -0
  387. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.26.2/lib/webmock/config.rb +20 -0
  388. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.26.2/lib/webmock/cucumber.rb +12 -0
  389. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.26.2/lib/webmock/deprecation.rb +11 -0
  390. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.26.2/lib/webmock/errors.rb +19 -0
  391. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.26.2/lib/webmock/http_lib_adapters/async_http_client_adapter.rb +228 -0
  392. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.26.2/lib/webmock/http_lib_adapters/curb_adapter.rb +354 -0
  393. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.26.2/lib/webmock/http_lib_adapters/em_http_request_adapter.rb +239 -0
  394. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.26.2/lib/webmock/http_lib_adapters/excon_adapter.rb +167 -0
  395. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.26.2/lib/webmock/http_lib_adapters/http_lib_adapter.rb +9 -0
  396. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.26.2/lib/webmock/http_lib_adapters/http_lib_adapter_registry.rb +21 -0
  397. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.26.2/lib/webmock/http_lib_adapters/http_rb/client.rb +17 -0
  398. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.26.2/lib/webmock/http_lib_adapters/http_rb/request.rb +28 -0
  399. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.26.2/lib/webmock/http_lib_adapters/http_rb/response.rb +95 -0
  400. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.26.2/lib/webmock/http_lib_adapters/http_rb/streamer.rb +44 -0
  401. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.26.2/lib/webmock/http_lib_adapters/http_rb/webmock.rb +77 -0
  402. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.26.2/lib/webmock/http_lib_adapters/http_rb_adapter.rb +39 -0
  403. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.26.2/lib/webmock/http_lib_adapters/httpclient_adapter.rb +260 -0
  404. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.26.2/lib/webmock/http_lib_adapters/manticore_adapter.rb +147 -0
  405. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.26.2/lib/webmock/http_lib_adapters/net_http.rb +310 -0
  406. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.26.2/lib/webmock/http_lib_adapters/net_http_response.rb +36 -0
  407. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.26.2/lib/webmock/http_lib_adapters/patron_adapter.rb +132 -0
  408. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.26.2/lib/webmock/http_lib_adapters/typhoeus_hydra_adapter.rb +190 -0
  409. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.26.2/lib/webmock/matchers/any_arg_matcher.rb +15 -0
  410. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.26.2/lib/webmock/matchers/hash_argument_matcher.rb +23 -0
  411. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.26.2/lib/webmock/matchers/hash_excluding_matcher.rb +17 -0
  412. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.26.2/lib/webmock/matchers/hash_including_matcher.rb +19 -0
  413. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.26.2/lib/webmock/minitest.rb +43 -0
  414. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.26.2/lib/webmock/rack_response.rb +73 -0
  415. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.26.2/lib/webmock/request_body_diff.rb +66 -0
  416. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.26.2/lib/webmock/request_execution_verifier.rb +79 -0
  417. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.26.2/lib/webmock/request_pattern.rb +428 -0
  418. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.26.2/lib/webmock/request_registry.rb +37 -0
  419. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.26.2/lib/webmock/request_signature.rb +56 -0
  420. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.26.2/lib/webmock/request_signature_snippet.rb +63 -0
  421. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.26.2/lib/webmock/request_stub.rb +134 -0
  422. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.26.2/lib/webmock/response.rb +161 -0
  423. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.26.2/lib/webmock/responses_sequence.rb +42 -0
  424. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.26.2/lib/webmock/rspec/matchers/request_pattern_matcher.rb +80 -0
  425. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.26.2/lib/webmock/rspec/matchers/webmock_matcher.rb +69 -0
  426. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.26.2/lib/webmock/rspec/matchers.rb +29 -0
  427. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.26.2/lib/webmock/rspec.rb +44 -0
  428. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.26.2/lib/webmock/stub_registry.rb +84 -0
  429. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.26.2/lib/webmock/stub_request_snippet.rb +40 -0
  430. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.26.2/lib/webmock/test_unit.rb +22 -0
  431. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.26.2/lib/webmock/util/hash_counter.rb +45 -0
  432. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.26.2/lib/webmock/util/hash_keys_stringifier.rb +27 -0
  433. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.26.2/lib/webmock/util/hash_validator.rb +19 -0
  434. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.26.2/lib/webmock/util/headers.rb +77 -0
  435. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.26.2/lib/webmock/util/parsers/json.rb +72 -0
  436. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.26.2/lib/webmock/util/parsers/parse_error.rb +7 -0
  437. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.26.2/lib/webmock/util/parsers/xml.rb +16 -0
  438. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.26.2/lib/webmock/util/query_mapper.rb +283 -0
  439. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.26.2/lib/webmock/util/uri.rb +113 -0
  440. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.26.2/lib/webmock/util/values_stringifier.rb +22 -0
  441. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.26.2/lib/webmock/util/version_checker.rb +113 -0
  442. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.26.2/lib/webmock/version.rb +5 -0
  443. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.26.2/lib/webmock/webmock.rb +175 -0
  444. data/vendor/bundle/ruby/3.2.0/gems/webmock-3.26.2/lib/webmock.rb +61 -0
  445. data/vendor/bundle/ruby/3.2.0/gems/websocket-driver-0.8.0/ext/websocket-driver/Makefile +3 -3
  446. data/vendor/bundle/ruby/3.2.0/gems/websocket-driver-0.8.0/lib/websocket_mask.so +0 -0
  447. data/vendor/bundle/ruby/3.2.0/specifications/addressable-2.9.0.gemspec +29 -0
  448. data/vendor/bundle/ruby/3.2.0/specifications/crack-1.0.1.gemspec +27 -0
  449. data/vendor/bundle/ruby/3.2.0/specifications/faraday-2.14.1.gemspec +0 -0
  450. data/vendor/bundle/ruby/3.2.0/specifications/faraday-net_http-3.4.2.gemspec +26 -0
  451. data/vendor/bundle/ruby/3.2.0/specifications/hashdiff-1.2.1.gemspec +30 -0
  452. data/vendor/bundle/ruby/3.2.0/specifications/net-http-0.9.1.gemspec +27 -0
  453. data/vendor/bundle/ruby/3.2.0/specifications/public_suffix-7.0.5.gemspec +24 -0
  454. data/vendor/bundle/ruby/3.2.0/specifications/rexml-3.4.4.gemspec +25 -0
  455. data/vendor/bundle/ruby/3.2.0/specifications/webmock-3.26.2.gemspec +44 -0
  456. metadata +377 -2
@@ -0,0 +1,1242 @@
1
+ # frozen_string_literal: true
2
+ #--
3
+ # https://www.iana.org/assignments/http-status-codes/http-status-codes.xhtml
4
+
5
+ module Net
6
+
7
+ # Unknown HTTP response
8
+ class HTTPUnknownResponse < HTTPResponse
9
+ # :stopdoc:
10
+ HAS_BODY = true
11
+ EXCEPTION_TYPE = HTTPError #
12
+ end
13
+
14
+ # Parent class for informational (1xx) HTTP response classes.
15
+ #
16
+ # An informational response indicates that the request was received and understood.
17
+ #
18
+ # References:
19
+ #
20
+ # - {RFC 9110}[https://www.rfc-editor.org/rfc/rfc9110.html#status.1xx].
21
+ # - {Wikipedia}[https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#1xx_informational_response].
22
+ #
23
+ class HTTPInformation < HTTPResponse
24
+ # :stopdoc:
25
+ HAS_BODY = false
26
+ EXCEPTION_TYPE = HTTPError #
27
+ end
28
+
29
+ # Parent class for success (2xx) HTTP response classes.
30
+ #
31
+ # A success response indicates the action requested by the client
32
+ # was received, understood, and accepted.
33
+ #
34
+ # References:
35
+ #
36
+ # - {RFC 9110}[https://www.rfc-editor.org/rfc/rfc9110.html#status.2xx].
37
+ # - {Wikipedia}[https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#2xx_success].
38
+ #
39
+ class HTTPSuccess < HTTPResponse
40
+ # :stopdoc:
41
+ HAS_BODY = true
42
+ EXCEPTION_TYPE = HTTPError #
43
+ end
44
+
45
+ # Parent class for redirection (3xx) HTTP response classes.
46
+ #
47
+ # A redirection response indicates the client must take additional action
48
+ # to complete the request.
49
+ #
50
+ # References:
51
+ #
52
+ # - {RFC 9110}[https://www.rfc-editor.org/rfc/rfc9110.html#status.3xx].
53
+ # - {Wikipedia}[https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#3xx_redirection].
54
+ #
55
+ class HTTPRedirection < HTTPResponse
56
+ # :stopdoc:
57
+ HAS_BODY = true
58
+ EXCEPTION_TYPE = HTTPRetriableError #
59
+ end
60
+
61
+ # Parent class for client error (4xx) HTTP response classes.
62
+ #
63
+ # A client error response indicates that the client may have caused an error.
64
+ #
65
+ # References:
66
+ #
67
+ # - {RFC 9110}[https://www.rfc-editor.org/rfc/rfc9110.html#status.4xx].
68
+ # - {Wikipedia}[https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#4xx_client_errors].
69
+ #
70
+ class HTTPClientError < HTTPResponse
71
+ # :stopdoc:
72
+ HAS_BODY = true
73
+ EXCEPTION_TYPE = HTTPClientException #
74
+ end
75
+
76
+ # Parent class for server error (5xx) HTTP response classes.
77
+ #
78
+ # A server error response indicates that the server failed to fulfill a request.
79
+ #
80
+ # References:
81
+ #
82
+ # - {RFC 9110}[https://www.rfc-editor.org/rfc/rfc9110.html#status.5xx].
83
+ # - {Wikipedia}[https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#5xx_server_errors].
84
+ #
85
+ class HTTPServerError < HTTPResponse
86
+ # :stopdoc:
87
+ HAS_BODY = true
88
+ EXCEPTION_TYPE = HTTPFatalError #
89
+ end
90
+
91
+ # Response class for +Continue+ responses (status code 100).
92
+ #
93
+ # A +Continue+ response indicates that the server has received the request headers.
94
+ #
95
+ # :include: doc/net-http/included_getters.rdoc
96
+ #
97
+ # References:
98
+ #
99
+ # - {Mozilla}[https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/100].
100
+ # - {RFC 9110}[https://www.rfc-editor.org/rfc/rfc9110.html#name-100-continue].
101
+ # - {Wikipedia}[https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#100].
102
+ #
103
+ class HTTPContinue < HTTPInformation
104
+ # :stopdoc:
105
+ HAS_BODY = false
106
+ end
107
+
108
+ # Response class for <tt>Switching Protocol</tt> responses (status code 101).
109
+ #
110
+ # The <tt>Switching Protocol<tt> response indicates that the server has received
111
+ # a request to switch protocols, and has agreed to do so.
112
+ #
113
+ # :include: doc/net-http/included_getters.rdoc
114
+ #
115
+ # References:
116
+ #
117
+ # - {Mozilla}[https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/101].
118
+ # - {RFC 9110}[https://www.rfc-editor.org/rfc/rfc9110.html#name-101-switching-protocols].
119
+ # - {Wikipedia}[https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#101].
120
+ #
121
+ class HTTPSwitchProtocol < HTTPInformation
122
+ # :stopdoc:
123
+ HAS_BODY = false
124
+ end
125
+
126
+ # Response class for +Processing+ responses (status code 102).
127
+ #
128
+ # The +Processing+ response indicates that the server has received
129
+ # and is processing the request, but no response is available yet.
130
+ #
131
+ # :include: doc/net-http/included_getters.rdoc
132
+ #
133
+ # References:
134
+ #
135
+ # - {RFC 2518}[https://www.rfc-editor.org/rfc/rfc2518#section-10.1].
136
+ # - {Wikipedia}[https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#102].
137
+ #
138
+ class HTTPProcessing < HTTPInformation
139
+ # :stopdoc:
140
+ HAS_BODY = false
141
+ end
142
+
143
+ # Response class for <tt>Early Hints</tt> responses (status code 103).
144
+ #
145
+ # The <tt>Early Hints</tt> indicates that the server has received
146
+ # and is processing the request, and contains certain headers;
147
+ # the final response is not available yet.
148
+ #
149
+ # :include: doc/net-http/included_getters.rdoc
150
+ #
151
+ # References:
152
+ #
153
+ # - {Mozilla}[https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/103].
154
+ # - {RFC 8297}[https://www.rfc-editor.org/rfc/rfc8297.html#section-2].
155
+ # - {Wikipedia}[https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#103].
156
+ #
157
+ class HTTPEarlyHints < HTTPInformation
158
+ # :stopdoc:
159
+ HAS_BODY = false
160
+ end
161
+
162
+ # Response class for +OK+ responses (status code 200).
163
+ #
164
+ # The +OK+ response indicates that the server has received
165
+ # a request and has responded successfully.
166
+ #
167
+ # :include: doc/net-http/included_getters.rdoc
168
+ #
169
+ # References:
170
+ #
171
+ # - {Mozilla}[https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/200].
172
+ # - {RFC 9110}[https://www.rfc-editor.org/rfc/rfc9110.html#name-200-ok].
173
+ # - {Wikipedia}[https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#200].
174
+ #
175
+ class HTTPOK < HTTPSuccess
176
+ # :stopdoc:
177
+ HAS_BODY = true
178
+ end
179
+
180
+ # Response class for +Created+ responses (status code 201).
181
+ #
182
+ # The +Created+ response indicates that the server has received
183
+ # and has fulfilled a request to create a new resource.
184
+ #
185
+ # :include: doc/net-http/included_getters.rdoc
186
+ #
187
+ # References:
188
+ #
189
+ # - {Mozilla}[https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/201].
190
+ # - {RFC 9110}[https://www.rfc-editor.org/rfc/rfc9110.html#name-201-created].
191
+ # - {Wikipedia}[https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#201].
192
+ #
193
+ class HTTPCreated < HTTPSuccess
194
+ # :stopdoc:
195
+ HAS_BODY = true
196
+ end
197
+
198
+ # Response class for +Accepted+ responses (status code 202).
199
+ #
200
+ # The +Accepted+ response indicates that the server has received
201
+ # and is processing a request, but the processing has not yet been completed.
202
+ #
203
+ # :include: doc/net-http/included_getters.rdoc
204
+ #
205
+ # References:
206
+ #
207
+ # - {Mozilla}[https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/202].
208
+ # - {RFC 9110}[https://www.rfc-editor.org/rfc/rfc9110.html#name-202-accepted].
209
+ # - {Wikipedia}[https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#202].
210
+ #
211
+ class HTTPAccepted < HTTPSuccess
212
+ # :stopdoc:
213
+ HAS_BODY = true
214
+ end
215
+
216
+ # Response class for <tt>Non-Authoritative Information</tt> responses (status code 203).
217
+ #
218
+ # The <tt>Non-Authoritative Information</tt> response indicates that the server
219
+ # is a transforming proxy (such as a Web accelerator)
220
+ # that received a 200 OK response from its origin,
221
+ # and is returning a modified version of the origin's response.
222
+ #
223
+ # :include: doc/net-http/included_getters.rdoc
224
+ #
225
+ # References:
226
+ #
227
+ # - {Mozilla}[https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/203].
228
+ # - {RFC 9110}[https://www.rfc-editor.org/rfc/rfc9110.html#name-203-non-authoritative-infor].
229
+ # - {Wikipedia}[https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#203].
230
+ #
231
+ class HTTPNonAuthoritativeInformation < HTTPSuccess
232
+ # :stopdoc:
233
+ HAS_BODY = true
234
+ end
235
+
236
+ # Response class for <tt>No Content</tt> responses (status code 204).
237
+ #
238
+ # The <tt>No Content</tt> response indicates that the server
239
+ # successfully processed the request, and is not returning any content.
240
+ #
241
+ # :include: doc/net-http/included_getters.rdoc
242
+ #
243
+ # References:
244
+ #
245
+ # - {Mozilla}[https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/204].
246
+ # - {RFC 9110}[https://www.rfc-editor.org/rfc/rfc9110.html#name-204-no-content].
247
+ # - {Wikipedia}[https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#204].
248
+ #
249
+ class HTTPNoContent < HTTPSuccess
250
+ # :stopdoc:
251
+ HAS_BODY = false
252
+ end
253
+
254
+ # Response class for <tt>Reset Content</tt> responses (status code 205).
255
+ #
256
+ # The <tt>Reset Content</tt> response indicates that the server
257
+ # successfully processed the request,
258
+ # asks that the client reset its document view, and is not returning any content.
259
+ #
260
+ # :include: doc/net-http/included_getters.rdoc
261
+ #
262
+ # References:
263
+ #
264
+ # - {Mozilla}[https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/205].
265
+ # - {RFC 9110}[https://www.rfc-editor.org/rfc/rfc9110.html#name-205-reset-content].
266
+ # - {Wikipedia}[https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#205].
267
+ #
268
+ class HTTPResetContent < HTTPSuccess
269
+ # :stopdoc:
270
+ HAS_BODY = false
271
+ end
272
+
273
+ # Response class for <tt>Partial Content</tt> responses (status code 206).
274
+ #
275
+ # The <tt>Partial Content</tt> response indicates that the server is delivering
276
+ # only part of the resource (byte serving)
277
+ # due to a Range header in the request.
278
+ #
279
+ # :include: doc/net-http/included_getters.rdoc
280
+ #
281
+ # References:
282
+ #
283
+ # - {Mozilla}[https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/206].
284
+ # - {RFC 9110}[https://www.rfc-editor.org/rfc/rfc9110.html#name-206-partial-content].
285
+ # - {Wikipedia}[https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#206].
286
+ #
287
+ class HTTPPartialContent < HTTPSuccess
288
+ # :stopdoc:
289
+ HAS_BODY = true
290
+ end
291
+
292
+ # Response class for <tt>Multi-Status (WebDAV)</tt> responses (status code 207).
293
+ #
294
+ # The <tt>Multi-Status (WebDAV)</tt> response indicates that the server
295
+ # has received the request,
296
+ # and that the message body can contain a number of separate response codes.
297
+ #
298
+ # :include: doc/net-http/included_getters.rdoc
299
+ #
300
+ # References:
301
+ #
302
+ # - {RFC 4818}[https://www.rfc-editor.org/rfc/rfc4918#section-11.1].
303
+ # - {Wikipedia}[https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#207].
304
+ #
305
+ class HTTPMultiStatus < HTTPSuccess
306
+ # :stopdoc:
307
+ HAS_BODY = true
308
+ end
309
+
310
+ # Response class for <tt>Already Reported (WebDAV)</tt> responses (status code 208).
311
+ #
312
+ # The <tt>Already Reported (WebDAV)</tt> response indicates that the server
313
+ # has received the request,
314
+ # and that the members of a DAV binding have already been enumerated
315
+ # in a preceding part of the (multi-status) response,
316
+ # and are not being included again.
317
+ #
318
+ # :include: doc/net-http/included_getters.rdoc
319
+ #
320
+ # References:
321
+ #
322
+ # - {RFC 5842}[https://www.rfc-editor.org/rfc/rfc5842.html#section-7.1].
323
+ # - {Wikipedia}[https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#208].
324
+ #
325
+ class HTTPAlreadyReported < HTTPSuccess
326
+ # :stopdoc:
327
+ HAS_BODY = true
328
+ end
329
+
330
+ # Response class for <tt>IM Used</tt> responses (status code 226).
331
+ #
332
+ # The <tt>IM Used</tt> response indicates that the server has fulfilled a request
333
+ # for the resource, and the response is a representation of the result
334
+ # of one or more instance-manipulations applied to the current instance.
335
+ #
336
+ # :include: doc/net-http/included_getters.rdoc
337
+ #
338
+ # References:
339
+ #
340
+ # - {RFC 3229}[https://www.rfc-editor.org/rfc/rfc3229.html#section-10.4.1].
341
+ # - {Wikipedia}[https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#226].
342
+ #
343
+ class HTTPIMUsed < HTTPSuccess
344
+ # :stopdoc:
345
+ HAS_BODY = true
346
+ end
347
+
348
+ # Response class for <tt>Multiple Choices</tt> responses (status code 300).
349
+ #
350
+ # The <tt>Multiple Choices</tt> response indicates that the server
351
+ # offers multiple options for the resource from which the client may choose.
352
+ #
353
+ # :include: doc/net-http/included_getters.rdoc
354
+ #
355
+ # References:
356
+ #
357
+ # - {Mozilla}[https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/300].
358
+ # - {RFC 9110}[https://www.rfc-editor.org/rfc/rfc9110.html#name-300-multiple-choices].
359
+ # - {Wikipedia}[https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#300].
360
+ #
361
+ class HTTPMultipleChoices < HTTPRedirection
362
+ # :stopdoc:
363
+ HAS_BODY = true
364
+ end
365
+ HTTPMultipleChoice = HTTPMultipleChoices
366
+
367
+ # Response class for <tt>Moved Permanently</tt> responses (status code 301).
368
+ #
369
+ # The <tt>Moved Permanently</tt> response indicates that links or records
370
+ # returning this response should be updated to use the given URL.
371
+ #
372
+ # :include: doc/net-http/included_getters.rdoc
373
+ #
374
+ # References:
375
+ #
376
+ # - {Mozilla}[https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/301].
377
+ # - {RFC 9110}[https://www.rfc-editor.org/rfc/rfc9110.html#name-301-moved-permanently].
378
+ # - {Wikipedia}[https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#301].
379
+ #
380
+ class HTTPMovedPermanently < HTTPRedirection
381
+ # :stopdoc:
382
+ HAS_BODY = true
383
+ end
384
+
385
+ # Response class for <tt>Found</tt> responses (status code 302).
386
+ #
387
+ # The <tt>Found</tt> response indicates that the client
388
+ # should look at (browse to) another URL.
389
+ #
390
+ # :include: doc/net-http/included_getters.rdoc
391
+ #
392
+ # References:
393
+ #
394
+ # - {Mozilla}[https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/302].
395
+ # - {RFC 9110}[https://www.rfc-editor.org/rfc/rfc9110.html#name-302-found].
396
+ # - {Wikipedia}[https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#302].
397
+ #
398
+ class HTTPFound < HTTPRedirection
399
+ # :stopdoc:
400
+ HAS_BODY = true
401
+ end
402
+ HTTPMovedTemporarily = HTTPFound
403
+
404
+ # Response class for <tt>See Other</tt> responses (status code 303).
405
+ #
406
+ # The response to the request can be found under another URI using the GET method.
407
+ #
408
+ # :include: doc/net-http/included_getters.rdoc
409
+ #
410
+ # References:
411
+ #
412
+ # - {Mozilla}[https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/303].
413
+ # - {RFC 9110}[https://www.rfc-editor.org/rfc/rfc9110.html#name-303-see-other].
414
+ # - {Wikipedia}[https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#303].
415
+ #
416
+ class HTTPSeeOther < HTTPRedirection
417
+ # :stopdoc:
418
+ HAS_BODY = true
419
+ end
420
+
421
+ # Response class for <tt>Not Modified</tt> responses (status code 304).
422
+ #
423
+ # Indicates that the resource has not been modified since the version
424
+ # specified by the request headers.
425
+ #
426
+ # :include: doc/net-http/included_getters.rdoc
427
+ #
428
+ # References:
429
+ #
430
+ # - {Mozilla}[https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/304].
431
+ # - {RFC 9110}[https://www.rfc-editor.org/rfc/rfc9110.html#name-304-not-modified].
432
+ # - {Wikipedia}[https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#304].
433
+ #
434
+ class HTTPNotModified < HTTPRedirection
435
+ # :stopdoc:
436
+ HAS_BODY = false
437
+ end
438
+
439
+ # Response class for <tt>Use Proxy</tt> responses (status code 305).
440
+ #
441
+ # The requested resource is available only through a proxy,
442
+ # whose address is provided in the response.
443
+ #
444
+ # :include: doc/net-http/included_getters.rdoc
445
+ #
446
+ # References:
447
+ #
448
+ # - {RFC 9110}[https://www.rfc-editor.org/rfc/rfc9110.html#name-305-use-proxy].
449
+ # - {Wikipedia}[https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#305].
450
+ #
451
+ class HTTPUseProxy < HTTPRedirection
452
+ # :stopdoc:
453
+ HAS_BODY = false
454
+ end
455
+
456
+ # Response class for <tt>Temporary Redirect</tt> responses (status code 307).
457
+ #
458
+ # The request should be repeated with another URI;
459
+ # however, future requests should still use the original URI.
460
+ #
461
+ # :include: doc/net-http/included_getters.rdoc
462
+ #
463
+ # References:
464
+ #
465
+ # - {Mozilla}[https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/307].
466
+ # - {RFC 9110}[https://www.rfc-editor.org/rfc/rfc9110.html#name-307-temporary-redirect].
467
+ # - {Wikipedia}[https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#307].
468
+ #
469
+ class HTTPTemporaryRedirect < HTTPRedirection
470
+ # :stopdoc:
471
+ HAS_BODY = true
472
+ end
473
+
474
+ # Response class for <tt>Permanent Redirect</tt> responses (status code 308).
475
+ #
476
+ # This and all future requests should be directed to the given URI.
477
+ #
478
+ # :include: doc/net-http/included_getters.rdoc
479
+ #
480
+ # References:
481
+ #
482
+ # - {Mozilla}[https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/308].
483
+ # - {RFC 9110}[https://www.rfc-editor.org/rfc/rfc9110.html#name-308-permanent-redirect].
484
+ # - {Wikipedia}[https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#308].
485
+ #
486
+ class HTTPPermanentRedirect < HTTPRedirection
487
+ # :stopdoc:
488
+ HAS_BODY = true
489
+ end
490
+
491
+ # Response class for <tt>Bad Request</tt> responses (status code 400).
492
+ #
493
+ # The server cannot or will not process the request due to an apparent client error.
494
+ #
495
+ # :include: doc/net-http/included_getters.rdoc
496
+ #
497
+ # References:
498
+ #
499
+ # - {Mozilla}[https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/400].
500
+ # - {RFC 9110}[https://www.rfc-editor.org/rfc/rfc9110.html#name-400-bad-request].
501
+ # - {Wikipedia}[https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#400].
502
+ #
503
+ class HTTPBadRequest < HTTPClientError
504
+ # :stopdoc:
505
+ HAS_BODY = true
506
+ end
507
+
508
+ # Response class for <tt>Unauthorized</tt> responses (status code 401).
509
+ #
510
+ # Authentication is required, but either was not provided or failed.
511
+ #
512
+ # :include: doc/net-http/included_getters.rdoc
513
+ #
514
+ # References:
515
+ #
516
+ # - {Mozilla}[https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/401].
517
+ # - {RFC 9110}[https://www.rfc-editor.org/rfc/rfc9110.html#name-401-unauthorized].
518
+ # - {Wikipedia}[https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#401].
519
+ #
520
+ class HTTPUnauthorized < HTTPClientError
521
+ # :stopdoc:
522
+ HAS_BODY = true
523
+ end
524
+
525
+ # Response class for <tt>Payment Required</tt> responses (status code 402).
526
+ #
527
+ # Reserved for future use.
528
+ #
529
+ # :include: doc/net-http/included_getters.rdoc
530
+ #
531
+ # References:
532
+ #
533
+ # - {Mozilla}[https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/402].
534
+ # - {RFC 9110}[https://www.rfc-editor.org/rfc/rfc9110.html#name-402-payment-required].
535
+ # - {Wikipedia}[https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#402].
536
+ #
537
+ class HTTPPaymentRequired < HTTPClientError
538
+ # :stopdoc:
539
+ HAS_BODY = true
540
+ end
541
+
542
+ # Response class for <tt>Forbidden</tt> responses (status code 403).
543
+ #
544
+ # The request contained valid data and was understood by the server,
545
+ # but the server is refusing action.
546
+ #
547
+ # :include: doc/net-http/included_getters.rdoc
548
+ #
549
+ # References:
550
+ #
551
+ # - {Mozilla}[https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/403].
552
+ # - {RFC 9110}[https://www.rfc-editor.org/rfc/rfc9110.html#name-403-forbidden].
553
+ # - {Wikipedia}[https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#403].
554
+ #
555
+ class HTTPForbidden < HTTPClientError
556
+ # :stopdoc:
557
+ HAS_BODY = true
558
+ end
559
+
560
+ # Response class for <tt>Not Found</tt> responses (status code 404).
561
+ #
562
+ # The requested resource could not be found but may be available in the future.
563
+ #
564
+ # :include: doc/net-http/included_getters.rdoc
565
+ #
566
+ # References:
567
+ #
568
+ # - {Mozilla}[https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/404].
569
+ # - {RFC 9110}[https://www.rfc-editor.org/rfc/rfc9110.html#name-404-not-found].
570
+ # - {Wikipedia}[https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#404].
571
+ #
572
+ class HTTPNotFound < HTTPClientError
573
+ # :stopdoc:
574
+ HAS_BODY = true
575
+ end
576
+
577
+ # Response class for <tt>Method Not Allowed</tt> responses (status code 405).
578
+ #
579
+ # The request method is not supported for the requested resource.
580
+ #
581
+ # :include: doc/net-http/included_getters.rdoc
582
+ #
583
+ # References:
584
+ #
585
+ # - {Mozilla}[https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/405].
586
+ # - {RFC 9110}[https://www.rfc-editor.org/rfc/rfc9110.html#name-405-method-not-allowed].
587
+ # - {Wikipedia}[https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#405].
588
+ #
589
+ class HTTPMethodNotAllowed < HTTPClientError
590
+ # :stopdoc:
591
+ HAS_BODY = true
592
+ end
593
+
594
+ # Response class for <tt>Not Acceptable</tt> responses (status code 406).
595
+ #
596
+ # The requested resource is capable of generating only content
597
+ # that not acceptable according to the Accept headers sent in the request.
598
+ #
599
+ # :include: doc/net-http/included_getters.rdoc
600
+ #
601
+ # References:
602
+ #
603
+ # - {Mozilla}[https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/406].
604
+ # - {RFC 9110}[https://www.rfc-editor.org/rfc/rfc9110.html#name-406-not-acceptable].
605
+ # - {Wikipedia}[https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#406].
606
+ #
607
+ class HTTPNotAcceptable < HTTPClientError
608
+ # :stopdoc:
609
+ HAS_BODY = true
610
+ end
611
+
612
+ # Response class for <tt>Proxy Authentication Required</tt> responses (status code 407).
613
+ #
614
+ # The client must first authenticate itself with the proxy.
615
+ #
616
+ # :include: doc/net-http/included_getters.rdoc
617
+ #
618
+ # References:
619
+ #
620
+ # - {Mozilla}[https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/407].
621
+ # - {RFC 9110}[https://www.rfc-editor.org/rfc/rfc9110.html#name-407-proxy-authentication-re].
622
+ # - {Wikipedia}[https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#407].
623
+ #
624
+ class HTTPProxyAuthenticationRequired < HTTPClientError
625
+ # :stopdoc:
626
+ HAS_BODY = true
627
+ end
628
+
629
+ # Response class for <tt>Request Timeout</tt> responses (status code 408).
630
+ #
631
+ # The server timed out waiting for the request.
632
+ #
633
+ # :include: doc/net-http/included_getters.rdoc
634
+ #
635
+ # References:
636
+ #
637
+ # - {Mozilla}[https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/408].
638
+ # - {RFC 9110}[https://www.rfc-editor.org/rfc/rfc9110.html#name-408-request-timeout].
639
+ # - {Wikipedia}[https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#408].
640
+ #
641
+ class HTTPRequestTimeout < HTTPClientError
642
+ # :stopdoc:
643
+ HAS_BODY = true
644
+ end
645
+ HTTPRequestTimeOut = HTTPRequestTimeout
646
+
647
+ # Response class for <tt>Conflict</tt> responses (status code 409).
648
+ #
649
+ # The request could not be processed because of conflict in the current state of the resource.
650
+ #
651
+ # :include: doc/net-http/included_getters.rdoc
652
+ #
653
+ # References:
654
+ #
655
+ # - {Mozilla}[https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/409].
656
+ # - {RFC 9110}[https://www.rfc-editor.org/rfc/rfc9110.html#name-409-conflict].
657
+ # - {Wikipedia}[https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#409].
658
+ #
659
+ class HTTPConflict < HTTPClientError
660
+ # :stopdoc:
661
+ HAS_BODY = true
662
+ end
663
+
664
+ # Response class for <tt>Gone</tt> responses (status code 410).
665
+ #
666
+ # The resource requested was previously in use but is no longer available
667
+ # and will not be available again.
668
+ #
669
+ # :include: doc/net-http/included_getters.rdoc
670
+ #
671
+ # References:
672
+ #
673
+ # - {Mozilla}[https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/410].
674
+ # - {RFC 9110}[https://www.rfc-editor.org/rfc/rfc9110.html#name-410-gone].
675
+ # - {Wikipedia}[https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#410].
676
+ #
677
+ class HTTPGone < HTTPClientError
678
+ # :stopdoc:
679
+ HAS_BODY = true
680
+ end
681
+
682
+ # Response class for <tt>Length Required</tt> responses (status code 411).
683
+ #
684
+ # The request did not specify the length of its content,
685
+ # which is required by the requested resource.
686
+ #
687
+ # :include: doc/net-http/included_getters.rdoc
688
+ #
689
+ # References:
690
+ #
691
+ # - {Mozilla}[https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/411].
692
+ # - {RFC 9110}[https://www.rfc-editor.org/rfc/rfc9110.html#name-411-length-required].
693
+ # - {Wikipedia}[https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#411].
694
+ #
695
+ class HTTPLengthRequired < HTTPClientError
696
+ # :stopdoc:
697
+ HAS_BODY = true
698
+ end
699
+
700
+ # Response class for <tt>Precondition Failed</tt> responses (status code 412).
701
+ #
702
+ # The server does not meet one of the preconditions
703
+ # specified in the request headers.
704
+ #
705
+ # :include: doc/net-http/included_getters.rdoc
706
+ #
707
+ # References:
708
+ #
709
+ # - {Mozilla}[https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/412].
710
+ # - {RFC 9110}[https://www.rfc-editor.org/rfc/rfc9110.html#name-412-precondition-failed].
711
+ # - {Wikipedia}[https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#412].
712
+ #
713
+ class HTTPPreconditionFailed < HTTPClientError
714
+ # :stopdoc:
715
+ HAS_BODY = true
716
+ end
717
+
718
+ # Response class for <tt>Payload Too Large</tt> responses (status code 413).
719
+ #
720
+ # The request is larger than the server is willing or able to process.
721
+ #
722
+ # :include: doc/net-http/included_getters.rdoc
723
+ #
724
+ # References:
725
+ #
726
+ # - {Mozilla}[https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/413].
727
+ # - {RFC 9110}[https://www.rfc-editor.org/rfc/rfc9110.html#name-413-content-too-large].
728
+ # - {Wikipedia}[https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#413].
729
+ #
730
+ class HTTPPayloadTooLarge < HTTPClientError
731
+ # :stopdoc:
732
+ HAS_BODY = true
733
+ end
734
+ HTTPRequestEntityTooLarge = HTTPPayloadTooLarge
735
+
736
+ # Response class for <tt>URI Too Long</tt> responses (status code 414).
737
+ #
738
+ # The URI provided was too long for the server to process.
739
+ #
740
+ # :include: doc/net-http/included_getters.rdoc
741
+ #
742
+ # References:
743
+ #
744
+ # - {Mozilla}[https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/414].
745
+ # - {RFC 9110}[https://www.rfc-editor.org/rfc/rfc9110.html#name-414-uri-too-long].
746
+ # - {Wikipedia}[https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#414].
747
+ #
748
+ class HTTPURITooLong < HTTPClientError
749
+ # :stopdoc:
750
+ HAS_BODY = true
751
+ end
752
+ HTTPRequestURITooLong = HTTPURITooLong
753
+ HTTPRequestURITooLarge = HTTPRequestURITooLong
754
+
755
+ # Response class for <tt>Unsupported Media Type</tt> responses (status code 415).
756
+ #
757
+ # The request entity has a media type which the server or resource does not support.
758
+ #
759
+ # :include: doc/net-http/included_getters.rdoc
760
+ #
761
+ # References:
762
+ #
763
+ # - {Mozilla}[https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/415].
764
+ # - {RFC 9110}[https://www.rfc-editor.org/rfc/rfc9110.html#name-415-unsupported-media-type].
765
+ # - {Wikipedia}[https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#415].
766
+ #
767
+ class HTTPUnsupportedMediaType < HTTPClientError
768
+ # :stopdoc:
769
+ HAS_BODY = true
770
+ end
771
+
772
+ # Response class for <tt>Range Not Satisfiable</tt> responses (status code 416).
773
+ #
774
+ # The request entity has a media type which the server or resource does not support.
775
+ #
776
+ # :include: doc/net-http/included_getters.rdoc
777
+ #
778
+ # References:
779
+ #
780
+ # - {Mozilla}[https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/416].
781
+ # - {RFC 9110}[https://www.rfc-editor.org/rfc/rfc9110.html#name-416-range-not-satisfiable].
782
+ # - {Wikipedia}[https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#416].
783
+ #
784
+ class HTTPRangeNotSatisfiable < HTTPClientError
785
+ # :stopdoc:
786
+ HAS_BODY = true
787
+ end
788
+ HTTPRequestedRangeNotSatisfiable = HTTPRangeNotSatisfiable
789
+
790
+ # Response class for <tt>Expectation Failed</tt> responses (status code 417).
791
+ #
792
+ # The server cannot meet the requirements of the Expect request-header field.
793
+ #
794
+ # :include: doc/net-http/included_getters.rdoc
795
+ #
796
+ # References:
797
+ #
798
+ # - {Mozilla}[https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/417].
799
+ # - {RFC 9110}[https://www.rfc-editor.org/rfc/rfc9110.html#name-417-expectation-failed].
800
+ # - {Wikipedia}[https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#417].
801
+ #
802
+ class HTTPExpectationFailed < HTTPClientError
803
+ # :stopdoc:
804
+ HAS_BODY = true
805
+ end
806
+
807
+ # 418 I'm a teapot - RFC 2324; a joke RFC
808
+ # See https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#418.
809
+
810
+ # 420 Enhance Your Calm - Twitter
811
+
812
+ # Response class for <tt>Misdirected Request</tt> responses (status code 421).
813
+ #
814
+ # The request was directed at a server that is not able to produce a response.
815
+ #
816
+ # :include: doc/net-http/included_getters.rdoc
817
+ #
818
+ # References:
819
+ #
820
+ # - {RFC 9110}[https://www.rfc-editor.org/rfc/rfc9110.html#name-421-misdirected-request].
821
+ # - {Wikipedia}[https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#421].
822
+ #
823
+ class HTTPMisdirectedRequest < HTTPClientError
824
+ # :stopdoc:
825
+ HAS_BODY = true
826
+ end
827
+
828
+ # Response class for <tt>Unprocessable Entity</tt> responses (status code 422).
829
+ #
830
+ # The request was well-formed but had semantic errors.
831
+ #
832
+ # :include: doc/net-http/included_getters.rdoc
833
+ #
834
+ # References:
835
+ #
836
+ # - {Mozilla}[https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/422].
837
+ # - {RFC 9110}[https://www.rfc-editor.org/rfc/rfc9110.html#name-422-unprocessable-content].
838
+ # - {Wikipedia}[https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#422].
839
+ #
840
+ class HTTPUnprocessableEntity < HTTPClientError
841
+ # :stopdoc:
842
+ HAS_BODY = true
843
+ end
844
+
845
+ # Response class for <tt>Locked (WebDAV)</tt> responses (status code 423).
846
+ #
847
+ # The requested resource is locked.
848
+ #
849
+ # :include: doc/net-http/included_getters.rdoc
850
+ #
851
+ # References:
852
+ #
853
+ # - {RFC 4918}[https://www.rfc-editor.org/rfc/rfc4918#section-11.3].
854
+ # - {Wikipedia}[https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#423].
855
+ #
856
+ class HTTPLocked < HTTPClientError
857
+ # :stopdoc:
858
+ HAS_BODY = true
859
+ end
860
+
861
+ # Response class for <tt>Failed Dependency (WebDAV)</tt> responses (status code 424).
862
+ #
863
+ # The request failed because it depended on another request and that request failed.
864
+ # See {424 Failed Dependency (WebDAV)}[https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#424].
865
+ #
866
+ # :include: doc/net-http/included_getters.rdoc
867
+ #
868
+ # References:
869
+ #
870
+ # - {RFC 4918}[https://www.rfc-editor.org/rfc/rfc4918#section-11.4].
871
+ # - {Wikipedia}[https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#424].
872
+ #
873
+ class HTTPFailedDependency < HTTPClientError
874
+ # :stopdoc:
875
+ HAS_BODY = true
876
+ end
877
+
878
+ # 425 Too Early
879
+ # https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#425.
880
+
881
+ # Response class for <tt>Upgrade Required</tt> responses (status code 426).
882
+ #
883
+ # The client should switch to the protocol given in the Upgrade header field.
884
+ #
885
+ # :include: doc/net-http/included_getters.rdoc
886
+ #
887
+ # References:
888
+ #
889
+ # - {Mozilla}[https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/426].
890
+ # - {RFC 9110}[https://www.rfc-editor.org/rfc/rfc9110.html#name-426-upgrade-required].
891
+ # - {Wikipedia}[https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#426].
892
+ #
893
+ class HTTPUpgradeRequired < HTTPClientError
894
+ # :stopdoc:
895
+ HAS_BODY = true
896
+ end
897
+
898
+ # Response class for <tt>Precondition Required</tt> responses (status code 428).
899
+ #
900
+ # The origin server requires the request to be conditional.
901
+ #
902
+ # :include: doc/net-http/included_getters.rdoc
903
+ #
904
+ # References:
905
+ #
906
+ # - {Mozilla}[https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/428].
907
+ # - {RFC 6585}[https://www.rfc-editor.org/rfc/rfc6585#section-3].
908
+ # - {Wikipedia}[https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#428].
909
+ #
910
+ class HTTPPreconditionRequired < HTTPClientError
911
+ # :stopdoc:
912
+ HAS_BODY = true
913
+ end
914
+
915
+ # Response class for <tt>Too Many Requests</tt> responses (status code 429).
916
+ #
917
+ # The user has sent too many requests in a given amount of time.
918
+ #
919
+ # :include: doc/net-http/included_getters.rdoc
920
+ #
921
+ # References:
922
+ #
923
+ # - {Mozilla}[https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/429].
924
+ # - {RFC 6585}[https://www.rfc-editor.org/rfc/rfc6585#section-4].
925
+ # - {Wikipedia}[https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#429].
926
+ #
927
+ class HTTPTooManyRequests < HTTPClientError
928
+ # :stopdoc:
929
+ HAS_BODY = true
930
+ end
931
+
932
+ # Response class for <tt>Request Header Fields Too Large</tt> responses (status code 431).
933
+ #
934
+ # An individual header field is too large,
935
+ # or all the header fields collectively, are too large.
936
+ #
937
+ # :include: doc/net-http/included_getters.rdoc
938
+ #
939
+ # References:
940
+ #
941
+ # - {Mozilla}[https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/431].
942
+ # - {RFC 6585}[https://www.rfc-editor.org/rfc/rfc6585#section-5].
943
+ # - {Wikipedia}[https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#431].
944
+ #
945
+ class HTTPRequestHeaderFieldsTooLarge < HTTPClientError
946
+ # :stopdoc:
947
+ HAS_BODY = true
948
+ end
949
+
950
+ # Response class for <tt>Unavailable For Legal Reasons</tt> responses (status code 451).
951
+ #
952
+ # A server operator has received a legal demand to deny access to a resource or to a set of resources
953
+ # that includes the requested resource.
954
+ #
955
+ # :include: doc/net-http/included_getters.rdoc
956
+ #
957
+ # References:
958
+ #
959
+ # - {Mozilla}[https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/451].
960
+ # - {RFC 7725}[https://www.rfc-editor.org/rfc/rfc7725.html#section-3].
961
+ # - {Wikipedia}[https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#451].
962
+ #
963
+ class HTTPUnavailableForLegalReasons < HTTPClientError
964
+ # :stopdoc:
965
+ HAS_BODY = true
966
+ end
967
+ # 444 No Response - Nginx
968
+ # 449 Retry With - Microsoft
969
+ # 450 Blocked by Windows Parental Controls - Microsoft
970
+ # 499 Client Closed Request - Nginx
971
+
972
+ # Response class for <tt>Internal Server Error</tt> responses (status code 500).
973
+ #
974
+ # An unexpected condition was encountered and no more specific message is suitable.
975
+ #
976
+ # :include: doc/net-http/included_getters.rdoc
977
+ #
978
+ # References:
979
+ #
980
+ # - {Mozilla}[https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/500].
981
+ # - {RFC 9110}[https://www.rfc-editor.org/rfc/rfc9110.html#name-500-internal-server-error].
982
+ # - {Wikipedia}[https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#500].
983
+ #
984
+ class HTTPInternalServerError < HTTPServerError
985
+ # :stopdoc:
986
+ HAS_BODY = true
987
+ end
988
+
989
+ # Response class for <tt>Not Implemented</tt> responses (status code 501).
990
+ #
991
+ # The server either does not recognize the request method,
992
+ # or it lacks the ability to fulfil the request.
993
+ #
994
+ # :include: doc/net-http/included_getters.rdoc
995
+ #
996
+ # References:
997
+ #
998
+ # - {Mozilla}[https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/501].
999
+ # - {RFC 9110}[https://www.rfc-editor.org/rfc/rfc9110.html#name-501-not-implemented].
1000
+ # - {Wikipedia}[https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#501].
1001
+ #
1002
+ class HTTPNotImplemented < HTTPServerError
1003
+ # :stopdoc:
1004
+ HAS_BODY = true
1005
+ end
1006
+
1007
+ # Response class for <tt>Bad Gateway</tt> responses (status code 502).
1008
+ #
1009
+ # The server was acting as a gateway or proxy
1010
+ # and received an invalid response from the upstream server.
1011
+ #
1012
+ # :include: doc/net-http/included_getters.rdoc
1013
+ #
1014
+ # References:
1015
+ #
1016
+ # - {Mozilla}[https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/502].
1017
+ # - {RFC 9110}[https://www.rfc-editor.org/rfc/rfc9110.html#name-502-bad-gateway].
1018
+ # - {Wikipedia}[https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#502].
1019
+ #
1020
+ class HTTPBadGateway < HTTPServerError
1021
+ # :stopdoc:
1022
+ HAS_BODY = true
1023
+ end
1024
+
1025
+ # Response class for <tt>Service Unavailable</tt> responses (status code 503).
1026
+ #
1027
+ # The server cannot handle the request
1028
+ # (because it is overloaded or down for maintenance).
1029
+ #
1030
+ # :include: doc/net-http/included_getters.rdoc
1031
+ #
1032
+ # References:
1033
+ #
1034
+ # - {Mozilla}[https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/503].
1035
+ # - {RFC 9110}[https://www.rfc-editor.org/rfc/rfc9110.html#name-503-service-unavailable].
1036
+ # - {Wikipedia}[https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#503].
1037
+ #
1038
+ class HTTPServiceUnavailable < HTTPServerError
1039
+ # :stopdoc:
1040
+ HAS_BODY = true
1041
+ end
1042
+
1043
+ # Response class for <tt>Gateway Timeout</tt> responses (status code 504).
1044
+ #
1045
+ # The server was acting as a gateway or proxy
1046
+ # and did not receive a timely response from the upstream server.
1047
+ #
1048
+ # :include: doc/net-http/included_getters.rdoc
1049
+ #
1050
+ # References:
1051
+ #
1052
+ # - {Mozilla}[https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/504].
1053
+ # - {RFC 9110}[https://www.rfc-editor.org/rfc/rfc9110.html#name-504-gateway-timeout].
1054
+ # - {Wikipedia}[https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#504].
1055
+ #
1056
+ class HTTPGatewayTimeout < HTTPServerError
1057
+ # :stopdoc:
1058
+ HAS_BODY = true
1059
+ end
1060
+ HTTPGatewayTimeOut = HTTPGatewayTimeout
1061
+
1062
+ # Response class for <tt>HTTP Version Not Supported</tt> responses (status code 505).
1063
+ #
1064
+ # The server does not support the HTTP version used in the request.
1065
+ #
1066
+ # :include: doc/net-http/included_getters.rdoc
1067
+ #
1068
+ # References:
1069
+ #
1070
+ # - {Mozilla}[https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/505].
1071
+ # - {RFC 9110}[https://www.rfc-editor.org/rfc/rfc9110.html#name-505-http-version-not-suppor].
1072
+ # - {Wikipedia}[https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#505].
1073
+ #
1074
+ class HTTPVersionNotSupported < HTTPServerError
1075
+ # :stopdoc:
1076
+ HAS_BODY = true
1077
+ end
1078
+
1079
+ # Response class for <tt>Variant Also Negotiates</tt> responses (status code 506).
1080
+ #
1081
+ # Transparent content negotiation for the request results in a circular reference.
1082
+ #
1083
+ # :include: doc/net-http/included_getters.rdoc
1084
+ #
1085
+ # References:
1086
+ #
1087
+ # - {Mozilla}[https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/506].
1088
+ # - {RFC 2295}[https://www.rfc-editor.org/rfc/rfc2295#section-8.1].
1089
+ # - {Wikipedia}[https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#506].
1090
+ #
1091
+ class HTTPVariantAlsoNegotiates < HTTPServerError
1092
+ # :stopdoc:
1093
+ HAS_BODY = true
1094
+ end
1095
+
1096
+ # Response class for <tt>Insufficient Storage (WebDAV)</tt> responses (status code 507).
1097
+ #
1098
+ # The server is unable to store the representation needed to complete the request.
1099
+ #
1100
+ # :include: doc/net-http/included_getters.rdoc
1101
+ #
1102
+ # References:
1103
+ #
1104
+ # - {Mozilla}[https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/507].
1105
+ # - {RFC 4918}[https://www.rfc-editor.org/rfc/rfc4918#section-11.5].
1106
+ # - {Wikipedia}[https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#507].
1107
+ #
1108
+ class HTTPInsufficientStorage < HTTPServerError
1109
+ # :stopdoc:
1110
+ HAS_BODY = true
1111
+ end
1112
+
1113
+ # Response class for <tt>Loop Detected (WebDAV)</tt> responses (status code 508).
1114
+ #
1115
+ # The server detected an infinite loop while processing the request.
1116
+ #
1117
+ # :include: doc/net-http/included_getters.rdoc
1118
+ #
1119
+ # References:
1120
+ #
1121
+ # - {Mozilla}[https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/508].
1122
+ # - {RFC 5942}[https://www.rfc-editor.org/rfc/rfc5842.html#section-7.2].
1123
+ # - {Wikipedia}[https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#508].
1124
+ #
1125
+ class HTTPLoopDetected < HTTPServerError
1126
+ # :stopdoc:
1127
+ HAS_BODY = true
1128
+ end
1129
+ # 509 Bandwidth Limit Exceeded - Apache bw/limited extension
1130
+
1131
+ # Response class for <tt>Not Extended</tt> responses (status code 510).
1132
+ #
1133
+ # Further extensions to the request are required for the server to fulfill it.
1134
+ #
1135
+ # :include: doc/net-http/included_getters.rdoc
1136
+ #
1137
+ # References:
1138
+ #
1139
+ # - {Mozilla}[https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/510].
1140
+ # - {RFC 2774}[https://www.rfc-editor.org/rfc/rfc2774.html#section-7].
1141
+ # - {Wikipedia}[https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#510].
1142
+ #
1143
+ class HTTPNotExtended < HTTPServerError
1144
+ # :stopdoc:
1145
+ HAS_BODY = true
1146
+ end
1147
+
1148
+ # Response class for <tt>Network Authentication Required</tt> responses (status code 511).
1149
+ #
1150
+ # The client needs to authenticate to gain network access.
1151
+ #
1152
+ # :include: doc/net-http/included_getters.rdoc
1153
+ #
1154
+ # References:
1155
+ #
1156
+ # - {Mozilla}[https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/511].
1157
+ # - {RFC 6585}[https://www.rfc-editor.org/rfc/rfc6585#section-6].
1158
+ # - {Wikipedia}[https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#511].
1159
+ #
1160
+ class HTTPNetworkAuthenticationRequired < HTTPServerError
1161
+ # :stopdoc:
1162
+ HAS_BODY = true
1163
+ end
1164
+
1165
+ end
1166
+
1167
+ class Net::HTTPResponse
1168
+ # :stopdoc:
1169
+ CODE_CLASS_TO_OBJ = {
1170
+ '1' => Net::HTTPInformation,
1171
+ '2' => Net::HTTPSuccess,
1172
+ '3' => Net::HTTPRedirection,
1173
+ '4' => Net::HTTPClientError,
1174
+ '5' => Net::HTTPServerError
1175
+ }.freeze
1176
+ CODE_TO_OBJ = {
1177
+ '100' => Net::HTTPContinue,
1178
+ '101' => Net::HTTPSwitchProtocol,
1179
+ '102' => Net::HTTPProcessing,
1180
+ '103' => Net::HTTPEarlyHints,
1181
+
1182
+ '200' => Net::HTTPOK,
1183
+ '201' => Net::HTTPCreated,
1184
+ '202' => Net::HTTPAccepted,
1185
+ '203' => Net::HTTPNonAuthoritativeInformation,
1186
+ '204' => Net::HTTPNoContent,
1187
+ '205' => Net::HTTPResetContent,
1188
+ '206' => Net::HTTPPartialContent,
1189
+ '207' => Net::HTTPMultiStatus,
1190
+ '208' => Net::HTTPAlreadyReported,
1191
+ '226' => Net::HTTPIMUsed,
1192
+
1193
+ '300' => Net::HTTPMultipleChoices,
1194
+ '301' => Net::HTTPMovedPermanently,
1195
+ '302' => Net::HTTPFound,
1196
+ '303' => Net::HTTPSeeOther,
1197
+ '304' => Net::HTTPNotModified,
1198
+ '305' => Net::HTTPUseProxy,
1199
+ '307' => Net::HTTPTemporaryRedirect,
1200
+ '308' => Net::HTTPPermanentRedirect,
1201
+
1202
+ '400' => Net::HTTPBadRequest,
1203
+ '401' => Net::HTTPUnauthorized,
1204
+ '402' => Net::HTTPPaymentRequired,
1205
+ '403' => Net::HTTPForbidden,
1206
+ '404' => Net::HTTPNotFound,
1207
+ '405' => Net::HTTPMethodNotAllowed,
1208
+ '406' => Net::HTTPNotAcceptable,
1209
+ '407' => Net::HTTPProxyAuthenticationRequired,
1210
+ '408' => Net::HTTPRequestTimeout,
1211
+ '409' => Net::HTTPConflict,
1212
+ '410' => Net::HTTPGone,
1213
+ '411' => Net::HTTPLengthRequired,
1214
+ '412' => Net::HTTPPreconditionFailed,
1215
+ '413' => Net::HTTPPayloadTooLarge,
1216
+ '414' => Net::HTTPURITooLong,
1217
+ '415' => Net::HTTPUnsupportedMediaType,
1218
+ '416' => Net::HTTPRangeNotSatisfiable,
1219
+ '417' => Net::HTTPExpectationFailed,
1220
+ '421' => Net::HTTPMisdirectedRequest,
1221
+ '422' => Net::HTTPUnprocessableEntity,
1222
+ '423' => Net::HTTPLocked,
1223
+ '424' => Net::HTTPFailedDependency,
1224
+ '426' => Net::HTTPUpgradeRequired,
1225
+ '428' => Net::HTTPPreconditionRequired,
1226
+ '429' => Net::HTTPTooManyRequests,
1227
+ '431' => Net::HTTPRequestHeaderFieldsTooLarge,
1228
+ '451' => Net::HTTPUnavailableForLegalReasons,
1229
+
1230
+ '500' => Net::HTTPInternalServerError,
1231
+ '501' => Net::HTTPNotImplemented,
1232
+ '502' => Net::HTTPBadGateway,
1233
+ '503' => Net::HTTPServiceUnavailable,
1234
+ '504' => Net::HTTPGatewayTimeout,
1235
+ '505' => Net::HTTPVersionNotSupported,
1236
+ '506' => Net::HTTPVariantAlsoNegotiates,
1237
+ '507' => Net::HTTPInsufficientStorage,
1238
+ '508' => Net::HTTPLoopDetected,
1239
+ '510' => Net::HTTPNotExtended,
1240
+ '511' => Net::HTTPNetworkAuthenticationRequired,
1241
+ }.freeze
1242
+ end