doeskeyvalue 0.1.2 → 0.1.3
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/Gemfile +1 -1
- data/Gemfile.lock +2 -0
- data/VERSION +1 -1
- data/doeskeyvalue.gemspec +5 -2
- data/lib/doeskeyvalue.rb +2 -1
- data/lib/doeskeyvalue/keys.rb +4 -4
- metadata +18 -7
data/Gemfile
CHANGED
data/Gemfile.lock
CHANGED
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.1.
|
1
|
+
0.1.3
|
data/doeskeyvalue.gemspec
CHANGED
@@ -5,11 +5,11 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = %q{doeskeyvalue}
|
8
|
-
s.version = "0.1.
|
8
|
+
s.version = "0.1.3"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["Awexome Labs"]
|
12
|
-
s.date = %q{2011-
|
12
|
+
s.date = %q{2011-06-09}
|
13
13
|
s.description = %q{Bring the fun of NoSQL into your SQL-backed Active Record objects in a compartmentalized way. Turns any text field on your objects into a schema-less key value store.}
|
14
14
|
s.email = %q{gems@awexomelabs.com}
|
15
15
|
s.extra_rdoc_files = [
|
@@ -42,13 +42,16 @@ Gem::Specification.new do |s|
|
|
42
42
|
s.specification_version = 3
|
43
43
|
|
44
44
|
if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
|
45
|
+
s.add_runtime_dependency(%q<hashie>, [">= 0"])
|
45
46
|
s.add_development_dependency(%q<bundler>, ["~> 1.0.0"])
|
46
47
|
s.add_development_dependency(%q<jeweler>, ["~> 1.5.2"])
|
47
48
|
else
|
49
|
+
s.add_dependency(%q<hashie>, [">= 0"])
|
48
50
|
s.add_dependency(%q<bundler>, ["~> 1.0.0"])
|
49
51
|
s.add_dependency(%q<jeweler>, ["~> 1.5.2"])
|
50
52
|
end
|
51
53
|
else
|
54
|
+
s.add_dependency(%q<hashie>, [">= 0"])
|
52
55
|
s.add_dependency(%q<bundler>, ["~> 1.0.0"])
|
53
56
|
s.add_dependency(%q<jeweler>, ["~> 1.5.2"])
|
54
57
|
end
|
data/lib/doeskeyvalue.rb
CHANGED
@@ -4,6 +4,7 @@
|
|
4
4
|
require 'doeskeyvalue'
|
5
5
|
require 'rails'
|
6
6
|
require 'active_record'
|
7
|
+
require 'hashie'
|
7
8
|
|
8
9
|
require 'doeskeyvalue/keys'
|
9
10
|
require 'doeskeyvalue/indexes'
|
@@ -54,7 +55,7 @@ module ActiveRecord
|
|
54
55
|
# Identify the AR text column holding our data and serialize it:
|
55
56
|
@@key_value_column = column.to_sym
|
56
57
|
cattr_accessor :key_value_column
|
57
|
-
serialize @@key_value_column,
|
58
|
+
serialize @@key_value_column, Hashie::Mash
|
58
59
|
end
|
59
60
|
|
60
61
|
Array.class_eval do
|
data/lib/doeskeyvalue/keys.rb
CHANGED
@@ -17,13 +17,13 @@ module DoesKeyValue
|
|
17
17
|
# Define accessors for the key column in the AR class:
|
18
18
|
class_eval <<-EOS
|
19
19
|
def #{key_name}
|
20
|
-
all_keys = self.send(:read_attribute, :#{key_value_column}) ||
|
21
|
-
return all_keys
|
20
|
+
all_keys = self.send(:read_attribute, :#{key_value_column}) || Hashie::Mash.new
|
21
|
+
return all_keys.send("#{key_name}")
|
22
22
|
end
|
23
23
|
|
24
24
|
def #{key_name}=(value)
|
25
|
-
all_keys = self.send(:read_attribute, :#{key_value_column}) ||
|
26
|
-
all_keys
|
25
|
+
all_keys = self.send(:read_attribute, :#{key_value_column}) || Hashie::Mash.new
|
26
|
+
all_keys.send("#{key_name}=", value)
|
27
27
|
self.send(:write_attribute, :#{key_value_column}, all_keys)
|
28
28
|
end
|
29
29
|
EOS
|
metadata
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
name: doeskeyvalue
|
3
3
|
version: !ruby/object:Gem::Version
|
4
4
|
prerelease:
|
5
|
-
version: 0.1.
|
5
|
+
version: 0.1.3
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
8
8
|
- Awexome Labs
|
@@ -10,12 +10,23 @@ autorequire:
|
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
12
|
|
13
|
-
date: 2011-
|
13
|
+
date: 2011-06-09 00:00:00 -04:00
|
14
14
|
default_executable:
|
15
15
|
dependencies:
|
16
16
|
- !ruby/object:Gem::Dependency
|
17
|
-
name:
|
17
|
+
name: hashie
|
18
18
|
requirement: &id001 !ruby/object:Gem::Requirement
|
19
|
+
none: false
|
20
|
+
requirements:
|
21
|
+
- - ">="
|
22
|
+
- !ruby/object:Gem::Version
|
23
|
+
version: "0"
|
24
|
+
type: :runtime
|
25
|
+
prerelease: false
|
26
|
+
version_requirements: *id001
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: bundler
|
29
|
+
requirement: &id002 !ruby/object:Gem::Requirement
|
19
30
|
none: false
|
20
31
|
requirements:
|
21
32
|
- - ~>
|
@@ -23,10 +34,10 @@ dependencies:
|
|
23
34
|
version: 1.0.0
|
24
35
|
type: :development
|
25
36
|
prerelease: false
|
26
|
-
version_requirements: *
|
37
|
+
version_requirements: *id002
|
27
38
|
- !ruby/object:Gem::Dependency
|
28
39
|
name: jeweler
|
29
|
-
requirement: &
|
40
|
+
requirement: &id003 !ruby/object:Gem::Requirement
|
30
41
|
none: false
|
31
42
|
requirements:
|
32
43
|
- - ~>
|
@@ -34,7 +45,7 @@ dependencies:
|
|
34
45
|
version: 1.5.2
|
35
46
|
type: :development
|
36
47
|
prerelease: false
|
37
|
-
version_requirements: *
|
48
|
+
version_requirements: *id003
|
38
49
|
description: Bring the fun of NoSQL into your SQL-backed Active Record objects in a compartmentalized way. Turns any text field on your objects into a schema-less key value store.
|
39
50
|
email: gems@awexomelabs.com
|
40
51
|
executables: []
|
@@ -73,7 +84,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
73
84
|
requirements:
|
74
85
|
- - ">="
|
75
86
|
- !ruby/object:Gem::Version
|
76
|
-
hash:
|
87
|
+
hash: 2538889220135644083
|
77
88
|
segments:
|
78
89
|
- 0
|
79
90
|
version: "0"
|