5383: blob.rb uses db_current_time as well. since it is using static methods, the...
[arvados.git] / services / api / app / models / blob.rb
index 7d16048bf81a29d8a806caa5904e2870a42fbf6e..799279d0400f31c2cf54feb503a1f48401e96321 100644 (file)
@@ -1,4 +1,5 @@
 class Blob
+  extend DbCurrentTime
 
   def initialize locator
     @locator = locator
@@ -43,7 +44,7 @@ class Blob
       end
       timestamp = opts[:expire]
     else
-      timestamp = Time.now.to_i + (opts[:ttl] || 1209600)
+      timestamp = db_current_time.to_i + (opts[:ttl] || 1209600)
     end
     timestamp_hex = timestamp.to_s(16)
     # => "53163cb4"
@@ -90,7 +91,7 @@ class Blob
     if !timestamp.match /^[\da-f]+$/
       raise Blob::InvalidSignatureError.new 'Timestamp is not a base16 number.'
     end
-    if timestamp.to_i(16) < Time.now.to_i
+    if timestamp.to_i(16) < db_current_time.to_i
       raise Blob::InvalidSignatureError.new 'Signature expiry time has passed.'
     end