evt-consumer-event_store 0.3.0.3 → 0.3.1.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
  SHA1:
3
- metadata.gz: 8f3e807f67d21a234d826624abe4b786b2f5044b
4
- data.tar.gz: 7f86ccfd9bfeeac8683ef054d78b2cfcf7233511
3
+ metadata.gz: 30df1272e2657f9fc96a123d0402f914c65c447b
4
+ data.tar.gz: b01965ef7f39e1be996b6fd3612ce083e0c13731
5
5
  SHA512:
6
- metadata.gz: ae425ff9f87e46730f6bd861f58fc90a49e4cc3f2a37dcb8efc6aee89afe7ef958ed7b789098e28c8c9d4f55ecb22170665498642dbecfdbf14c042222430904
7
- data.tar.gz: bdd6248763b4732349689f1db4354bc34c824c8cf65b48a501c4c39ad8801c86bee6cb0e7a1ec2e7581dbe247f4822c31ffa81b849cdff41f189605aeaf59642
6
+ metadata.gz: 8861e2778d87db72ee2d4605660b763da64596aee63bd535bd9ca9767d79eccf443342eec6ca56a3813bc64b2590d5b471f140ce2f2134bca213a7b2816e1981
7
+ data.tar.gz: 80fbc35c824fd3e2a64ba4031e7ea47bbb074aff43d30a9cb881e69cdcac78d27ea247d61a665c2cc42f3d2b86800305f9092006a0f37481ff6c9c7c07878e16
@@ -1,5 +1,6 @@
1
1
  require 'consumer/controls'
2
2
 
3
+ require 'consumer/event_store/controls/identifier'
3
4
  require 'consumer/event_store/controls/category'
4
5
  require 'consumer/event_store/controls/message_data'
5
6
  require 'consumer/event_store/controls/handle'
@@ -5,7 +5,7 @@ module Consumer
5
5
  def self.example(stream_name: nil)
6
6
  stream_name ||= StreamName.example
7
7
 
8
- Example.build stream_name
8
+ Example.build(stream_name)
9
9
  end
10
10
 
11
11
  class Example
@@ -17,6 +17,12 @@ module Consumer
17
17
  class Incrementing < ::Consumer::Controls::Consumer::Incrementing
18
18
  include ::Consumer::EventStore
19
19
  end
20
+
21
+ class Identifier
22
+ include ::Consumer::EventStore
23
+
24
+ identifier Controls::Identifier.example
25
+ end
20
26
  end
21
27
  end
22
28
  end
@@ -0,0 +1,7 @@
1
+ module Consumer
2
+ module EventStore
3
+ module Controls
4
+ Identifier = Consumer::Controls::Identifier
5
+ end
6
+ end
7
+ end
@@ -4,7 +4,7 @@ module Consumer
4
4
  module PositionStream
5
5
  module Write
6
6
  def self.call(stream_name=nil, position: nil)
7
- stream_name ||= StreamName.example type: 'position'
7
+ stream_name ||= StreamName.example(type: 'position')
8
8
  position ||= 0
9
9
 
10
10
  message = PositionStore::Updated.new
@@ -25,8 +25,9 @@ module Consumer
25
25
  PositionStore.configure(
26
26
  self,
27
27
  stream_name,
28
- session: session,
29
- position_store: position_store
28
+ position_store: position_store,
29
+ consumer_identifier: identifier,
30
+ session: session
30
31
  )
31
32
  end
32
33
  end
@@ -9,18 +9,18 @@ module Consumer
9
9
  dependency :session, MessageStore::EventStore::Session
10
10
  dependency :write, ::Messaging::EventStore::Write
11
11
 
12
- def self.build(stream_name, session: nil)
13
- position_stream_name = StreamName.get(stream_name)
12
+ def self.build(stream_name, session: nil, consumer_identifier: nil)
13
+ position_stream_name = StreamName.get(stream_name, consumer_identifier: consumer_identifier)
14
14
 
15
- instance = new position_stream_name
16
- MessageStore::EventStore::Session.configure instance, session: session
15
+ instance = new(position_stream_name)
16
+ MessageStore::EventStore::Session.configure(instance, session: session)
17
17
  instance.configure
18
18
  instance
19
19
  end
20
20
 
21
21
  def configure
22
- MessageStore::EventStore::Get::Last.configure self, session: session
23
- Messaging::EventStore::Write.configure self, session: session
22
+ MessageStore::EventStore::Get::Last.configure(self, session: session)
23
+ Messaging::EventStore::Write.configure(self, session: session)
24
24
  end
25
25
 
26
26
  def get
@@ -2,7 +2,7 @@ module Consumer
2
2
  module EventStore
3
3
  class PositionStore
4
4
  module StreamName
5
- def self.get(stream_name)
5
+ def self.get(stream_name, consumer_identifier: nil)
6
6
  match_data = MessageStore::EventStore::StreamName.parse(stream_name)
7
7
 
8
8
  types = match_data[:type_list]
@@ -16,6 +16,14 @@ module Consumer
16
16
 
17
17
  stream_id = match_data[:stream_id]
18
18
 
19
+ unless consumer_identifier.nil?
20
+ if stream_id.nil?
21
+ stream_id = consumer_identifier
22
+ else
23
+ stream_id = "#{stream_id}-#{consumer_identifier}"
24
+ end
25
+ end
26
+
19
27
  MessageStore::StreamName.stream_name(
20
28
  entity_name,
21
29
  stream_id,
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: evt-consumer-event_store
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.0.3
4
+ version: 0.3.1.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: 2017-06-01 00:00:00.000000000 Z
11
+ date: 2017-08-12 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: evt-consumer
@@ -63,6 +63,7 @@ files:
63
63
  - lib/consumer/event_store/controls/category.rb
64
64
  - lib/consumer/event_store/controls/consumer.rb
65
65
  - lib/consumer/event_store/controls/handle.rb
66
+ - lib/consumer/event_store/controls/identifier.rb
66
67
  - lib/consumer/event_store/controls/message_data.rb
67
68
  - lib/consumer/event_store/controls/position_stream.rb
68
69
  - lib/consumer/event_store/controls/stream_name.rb