memdash-activerecord 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,17 @@
1
+ require 'rails/generators/migration'
2
+ require 'rails/generators/active_record/migration'
3
+
4
+ module Memdash
5
+ module Generators
6
+ class ActiveRecordGenerator < Rails::Generators::Base
7
+ include Rails::Generators::Migration
8
+ extend ActiveRecord::Generators::Migration
9
+
10
+ self.source_paths << File.join(File.dirname(__FILE__), 'templates')
11
+
12
+ def create_migration_file
13
+ migration_template 'migration.rb', 'db/migrate/create_memdash_active_record_reports.rb'
14
+ end
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,12 @@
1
+ class CreateMemdashActiveRecordReports < ActiveRecord::Migration
2
+ def self.up
3
+ create_table :memdash_reports do |table|
4
+ table.text :stats
5
+ table.datetime :created_at
6
+ end
7
+ end
8
+
9
+ def self.down
10
+ drop_table :memdash_reports
11
+ end
12
+ end
@@ -0,0 +1 @@
1
+ require 'memdash/adapters/active_record'
@@ -0,0 +1,4 @@
1
+ require 'memdash'
2
+ require 'memdash/adapters/active_record/client'
3
+
4
+ Memdash.backend = Memdash::Adapters::ActiveRecord::Report
@@ -0,0 +1,15 @@
1
+ require 'memdash/adapters/active_record/report'
2
+
3
+ module Memdash
4
+ module Adapters
5
+ module ActiveRecord
6
+ module Client
7
+ def generate_stats
8
+ Memdash::Adapters::ActiveRecord::Report.create!(:stats => stats)
9
+ end
10
+ end
11
+ end
12
+ end
13
+ end
14
+
15
+ Dalli::Client.send(:include, Memdash::Adapters::ActiveRecord::Client)
@@ -0,0 +1,17 @@
1
+ require 'active_record'
2
+
3
+ module Memdash
4
+ module Adapters
5
+ module ActiveRecord
6
+ class Report < ::ActiveRecord::Base
7
+ self.table_name = :memdash_reports
8
+
9
+ serialize :stats
10
+
11
+ def self.past_day
12
+ where('created_at >= :time', :time => Time.current - 1.day)
13
+ end
14
+ end
15
+ end
16
+ end
17
+ end
metadata ADDED
@@ -0,0 +1,85 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: memdash-activerecord
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ prerelease:
6
+ platform: ruby
7
+ authors:
8
+ - Brian Ryckbost
9
+ - Steve Richert
10
+ autorequire:
11
+ bindir: bin
12
+ cert_chain: []
13
+ date: 2012-05-04 00:00:00.000000000 Z
14
+ dependencies:
15
+ - !ruby/object:Gem::Dependency
16
+ name: memdash
17
+ requirement: !ruby/object:Gem::Requirement
18
+ none: false
19
+ requirements:
20
+ - - '='
21
+ - !ruby/object:Gem::Version
22
+ version: 0.1.0
23
+ prerelease:
24
+ type: :runtime
25
+ prerelease: false
26
+ version_requirements: !ruby/object:Gem::Requirement
27
+ none: false
28
+ requirements:
29
+ - - '='
30
+ - !ruby/object:Gem::Version
31
+ version: 0.1.0
32
+ prerelease:
33
+ - !ruby/object:Gem::Dependency
34
+ name: activerecord
35
+ requirement: !ruby/object:Gem::Requirement
36
+ none: false
37
+ requirements:
38
+ - - ~>
39
+ - !ruby/object:Gem::Version
40
+ version: '3.0'
41
+ type: :runtime
42
+ prerelease: false
43
+ version_requirements: !ruby/object:Gem::Requirement
44
+ none: false
45
+ requirements:
46
+ - - ~>
47
+ - !ruby/object:Gem::Version
48
+ version: '3.0'
49
+ description: A dashboard for your memcached, storing data in ActiveRecord.
50
+ email: bryckbost@gmail.com
51
+ executables: []
52
+ extensions: []
53
+ extra_rdoc_files: []
54
+ files:
55
+ - lib/generators/memdash/active_record_generator.rb
56
+ - lib/generators/memdash/templates/migration.rb
57
+ - lib/memdash-active_record.rb
58
+ - lib/memdash/adapters/active_record.rb
59
+ - lib/memdash/adapters/active_record/client.rb
60
+ - lib/memdash/adapters/active_record/report.rb
61
+ homepage: https://github.com/bryckbost/memdash
62
+ licenses: []
63
+ post_install_message:
64
+ rdoc_options: []
65
+ require_paths:
66
+ - lib
67
+ required_ruby_version: !ruby/object:Gem::Requirement
68
+ none: false
69
+ requirements:
70
+ - - ! '>='
71
+ - !ruby/object:Gem::Version
72
+ version: '0'
73
+ required_rubygems_version: !ruby/object:Gem::Requirement
74
+ none: false
75
+ requirements:
76
+ - - ! '>='
77
+ - !ruby/object:Gem::Version
78
+ version: '0'
79
+ requirements: []
80
+ rubyforge_project:
81
+ rubygems_version: 1.8.21
82
+ signing_key:
83
+ specification_version: 3
84
+ summary: A dashboard for your memcached, storing data in ActiveRecord.
85
+ test_files: []