isomorfeus-data 2.0.15 → 2.0.19
Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: ef3d094c6a7a94a181f67a7222a07a86456ab095866495c8931031f9d77f1538
|
4
|
+
data.tar.gz: 74a274d6c6971fa0462349ad04ee39f22cc6a669353381c60670493f82d24ff0
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 365a9b1e1b71142b782f241fe4114110b4511adcf03c163613a02e3e0a09f98b9a26aec6d31f9ca840c1a2460c5174d688df82048647e0c450380856c61234d6
|
7
|
+
data.tar.gz: 3259cce4fa11bb784ff457feea421adf7f03d804e955f0ecc69bbb9ece009a111e8460c53c0867e887954cfac863f282422227549a64cc6082215cf6e8f28d14
|
@@ -45,11 +45,12 @@ module Isomorfeus
|
|
45
45
|
end
|
46
46
|
@db = self.class.environment.database('objects', create: true)
|
47
47
|
@index_db = self.class.environment.database('index', create: true, dupsort: true)
|
48
|
+
@use_class_cache = !Isomorfeus.development?
|
48
49
|
ObjectSpace.define_finalizer(self, self.class.finalize(self.class))
|
49
50
|
end
|
50
51
|
|
51
52
|
def create_object(sid_s, obj)
|
52
|
-
Isomorfeus::Hamster::Marshal.dump(@db, sid_s, obj)
|
53
|
+
Isomorfeus::Hamster::Marshal.dump(@db, sid_s, obj, class_cache: @use_class_cache)
|
53
54
|
end
|
54
55
|
|
55
56
|
def destroy_object(sid_s)
|
@@ -58,11 +59,11 @@ module Isomorfeus
|
|
58
59
|
end
|
59
60
|
|
60
61
|
def load_object(sid_s)
|
61
|
-
Isomorfeus::Hamster::Marshal.load(@db, sid_s)
|
62
|
+
Isomorfeus::Hamster::Marshal.load(@db, sid_s, class_cache: @use_class_cache)
|
62
63
|
end
|
63
64
|
|
64
65
|
def save_object(sid_s, obj)
|
65
|
-
Isomorfeus::Hamster::Marshal.dump(@db, sid_s, obj)
|
66
|
+
Isomorfeus::Hamster::Marshal.dump(@db, sid_s, obj, class_cache: @use_class_cache)
|
66
67
|
end
|
67
68
|
|
68
69
|
def index_delete(key, val)
|
@@ -79,7 +80,7 @@ module Isomorfeus
|
|
79
80
|
|
80
81
|
def each(&block)
|
81
82
|
@db.each do |key, obj|
|
82
|
-
block.call(Isomorfeus::Hamster::Marshal.unserialize(obj))
|
83
|
+
block.call(Isomorfeus::Hamster::Marshal.unserialize(obj, class_cache: @use_class_cache))
|
83
84
|
end
|
84
85
|
end
|
85
86
|
|
@@ -123,12 +123,12 @@ module LucidObject
|
|
123
123
|
else
|
124
124
|
if val == '*'
|
125
125
|
self.hamster_storage_expander.each do |obj|
|
126
|
-
objs << obj if obj
|
126
|
+
objs << obj if obj.class == self
|
127
127
|
end
|
128
128
|
else
|
129
129
|
attr_s = ":[#{attr}]"
|
130
130
|
accept_all_attr = attr_s == ":[*]" ? true : false
|
131
|
-
self.hamster_storage_expander.search(":[:#{val}:]:") do |sid_s_attr|
|
131
|
+
self.hamster_storage_expander.search(":[#{self.name}]:|:[:#{val}:]:") do |sid_s_attr|
|
132
132
|
if accept_all_attr || sid_s_attr.end_with?(attr_s)
|
133
133
|
sid_s = sid_s_attr.split(':|:[')[0]
|
134
134
|
obj = self.load(key: sid_s)
|
@@ -163,7 +163,7 @@ module LucidObject
|
|
163
163
|
else
|
164
164
|
old_val = self.hamster_storage_expander.index_get("#{sid_s}:|:[#{attr}]")
|
165
165
|
self.hamster_storage_expander.index_delete("#{sid_s}:|:[#{attr}]", old_val)
|
166
|
-
self.hamster_storage_expander.index_delete(":[:#{old_val}:]:", "#{sid_s}:|:[#{attr}]")
|
166
|
+
self.hamster_storage_expander.index_delete(":[#{self.name}]:|:[:#{old_val}:]:", "#{sid_s}:|:[#{attr}]")
|
167
167
|
end
|
168
168
|
end
|
169
169
|
true
|
@@ -208,10 +208,10 @@ module LucidObject
|
|
208
208
|
def _store_value_indexed_attribute(attr)
|
209
209
|
old_val = self.class.hamster_storage_expander.index_get("#{self.sid_s}:|:[#{attr}]")
|
210
210
|
self.class.hamster_storage_expander.index_delete("#{self.sid_s}:|:[#{attr}]", old_val)
|
211
|
-
self.class.hamster_storage_expander.index_delete(":[:#{old_val}:]:", "#{self.sid_s}:|:[#{attr}]")
|
211
|
+
self.class.hamster_storage_expander.index_delete(":[#{self.class.name}]:|:[:#{old_val}:]:", "#{self.sid_s}:|:[#{attr}]")
|
212
212
|
val = "#{self.send(attr)}"[0..300]
|
213
213
|
self.class.hamster_storage_expander.index_put("#{self.sid_s}:|:[#{attr}]", val)
|
214
|
-
self.class.hamster_storage_expander.index_put(":[:#{val}:]:", "#{self.sid_s}:|:[#{attr}]")
|
214
|
+
self.class.hamster_storage_expander.index_put(":[#{self.class.name}]:|:[:#{val}:]:", "#{self.sid_s}:|:[#{attr}]")
|
215
215
|
end
|
216
216
|
|
217
217
|
def _unchange!
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: isomorfeus-data
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.0.
|
4
|
+
version: 2.0.19
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jan Biedermann
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2022-02-
|
11
|
+
date: 2022-02-06 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: activesupport
|
@@ -114,14 +114,14 @@ dependencies:
|
|
114
114
|
requirements:
|
115
115
|
- - "~>"
|
116
116
|
- !ruby/object:Gem::Version
|
117
|
-
version: 10.6.
|
117
|
+
version: 10.6.30
|
118
118
|
type: :runtime
|
119
119
|
prerelease: false
|
120
120
|
version_requirements: !ruby/object:Gem::Requirement
|
121
121
|
requirements:
|
122
122
|
- - "~>"
|
123
123
|
- !ruby/object:Gem::Version
|
124
|
-
version: 10.6.
|
124
|
+
version: 10.6.30
|
125
125
|
- !ruby/object:Gem::Dependency
|
126
126
|
name: isomorfeus-redux
|
127
127
|
requirement: !ruby/object:Gem::Requirement
|
@@ -142,28 +142,28 @@ dependencies:
|
|
142
142
|
requirements:
|
143
143
|
- - '='
|
144
144
|
- !ruby/object:Gem::Version
|
145
|
-
version: 2.0.
|
145
|
+
version: 2.0.19
|
146
146
|
type: :runtime
|
147
147
|
prerelease: false
|
148
148
|
version_requirements: !ruby/object:Gem::Requirement
|
149
149
|
requirements:
|
150
150
|
- - '='
|
151
151
|
- !ruby/object:Gem::Version
|
152
|
-
version: 2.0.
|
152
|
+
version: 2.0.19
|
153
153
|
- !ruby/object:Gem::Dependency
|
154
154
|
name: isomorfeus
|
155
155
|
requirement: !ruby/object:Gem::Requirement
|
156
156
|
requirements:
|
157
157
|
- - '='
|
158
158
|
- !ruby/object:Gem::Version
|
159
|
-
version: 2.0.
|
159
|
+
version: 2.0.19
|
160
160
|
type: :development
|
161
161
|
prerelease: false
|
162
162
|
version_requirements: !ruby/object:Gem::Requirement
|
163
163
|
requirements:
|
164
164
|
- - '='
|
165
165
|
- !ruby/object:Gem::Version
|
166
|
-
version: 2.0.
|
166
|
+
version: 2.0.19
|
167
167
|
- !ruby/object:Gem::Dependency
|
168
168
|
name: rake
|
169
169
|
requirement: !ruby/object:Gem::Requirement
|