foobara-redis-crud-driver 0.2.0 → 0.2.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.
- checksums.yaml +4 -4
- data/.ruby-version +1 -1
- data/CHANGELOG.md +4 -0
- data/src/foobara/redis_crud_driver.rb +13 -13
- metadata +2 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 779c3acd4eb1c43d2a2c5f7f03bfcccd225a6ac99279721a429055fab75c2032
|
|
4
|
+
data.tar.gz: 025fed90b8dcf64b3d6cd1d3a5cabb58153b7e82d0a9287e13b22b1de50cb23a
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: be32aa8e5cc58292128097b1f44f65704b664d26f1738f6bb882cf0d55f0609c124771b3119444a3dc8ce50f3ae87214f267c208a47127b05ad222533aedb0d8
|
|
7
|
+
data.tar.gz: 344a012dc7c508eb6a2c34165175f9486f8efb443cf994256bcfd17d3d10b28bce0d5dd6ef4d49f2920d376f0a8e694955b071f77f338be551b871718f7bae35
|
data/.ruby-version
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
4.0.6
|
data/CHANGELOG.md
CHANGED
|
@@ -22,10 +22,10 @@ module Foobara
|
|
|
22
22
|
# TODO: maybe we should distinguish between nil being passed in and no args? nil feels like it could be an error.
|
|
23
23
|
def initialize(connection_or_credentials = nil, key_prefix: nil, prefix: nil, **)
|
|
24
24
|
if prefix
|
|
25
|
-
# :
|
|
25
|
+
# simplecov:disable
|
|
26
26
|
warn "Using prefix: is deprecated use key_prefix: instead"
|
|
27
27
|
key_prefix ||= prefix
|
|
28
|
-
# :
|
|
28
|
+
# simplecov:enable
|
|
29
29
|
end
|
|
30
30
|
|
|
31
31
|
@key_prefix = key_prefix
|
|
@@ -48,9 +48,9 @@ module Foobara
|
|
|
48
48
|
class Table < Persistence::EntityAttributesCrudDriver::Table
|
|
49
49
|
def get_id
|
|
50
50
|
unless entity_class.primary_key_type.type_symbol == :integer
|
|
51
|
-
# :
|
|
51
|
+
# simplecov:disable
|
|
52
52
|
raise "Only integer primary keys are supported for now"
|
|
53
|
-
# :
|
|
53
|
+
# simplecov:enable
|
|
54
54
|
end
|
|
55
55
|
|
|
56
56
|
redis.incr(sequence_key)
|
|
@@ -111,9 +111,9 @@ module Foobara
|
|
|
111
111
|
record_id = record_id_for(attributes)
|
|
112
112
|
|
|
113
113
|
unless exists?(record_id)
|
|
114
|
-
# :
|
|
114
|
+
# simplecov:disable
|
|
115
115
|
raise CannotUpdateError.new(record_id, "does not exist")
|
|
116
|
-
# :
|
|
116
|
+
# simplecov:enable
|
|
117
117
|
end
|
|
118
118
|
|
|
119
119
|
attributes = prepare_attributes_for_redis(Util.deep_dup(attributes))
|
|
@@ -127,16 +127,16 @@ module Foobara
|
|
|
127
127
|
key = record_key_prefix(record_id)
|
|
128
128
|
|
|
129
129
|
if redis.del(key) != 1
|
|
130
|
-
# :
|
|
130
|
+
# simplecov:disable
|
|
131
131
|
raise CannotUpdateError.new(record_id, "#{key} does not exist")
|
|
132
|
-
# :
|
|
132
|
+
# simplecov:enable
|
|
133
133
|
end
|
|
134
134
|
|
|
135
135
|
unless redis.zrem(primary_keys_index_key, record_id)
|
|
136
|
-
# :
|
|
136
|
+
# simplecov:disable
|
|
137
137
|
raise "Unexpected: when deleting #{key}, " \
|
|
138
138
|
"#{record_id} was not present in the primary key index for #{primary_keys_index_key}"
|
|
139
|
-
# :
|
|
139
|
+
# simplecov:enable
|
|
140
140
|
end
|
|
141
141
|
end
|
|
142
142
|
|
|
@@ -179,7 +179,7 @@ module Foobara
|
|
|
179
179
|
|
|
180
180
|
def prepare_attributes_for_redis(attributes)
|
|
181
181
|
attributes.transform_values! do |value|
|
|
182
|
-
JSON.
|
|
182
|
+
JSON.generate(value)
|
|
183
183
|
end
|
|
184
184
|
end
|
|
185
185
|
|
|
@@ -236,9 +236,9 @@ module Foobara
|
|
|
236
236
|
type_symbol = entity_class.primary_key_type.type_symbol
|
|
237
237
|
|
|
238
238
|
unless [:integer, :string].include?(type_symbol)
|
|
239
|
-
# :
|
|
239
|
+
# simplecov:disable
|
|
240
240
|
raise "Only integer and string primary keys are supported for now"
|
|
241
|
-
# :
|
|
241
|
+
# simplecov:enable
|
|
242
242
|
end
|
|
243
243
|
|
|
244
244
|
@primary_key_symbol = type_symbol
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: foobara-redis-crud-driver
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.2.
|
|
4
|
+
version: 0.2.1
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Miles Georgi
|
|
@@ -79,7 +79,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
79
79
|
- !ruby/object:Gem::Version
|
|
80
80
|
version: '0'
|
|
81
81
|
requirements: []
|
|
82
|
-
rubygems_version:
|
|
82
|
+
rubygems_version: 4.0.16
|
|
83
83
|
specification_version: 4
|
|
84
84
|
summary: Provides support for entity CRUD in Redis for Foobara
|
|
85
85
|
test_files: []
|