Sha256: dcbcdcee678c682944adfa4f396f853c975bcbc9a11c4c35fa5f8c11dd1a08f4
Contents?: true
Size: 1.38 KB
Versions: 3
Compression:
Stored size: 1.38 KB
Contents
module Redistat module Model include Database include Options def self.included(base) base.extend(self) end # # statistics store/fetch methods # def store(label, stats = {}, date = nil, opts = {}, meta = {}) Event.new(self.name, label, date, stats, options.merge(opts), meta).save end alias :event :store def fetch(label, from, till, opts = {}) find(label, from, till, opts).all end alias :lookup :fetch def find(label, from, till, opts = {}) Finder.new( { :scope => self.name, :label => label, :from => from, :till => till }.merge(options.merge(opts)) ) end def find_event(event_id) Event.find(self.name, event_id) end # # options methods # option_accessor :depth option_accessor :scope option_accessor :store_event option_accessor :hashed_label option_accessor :label_indexing alias :class_name :scope def connect_to(opts = {}) Connection.create(opts.merge(:ref => name)) options[:connection_ref] = name end # # resource access methods # def connection db(options[:connection_ref]) end alias :redis :connection def name options[:scope] || (@name ||= self.to_s) end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
redistat-0.3.0 | lib/redistat/model.rb |
redistat-0.2.6 | lib/redistat/model.rb |
redistat-0.2.5 | lib/redistat/model.rb |