From de240968fd1b3515d1de1a581d5a3b98e7749e7b Mon Sep 17 00:00:00 2001 From: geemus Date: Fri, 14 May 2010 12:37:28 -0700 Subject: [PATCH] [s3] matching version_id related fix for head_object --- lib/fog/aws/requests/s3/head_object.rb | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/lib/fog/aws/requests/s3/head_object.rb b/lib/fog/aws/requests/s3/head_object.rb index acba02baf..219d47968 100644 --- a/lib/fog/aws/requests/s3/head_object.rb +++ b/lib/fog/aws/requests/s3/head_object.rb @@ -25,7 +25,15 @@ module Fog # * 'ETag'<~String> - Etag of object # * 'Last-Modified'<~String> - Last modified timestamp for object def head_object(bucket_name, object_name, options={}) - version_id = options.delete('versionId') + unless bucket_name + raise ArgumentError.new('bucket_name is required') + end + unless object_name + raise ArgumentError.new('object_name is required') + end + if version_id = options.delete('versionId') + query = CGI.escape(version_id) + end headers = {} headers['If-Modified-Since'] = options['If-Modified-Since'].utc.strftime("%a, %d %b %Y %H:%M:%S +0000") if options['If-Modified-Since'] headers['If-Unmodified-Since'] = options['If-Unmodified-Since'].utc.strftime("%a, %d %b %Y %H:%M:%S +0000") if options['If-Modified-Since']