class XRayMachine::XRay

Public Class Methods

method_missing(name, query, &block) click to toggle source
# File lib/x_ray_machine/x_ray.rb, line 13
def self.method_missing(name, query, &block)
  options = {group: name, query: query, cache: false}

  ActiveSupport::Notifications.instrument "request.xraymachine", options do
    ray = XRayMachine::XRay.new

    block.call(ray).tap do |result|
      options[:cache] = true if ray.cached?
    end
  end
end

Public Instance Methods

cached() click to toggle source
# File lib/x_ray_machine/x_ray.rb, line 3
def cached
  @cached || false
end
Also aliased as: cached?
cached=(val) click to toggle source
# File lib/x_ray_machine/x_ray.rb, line 7
def cached=(val)
  @cached = val
end
cached?()
Alias for: cached