Sha256: cadfeffe757144c3558f3be6729f94cb07d35405c6c76e7153621c16164ecac6

Contents?: true

Size: 887 Bytes

Versions: 2

Compression:

Stored size: 887 Bytes

Contents

class Quandl::Client::Base
module Model
  
  extend ActiveSupport::Concern

  included do

    include Her::Model
    use_api Quandl::Client::Base.her_api
    
    before_save :touch_request_started_at
    after_save :touch_request_finished_at
    
    before_destroy :touch_request_started_at
    after_destroy :touch_request_finished_at
    
    attr_accessor :request_started_at, :request_finished_at
    
  end
  
  def elapsed_request_time_ms
    elapsed_request_time.to_f.microseconds.to_s + 'ms'
  end
  
  def elapsed_request_time
    return nil unless request_finished_at.is_a?(Time) && request_started_at.is_a?(Time)
    @elapsed_request_time ||= (request_finished_at - request_started_at)
  end

  private
  
  def touch_request_started_at
    self.request_started_at = Time.now
  end
  
  def touch_request_finished_at
    self.request_finished_at = Time.now
  end
  
end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
quandl_client-2.10.2 lib/quandl/client/base/model.rb
quandl_client-2.10.1 lib/quandl/client/base/model.rb