evt-message_store-postgres 2.4.3.0 → 2.4.4.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
  SHA256:
3
- metadata.gz: 783bbb06bda7af60c00b66718b7021bee6256015988750a57140ff5ae5341543
4
- data.tar.gz: c4c78ce65e907449deb15fcc0d3cc967d54d8d30f7b6b739a8ccba3bac16f3b1
3
+ metadata.gz: 9afe602df7bc11f064fb1f2ee2db10d297ef473b56d8d596f043731720610b89
4
+ data.tar.gz: e281822fa90831def64c49046adeb0732ed42239ff6c2797741094da8b745b15
5
5
  SHA512:
6
- metadata.gz: 5962708259cb74332b6541a7db9f718891b602e5f6b65f879293f346c101d2da0c46c70a2e7082b2553fb835c0b46f6f4c475f26ebe765d2fcf7bc1651b2d442
7
- data.tar.gz: 50d0e5972458e886a69cce45aff22c51cf7f55b712914133b912b1f12e7df94a3791df3b73304dd31a7119b1a81168d601ecbe0f9cc9ca37e2c2e3e09a55b4c6
6
+ metadata.gz: d5b4471ecd79e6e7b0ebad9b2cfc5f9b71c4fd0b4e3f59e59669980c14d97748cec2a04db2257343bd8f0cc0cc8347ba481f65727005b58f370fde018ea8eeb1
7
+ data.tar.gz: 6dd9d99f28d3d5cd8cb66227d76997b0860866728902de5705b25b6737e12454c77ad930a9782a61ce2b04e2562a38be45042bd8f04d65f90a75a226f4521cf4
@@ -2,14 +2,14 @@ module MessageStore
2
2
  module Postgres
3
3
  module Controls
4
4
  module Put
5
- def self.call(instances: nil, stream_name: nil, message_data: nil, message: nil, category: nil)
5
+ def self.call(instances: nil, stream_name: nil, message_data: nil, message: nil, category: nil, type: nil)
6
6
  instances ||= 1
7
7
  stream_name ||= StreamName.example(category: category)
8
8
  message_data ||= message
9
9
 
10
10
  message_specified = !message_data.nil?
11
11
 
12
- message_data ||= MessageData::Write.example
12
+ message_data ||= MessageData::Write.example(type: type)
13
13
 
14
14
  position = nil
15
15
  instances.times do
@@ -11,10 +11,10 @@ module MessageStore
11
11
  Session.configure(self, session: session)
12
12
  end
13
13
 
14
- def call(stream_name)
14
+ def call(stream_name, type: nil)
15
15
  logger.trace(tag: :get) { "Getting last message data (Stream Name: #{stream_name})" }
16
16
 
17
- result = get_result(stream_name)
17
+ result = get_result(stream_name, type)
18
18
 
19
19
  return nil if result.nil?
20
20
 
@@ -26,14 +26,11 @@ module MessageStore
26
26
  message_data
27
27
  end
28
28
 
29
- def get_result(stream_name)
29
+ def get_result(stream_name, type)
30
30
  logger.trace(tag: :get) { "Getting last record (Stream: #{stream_name})" }
31
31
 
32
- sql_command = self.class.sql_command(stream_name)
33
-
34
- parameter_values = [
35
- stream_name
36
- ]
32
+ parameter_values = parameter_values(stream_name, type)
33
+ sql_command = sql_command(type)
37
34
 
38
35
  result = session.execute(sql_command, parameter_values)
39
36
 
@@ -44,12 +41,38 @@ module MessageStore
44
41
  result
45
42
  end
46
43
 
47
- def self.sql_command(stream_name)
48
- parameters = '$1::varchar'
44
+ def sql_command(type)
45
+ parameters = parameters(type)
49
46
 
50
47
  "SELECT * FROM get_last_stream_message(#{parameters});"
51
48
  end
52
49
 
50
+ def parameters(type)
51
+ parameters = "$1::varchar"
52
+
53
+ # Backwards compatibility with versions of message-db that do not
54
+ # support the type parameter - Aaron, Scott, Tue Jul 12 2022
55
+ if not type.nil?
56
+ parameters << ", $2::varchar"
57
+ end
58
+
59
+ parameters
60
+ end
61
+
62
+ def parameter_values(stream_name, type)
63
+ parameter_values = [
64
+ stream_name
65
+ ]
66
+
67
+ # Backwards compatibility with versions of message-db that do not
68
+ # support the type parameter - Aaron, Scott, Tue Jul 12 2022
69
+ if not type.nil?
70
+ parameter_values << type
71
+ end
72
+
73
+ parameter_values
74
+ end
75
+
53
76
  def convert(record)
54
77
  logger.trace(tag: :get) { "Converting record to message data" }
55
78
 
@@ -91,8 +91,12 @@ module MessageStore
91
91
  alias :open? :connected?
92
92
 
93
93
  def close
94
+ if connection.nil?
95
+ return
96
+ end
97
+
94
98
  connection.close
95
- connection = nil
99
+ self.connection = nil
96
100
  end
97
101
 
98
102
  def reset
@@ -108,8 +112,6 @@ module MessageStore
108
112
  connect
109
113
  end
110
114
 
111
- executed_time = nil
112
-
113
115
  if params.nil?
114
116
  connection.exec(sql_command).tap do
115
117
  self.executed_time = clock.now
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: evt-message_store-postgres
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.4.3.0
4
+ version: 2.4.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - The Eventide Project
8
8
  autorequire:
9
9
  bindir: scripts
10
10
  cert_chain: []
11
- date: 2022-02-14 00:00:00.000000000 Z
11
+ date: 2022-10-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: evt-message_store