mem_mappr 0.0.0.beta1 → 0.0.1

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.
data/Rakefile CHANGED
@@ -11,6 +11,7 @@ begin
11
11
  gem.homepage = "http://github.com/plukevdh/mem_mappr"
12
12
  gem.authors = ["Luke van der Hoeven"]
13
13
  gem.add_development_dependency "memcache-client", ">= 0"
14
+ gem.add_development_dependency "yaml", ">= 0"
14
15
  # gem is a Gem::Specification... see http://www.rubygems.org/read/chapter/20 for additional settings
15
16
  end
16
17
  Jeweler::GemcutterTasks.new
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.0.0.beta1
1
+ 0.0.1
@@ -1,13 +1,22 @@
1
1
  module MemMappr
2
2
  module Config
3
- def set(options)
4
- return CACHE if Object.const_defined?(:CACHE)
5
-
6
- silence_warnings do
7
- Object.const_set :CACHE, MemCache.new(options['servers'])
3
+ class << self
4
+ def setup
5
+ unless File.exists? config_file = File.join('config', 'memcache.yml')
6
+ error = "Looks like you don't have a config file. Please add one to the Rails.root/config folder before continuing."
7
+ puts error
8
+ logger.info error
9
+ exit!
10
+ end
11
+
12
+ options = YAML.load_file(config_file)
13
+
14
+ setup = options["defaults"]
15
+
16
+ return CACHE if Object.const_defined?(:CACHE)
17
+ Object.const_set :CACHE, MemCache.new(setup['servers'])
18
+ CACHE
8
19
  end
9
-
10
- CACHE
11
20
  end
12
21
  end
13
22
  end
File without changes
data/lib/mem_mappr.rb CHANGED
@@ -1,43 +1,50 @@
1
+ require 'memcache'
2
+ require 'yaml'
3
+
1
4
  require 'mem_mappr/config'
2
5
 
3
6
  module MemMappr
4
7
  @@config = {}
5
- mattr_reader :config
8
+ attr_reader :config
6
9
 
7
10
  class << self
8
11
 
9
- def config=(options)
10
- @@config = Config.set(options)
11
- end
12
+ def setup
13
+ @@config = Config.setup
14
+ end
12
15
 
13
- def map(name, object)
14
- CACHE.set name, srlz(object)
15
- end
16
+ def map(name, object)
17
+ CACHE.set name, srlz(object)
18
+ end
16
19
 
17
- def unmap(name)
18
- data = CACHE.get name
19
- object = de_srlz(data)
20
- end
21
-
22
- def map_array(name, objects)
23
- CACHE.set = name, objects.map{|obj| srlz(obj)}
24
- end
20
+ def unmap(name)
21
+ data = CACHE.get name
22
+ object = de_srlz(data)
23
+ end
25
24
 
26
- def unmap_array(name)
27
- data = CACHE.get name
28
- object_array = []
29
- data.each do |object|
30
- object_array << de_srlz(object)
25
+ def map_array(name, objects)
26
+ CACHE.set name, objects.map{|obj| srlz(obj)}
31
27
  end
28
+
29
+ def unmap_array(name)
30
+ data = CACHE.get name
31
+ object_array = []
32
+ data.each do |object|
33
+ object_array << de_srlz(object)
34
+ end
32
35
 
33
- object_array
34
- end
36
+ object_array
37
+ end
35
38
 
36
- def srlz(data)
37
- {:class => data.class, :data => data.attributes}
38
- end
39
+ private
40
+
41
+ def srlz(data)
42
+ {:class => data.class, :data => data.to_json}
43
+ end
39
44
 
40
- def de_srlz(data)
41
- eval("#{data[:class]}.new(#{data[:data]})"
45
+ def de_srlz(data)
46
+ obj = eval("#{data[:class]}.new")
47
+ obj.from_json(data[:data])
48
+ end
42
49
  end
43
50
  end
data/mem_mappr.gemspec CHANGED
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{mem_mappr}
8
- s.version = "0.0.0.beta1"
8
+ s.version = "0.0.1"
9
9
 
10
- s.required_rubygems_version = Gem::Requirement.new("> 1.3.1") if s.respond_to? :required_rubygems_version=
10
+ s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Luke van der Hoeven"]
12
- s.date = %q{2010-06-09}
12
+ s.date = %q{2010-06-10}
13
13
  s.description = %q{This is a simple way to memcache ActiveRecord objects, mostly by serializing them into objects that memcache can understand.}
14
14
  s.email = %q{hungerandthirst@gmail.com}
15
15
  s.extra_rdoc_files = [
@@ -24,11 +24,12 @@ Gem::Specification.new do |s|
24
24
  "Rakefile",
25
25
  "VERSION",
26
26
  "cli.rb",
27
- "defaults/memcache.yml",
28
- "init.rb",
27
+ "config/memcache.yml",
29
28
  "lib/mem_mappr.rb",
30
29
  "lib/mem_mappr/config.rb",
30
+ "lib/mem_mappr/sanitizr.rb",
31
31
  "mem_mappr.gemspec",
32
+ "rails/init.rb",
32
33
  "test/helper.rb",
33
34
  "test/test_mem_mappr.rb"
34
35
  ]
@@ -48,11 +49,14 @@ Gem::Specification.new do |s|
48
49
 
49
50
  if Gem::Version.new(Gem::RubyGemsVersion) >= Gem::Version.new('1.2.0') then
50
51
  s.add_development_dependency(%q<memcache-client>, [">= 0"])
52
+ s.add_development_dependency(%q<yaml>, [">= 0"])
51
53
  else
52
54
  s.add_dependency(%q<memcache-client>, [">= 0"])
55
+ s.add_dependency(%q<yaml>, [">= 0"])
53
56
  end
54
57
  else
55
58
  s.add_dependency(%q<memcache-client>, [">= 0"])
59
+ s.add_dependency(%q<yaml>, [">= 0"])
56
60
  end
57
61
  end
58
62
 
@@ -1,15 +1,17 @@
1
+ require 'mem_mappr'
2
+
1
3
  begin
2
4
  require 'memcache'
3
5
  rescue LoadError
4
6
  end
5
7
 
6
- unless File.exists? config_file = File.join(RAILS_ENV, 'config', 'memcache.yml')
8
+ unless File.exists? config_file = File.join('config', 'memcache.yml')
7
9
  error = "Looks like you don't have a config file. Please add one to the Rails.root/config folder before continuing."
8
10
  puts error
9
- Rails.logger.info error
11
+ logger.info error
10
12
  exit!
11
13
  end
12
14
 
13
15
  MemMappr.config = YAML.load_file(config_file)
14
-
16
+ logger.info "Loaded mem_mappr"
15
17
 
metadata CHANGED
@@ -1,13 +1,12 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mem_mappr
3
3
  version: !ruby/object:Gem::Version
4
- prerelease: true
4
+ prerelease: false
5
5
  segments:
6
6
  - 0
7
7
  - 0
8
- - 0
9
- - beta1
10
- version: 0.0.0.beta1
8
+ - 1
9
+ version: 0.0.1
11
10
  platform: ruby
12
11
  authors:
13
12
  - Luke van der Hoeven
@@ -15,7 +14,7 @@ autorequire:
15
14
  bindir: bin
16
15
  cert_chain: []
17
16
 
18
- date: 2010-06-09 00:00:00 -04:00
17
+ date: 2010-06-10 00:00:00 -04:00
19
18
  default_executable:
20
19
  dependencies:
21
20
  - !ruby/object:Gem::Dependency
@@ -30,6 +29,18 @@ dependencies:
30
29
  version: "0"
31
30
  type: :development
32
31
  version_requirements: *id001
32
+ - !ruby/object:Gem::Dependency
33
+ name: yaml
34
+ prerelease: false
35
+ requirement: &id002 !ruby/object:Gem::Requirement
36
+ requirements:
37
+ - - ">="
38
+ - !ruby/object:Gem::Version
39
+ segments:
40
+ - 0
41
+ version: "0"
42
+ type: :development
43
+ version_requirements: *id002
33
44
  description: This is a simple way to memcache ActiveRecord objects, mostly by serializing them into objects that memcache can understand.
34
45
  email: hungerandthirst@gmail.com
35
46
  executables: []
@@ -47,11 +58,12 @@ files:
47
58
  - Rakefile
48
59
  - VERSION
49
60
  - cli.rb
50
- - defaults/memcache.yml
51
- - init.rb
61
+ - config/memcache.yml
52
62
  - lib/mem_mappr.rb
53
63
  - lib/mem_mappr/config.rb
64
+ - lib/mem_mappr/sanitizr.rb
54
65
  - mem_mappr.gemspec
66
+ - rails/init.rb
55
67
  - test/helper.rb
56
68
  - test/test_mem_mappr.rb
57
69
  has_rdoc: true
@@ -72,13 +84,11 @@ required_ruby_version: !ruby/object:Gem::Requirement
72
84
  version: "0"
73
85
  required_rubygems_version: !ruby/object:Gem::Requirement
74
86
  requirements:
75
- - - ">"
87
+ - - ">="
76
88
  - !ruby/object:Gem::Version
77
89
  segments:
78
- - 1
79
- - 3
80
- - 1
81
- version: 1.3.1
90
+ - 0
91
+ version: "0"
82
92
  requirements: []
83
93
 
84
94
  rubyforge_project:
File without changes