|
@@ -1,9 +1,10 @@
|
|
|
module ActiveResource
|
|
|
class DetailedLogSubscriber < ActiveSupport::LogSubscriber
|
|
|
+ VERSION_EOL_WARNING_HEADER = 'x-shopify-api-version-warning'
|
|
|
+ VERSION_DEPRECATION_HEADER = 'x-shopify-api-deprecated-reason'
|
|
|
def request(event)
|
|
|
log_request_response_details(event)
|
|
|
- warn_on_deprecated_header(event)
|
|
|
- warn_on_version_eol_warning_header(event)
|
|
|
+ warn_on_deprecated_header_or_version_eol_header(event)
|
|
|
end
|
|
|
|
|
|
def logger
|
|
@@ -22,28 +23,20 @@ module ActiveResource
|
|
|
info "Response:\n#{event.payload[:response].body}"
|
|
|
end
|
|
|
|
|
|
- def warn_on_deprecated_header(event)
|
|
|
+ def warn_on_deprecated_header_or_version_eol_header(event)
|
|
|
payload = event.payload
|
|
|
|
|
|
payload[:response].each do |header_name, header_value|
|
|
|
case header_name.downcase
|
|
|
- when 'x-shopify-api-deprecated-reason'
|
|
|
+ when VERSION_DEPRECATION_HEADER
|
|
|
warning_message = <<-MSG
|
|
|
[DEPRECATED] ShopifyAPI made a call to #{payload[:method].upcase} #{payload[:path]}, and this call made
|
|
|
use of a deprecated endpoint, behaviour, or parameter. See #{header_value} for more details.
|
|
|
MSG
|
|
|
|
|
|
warn warning_message
|
|
|
- end
|
|
|
- end
|
|
|
- end
|
|
|
|
|
|
- def warn_on_version_eol_warning_header(event)
|
|
|
- payload = event.payload
|
|
|
-
|
|
|
- payload[:response].each do |header_name, header_value|
|
|
|
- case header_name.downcase
|
|
|
- when 'x-shopify-api-version-warning'
|
|
|
+ when VERSION_EOL_WARNING_HEADER
|
|
|
warning_message = <<-MSG
|
|
|
[Version EOL Warning] ShopifyAPI made a call to #{payload[:method].upcase} #{payload[:path]}, and this call made
|
|
|
use of an API version that is expired or will expire within 30 days. See #{header_value} for more details.
|