class SpeedupDashboard::RequestStore

Public Class Methods

connection() click to toggle source
# File lib/speedup-dashboard/request_store.rb, line 32
def self.connection
  @connection || establish_connection(Rails.configuration.speedup_dashboard.adapter)
end
establish_connection(adapter_options) click to toggle source
# File lib/speedup-dashboard/request_store.rb, line 7
def self.establish_connection(adapter_options)
  adapter, *parameters = *Array.wrap(adapter_options).flatten

  @connection = case adapter
  when Symbol
    adapter_class_name = adapter.to_s.camelize
    adapter_class =
      begin
        require "speedup/adapters/#{adapter}"
      rescue LoadError => e
        raise "Could not find adapter for #{adapter} (#{e})"
      else
        ::Speedup::Adapters.const_get(adapter_class_name)
      end
    adapter_class.new(*parameters)
  when nil
    require 'speedup/adapters/memory'
    ::Speedup::Adapters::Memory.new
  else
    adapter
  end

  @connection
end
new(request_id) click to toggle source
# File lib/speedup-dashboard/request_store.rb, line 36
def initialize(request_id)
  @request_id = request_id
end

Public Instance Methods

id() click to toggle source
# File lib/speedup-dashboard/request_store.rb, line 40
def id
  @request_id
end
load(contexts, data) click to toggle source
# File lib/speedup-dashboard/request_store.rb, line 44
def load(contexts, data)
  @data = Speedup::RequestData.new.load(contexts, data)
end
save() click to toggle source
# File lib/speedup-dashboard/request_store.rb, line 48
def save
  self.class.connection.write(@request_id, @data)
end