myexperiment-hackers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[myexperiment-hackers] [3361] branches/wf4ever/config/initializers/web_c


From: noreply
Subject: [myexperiment-hackers] [3361] branches/wf4ever/config/initializers/web_cache.rb: modified webcache to use sha1 filenames and added uri/timestamp
Date: Fri, 25 Jan 2013 17:11:34 +0000 (UTC)

Revision
3361
Author
dgc
Date
2013-01-25 17:11:33 +0000 (Fri, 25 Jan 2013)

Log Message

modified webcache to use sha1 filenames and added uri/timestamp

Modified Paths

Diff

Modified: branches/wf4ever/config/initializers/web_cache.rb (3360 => 3361)


--- branches/wf4ever/config/initializers/web_cache.rb	2013-01-25 17:02:56 UTC (rev 3360)
+++ branches/wf4ever/config/initializers/web_cache.rb	2013-01-25 17:11:33 UTC (rev 3361)
@@ -10,7 +10,7 @@
   def do_request(method, uripath, options = {})
 
     def cache_file_name(uri)
-      "tmp/webcache/#{Rack::Utils.escape(uri)}"
+      "tmp/webcache/#{Digest::SHA1.hexdigest(uri)}"
     end
 
     def exist_in_cache?(uri)
@@ -26,12 +26,23 @@
     end
 
     def load_from_cache(uri)
-      YAML::load(File.read(cache_file_name(uri)))
+      envelope = YAML::load(File.read(cache_file_name(uri)))
+      [envelope[:status], envelope[:reason], envelope[:headers], envelope[:body]]
     end
 
     def save_to_cache(uri, data)
+
+      envelope = {
+        :uri       => uri,
+        :timestamp => Time.now.to_s,
+        :status    => data[0],
+        :reason    => data[1],
+        :headers   => data[2],
+        :body      => data[3]
+      }
+
       File.open(cache_file_name(uri), "w+") do |f|
-        f.puts(data.to_yaml)
+        f.puts(envelope.to_yaml)
       end
     end
 

reply via email to

[Prev in Thread] Current Thread [Next in Thread]