evt-entity_store 0.5.1.2 → 0.5.2.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.
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 3359fa5dd052a74428407f308b618ec2945a38bc2cca349d696a35fd8a6e25c0
|
4
|
+
data.tar.gz: 4263259ead64037127322e482606405ae9b538c6da60e0bf67e933660cdaec5b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b5125e5bd2bb5fd2b680ae48612cf884932ae93871e1062b6274a27b583584770180b80d73abd5b9359ce218c46e6bcf6427de63de4267ad979228066f9aa2f6
|
7
|
+
data.tar.gz: bb1beec625b1e412c5d68bf09caa03b47babb02078aaebb5c85da86b8d106bcea7de32f821384cb46ce451fb1e81d9d50876dedf43934fe350a03e0db2fbb850
|
@@ -1,18 +1,18 @@
|
|
1
1
|
module EntityStore
|
2
2
|
module Controls
|
3
3
|
module EntityStore
|
4
|
-
def self.example(category: nil, entity_class: nil, projection_class: nil, reader_class: nil, snapshot_class: nil, snapshot_interval: nil, snapshot_interval_keyword: nil)
|
5
|
-
if category.nil? && entity_class.nil? && projection_class.nil? && reader_class.nil? && snapshot_class.nil? && snapshot_interval.nil?
|
4
|
+
def self.example(category: nil, entity_class: nil, projection_class: nil, reader_class: nil, snapshot_class: nil, snapshot_interval: nil, snapshot_interval_keyword: nil, reader_batch_size: nil)
|
5
|
+
if category.nil? && entity_class.nil? && projection_class.nil? && reader_class.nil? && snapshot_class.nil? && snapshot_interval.nil? && snapshot_interval_keyword.nil? && reader_batch_size.nil?
|
6
6
|
store_class = Example
|
7
7
|
else
|
8
|
-
store_class = example_class(category: category, entity_class: entity_class, projection_class: projection_class, reader_class: reader_class, snapshot_class: snapshot_class, snapshot_interval: snapshot_interval, snapshot_interval_keyword: snapshot_interval_keyword)
|
8
|
+
store_class = example_class(category: category, entity_class: entity_class, projection_class: projection_class, reader_class: reader_class, snapshot_class: snapshot_class, snapshot_interval: snapshot_interval, snapshot_interval_keyword: snapshot_interval_keyword, reader_batch_size: reader_batch_size)
|
9
9
|
end
|
10
10
|
|
11
11
|
instance = store_class.build
|
12
12
|
instance
|
13
13
|
end
|
14
14
|
|
15
|
-
def self.example_class(category: nil, entity_class: nil, projection_class: nil, reader_class: nil, snapshot_class: nil, snapshot_interval: nil, snapshot_interval_keyword: nil)
|
15
|
+
def self.example_class(category: nil, entity_class: nil, projection_class: nil, reader_class: nil, snapshot_class: nil, snapshot_interval: nil, snapshot_interval_keyword: nil, reader_batch_size: nil)
|
16
16
|
if category == :none
|
17
17
|
category = nil
|
18
18
|
else
|
@@ -37,13 +37,19 @@ module EntityStore
|
|
37
37
|
reader_class ||= Controls::Reader::Example
|
38
38
|
end
|
39
39
|
|
40
|
+
if reader_batch_size == :none
|
41
|
+
reader_batch_size = nil
|
42
|
+
else
|
43
|
+
reader_batch_size ||= Controls::Reader::BatchSize.example
|
44
|
+
end
|
45
|
+
|
40
46
|
Class.new do
|
41
47
|
include ::EntityStore
|
42
48
|
|
43
49
|
category category
|
44
50
|
entity entity_class
|
45
51
|
projection projection_class
|
46
|
-
reader reader_class
|
52
|
+
reader reader_class, batch_size: reader_batch_size
|
47
53
|
|
48
54
|
unless snapshot_class.nil?
|
49
55
|
if snapshot_interval_keyword.nil?
|
@@ -28,6 +28,7 @@ module EntityStore
|
|
28
28
|
virtual :category
|
29
29
|
virtual :reader_class
|
30
30
|
virtual :projection_class
|
31
|
+
virtual :reader_batch_size
|
31
32
|
virtual :snapshot_class
|
32
33
|
virtual :snapshot_interval
|
33
34
|
|
@@ -121,7 +122,7 @@ module EntityStore
|
|
121
122
|
project = projection_class.build(entity)
|
122
123
|
|
123
124
|
logger.trace(tag: :store) { "Reading (Stream Name: #{stream_name}, Position: #{current_position}" }
|
124
|
-
reader_class.(stream_name, position: start_position, session: session) do |event_data|
|
125
|
+
reader_class.(stream_name, position: start_position, batch_size: reader_batch_size, session: session) do |event_data|
|
125
126
|
project.(event_data)
|
126
127
|
current_position = event_data.position
|
127
128
|
|
@@ -206,10 +207,14 @@ module EntityStore
|
|
206
207
|
end
|
207
208
|
|
208
209
|
module ReaderMacro
|
209
|
-
def reader_macro(cls)
|
210
|
+
def reader_macro(cls, batch_size: nil)
|
210
211
|
define_method :reader_class do
|
211
212
|
cls
|
212
213
|
end
|
214
|
+
|
215
|
+
define_method :reader_batch_size do
|
216
|
+
batch_size
|
217
|
+
end
|
213
218
|
end
|
214
219
|
alias_method :reader, :reader_macro
|
215
220
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: evt-entity_store
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.5.
|
4
|
+
version: 0.5.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- The Eventide Project
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2018-10-
|
11
|
+
date: 2018-10-12 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: evt-entity_projection
|