evt-consumer-event_store 0.3.0.3 → 0.3.1.0

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
  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