| 
					
				 | 
			
			
				@@ -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. 
			 |