pg_eventstore 1.1.3 → 1.1.4
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 +4 -4
- data/CHANGELOG.md +3 -0
- data/README.md +4 -3
- data/lib/pg_eventstore/abstract_command.rb +2 -0
- data/lib/pg_eventstore/callbacks.rb +3 -0
- data/lib/pg_eventstore/client.rb +6 -1
- data/lib/pg_eventstore/config.rb +1 -1
- data/lib/pg_eventstore/connection.rb +9 -1
- data/lib/pg_eventstore/errors.rb +45 -26
- data/lib/pg_eventstore/event.rb +2 -1
- data/lib/pg_eventstore/event_class_resolver.rb +1 -1
- data/lib/pg_eventstore/event_deserializer.rb +8 -2
- data/lib/pg_eventstore/event_serializer.rb +2 -0
- data/lib/pg_eventstore/extensions/callbacks_extension.rb +1 -0
- data/lib/pg_eventstore/extensions/options_extension.rb +3 -1
- data/lib/pg_eventstore/queries/event_queries.rb +12 -4
- data/lib/pg_eventstore/queries/links_resolver.rb +3 -0
- data/lib/pg_eventstore/queries/partition_queries.rb +6 -0
- data/lib/pg_eventstore/queries/transaction_queries.rb +4 -0
- data/lib/pg_eventstore/queries.rb +1 -1
- data/lib/pg_eventstore/query_builders/{events_filtering_query.rb → events_filtering.rb} +3 -0
- data/lib/pg_eventstore/sql_builder.rb +18 -10
- data/lib/pg_eventstore/stream.rb +13 -2
- data/lib/pg_eventstore/subscriptions/basic_runner.rb +2 -0
- data/lib/pg_eventstore/subscriptions/commands_handler.rb +5 -3
- data/lib/pg_eventstore/subscriptions/queries/subscription_command_queries.rb +6 -4
- data/lib/pg_eventstore/subscriptions/queries/subscription_queries.rb +4 -2
- data/lib/pg_eventstore/subscriptions/queries/subscriptions_set_command_queries.rb +6 -4
- data/lib/pg_eventstore/subscriptions/queries/subscriptions_set_queries.rb +3 -0
- data/lib/pg_eventstore/subscriptions/runner_state.rb +1 -0
- data/lib/pg_eventstore/subscriptions/subscription.rb +19 -17
- data/lib/pg_eventstore/subscriptions/subscription_feeder.rb +4 -0
- data/lib/pg_eventstore/subscriptions/subscription_feeder_commands/base.rb +4 -4
- data/lib/pg_eventstore/subscriptions/subscription_handler_performance.rb +2 -1
- data/lib/pg_eventstore/subscriptions/subscription_runner.rb +5 -0
- data/lib/pg_eventstore/subscriptions/subscription_runner_commands/base.rb +4 -4
- data/lib/pg_eventstore/subscriptions/subscriptions_manager.rb +6 -4
- data/lib/pg_eventstore/subscriptions/subscriptions_set.rb +10 -10
- data/lib/pg_eventstore/version.rb +2 -1
- data/lib/pg_eventstore/web/application.rb +6 -6
- data/lib/pg_eventstore/web/paginator/base_collection.rb +15 -1
- data/lib/pg_eventstore/web/paginator/event_types_collection.rb +2 -1
- data/lib/pg_eventstore/web/paginator/events_collection.rb +7 -4
- data/lib/pg_eventstore/web/paginator/helpers.rb +3 -3
- data/lib/pg_eventstore/web/paginator/stream_contexts_collection.rb +2 -1
- data/lib/pg_eventstore/web/paginator/stream_ids_collection.rb +2 -1
- data/lib/pg_eventstore/web/paginator/stream_names_collection.rb +2 -1
- data/lib/pg_eventstore/web/subscriptions/set_collection.rb +2 -0
- data/lib/pg_eventstore/web/subscriptions/subscriptions.rb +2 -0
- data/lib/pg_eventstore/web/subscriptions/subscriptions_set.rb +2 -0
- data/lib/pg_eventstore/web/subscriptions/subscriptions_to_set_association.rb +6 -1
- data/lib/pg_eventstore.rb +6 -1
- data/rbs_collection.lock.yaml +16 -0
- data/rbs_collection.yaml +23 -0
- data/sig/interfaces/callback.rbs +3 -0
- data/sig/interfaces/event_class_resolver.rbs +3 -0
- data/sig/interfaces/event_modifier.rbs +3 -0
- data/sig/interfaces/restart_terminator.rbs +3 -0
- data/sig/interfaces/subscription_handler.rbs +3 -0
- data/sig/pg/basic_type_registry.rbs +21 -0
- data/sig/pg/connection.rbs +407 -0
- data/sig/pg/constants.rbs +153 -0
- data/sig/pg_eventstore/abstract_command.rbs +11 -0
- data/sig/pg_eventstore/callbacks.rbs +21 -0
- data/sig/pg_eventstore/client.rbs +67 -0
- data/sig/pg_eventstore/commands/append.rbs +33 -0
- data/sig/pg_eventstore/commands/event_modifiers/prepare_link_event.rbs +24 -0
- data/sig/pg_eventstore/commands/event_modifiers/prepare_regular_event.rbs +12 -0
- data/sig/pg_eventstore/commands/link_to.rbs +17 -0
- data/sig/pg_eventstore/commands/multiple.rbs +7 -0
- data/sig/pg_eventstore/commands/read.rbs +10 -0
- data/sig/pg_eventstore/commands/regular_stream_read_paginated.rbs +32 -0
- data/sig/pg_eventstore/commands/system_stream_read_paginated.rbs +30 -0
- data/sig/pg_eventstore/config.rbs +51 -0
- data/sig/pg_eventstore/connection.rbs +30 -0
- data/sig/pg_eventstore/errors.rbs +116 -0
- data/sig/pg_eventstore/event.rbs +46 -0
- data/sig/pg_eventstore/event_class_resolver.rbs +6 -0
- data/sig/pg_eventstore/event_deserializer.rbs +20 -0
- data/sig/pg_eventstore/event_serializer.rbs +13 -0
- data/sig/pg_eventstore/extensions/callbacks_extension.rbs +23 -0
- data/sig/pg_eventstore/extensions/options_extension.rbs +37 -0
- data/sig/pg_eventstore/extensions/using_connection_extension.rbs +14 -0
- data/sig/pg_eventstore/middleware.rbs +9 -0
- data/sig/pg_eventstore/pg_connection.rbs +13 -0
- data/sig/pg_eventstore/queries/event_queries.rbs +50 -0
- data/sig/pg_eventstore/queries/links_resolver.rbs +19 -0
- data/sig/pg_eventstore/queries/partition_queries.rbs +74 -0
- data/sig/pg_eventstore/queries/transaction_queries.rbs +21 -0
- data/sig/pg_eventstore/queries.rbs +23 -0
- data/sig/pg_eventstore/query_builders/events_filtering_query.rbs +62 -0
- data/sig/pg_eventstore/sql_builder.rbs +74 -0
- data/sig/pg_eventstore/stream.rbs +40 -0
- data/sig/pg_eventstore/subscriptions/basic_runner.rbs +37 -0
- data/sig/pg_eventstore/subscriptions/command_handlers/subscription_feeder_commands.rbs +16 -0
- data/sig/pg_eventstore/subscriptions/command_handlers/subscription_runners_commands.rbs +18 -0
- data/sig/pg_eventstore/subscriptions/commands_handler.rbs +25 -0
- data/sig/pg_eventstore/subscriptions/events_processor.rbs +34 -0
- data/sig/pg_eventstore/subscriptions/extensions/base_command_extension.rbs +20 -0
- data/sig/pg_eventstore/subscriptions/extensions/command_class_lookup_extension.rbs +8 -0
- data/sig/pg_eventstore/subscriptions/queries/subscription_command_queries.rbs +56 -0
- data/sig/pg_eventstore/subscriptions/queries/subscription_queries.rbs +73 -0
- data/sig/pg_eventstore/subscriptions/queries/subscriptions_set_command_queries.rbs +39 -0
- data/sig/pg_eventstore/subscriptions/queries/subscriptions_set_queries.rbs +36 -0
- data/sig/pg_eventstore/subscriptions/runner_state.rbs +16 -0
- data/sig/pg_eventstore/subscriptions/subscription.rbs +96 -0
- data/sig/pg_eventstore/subscriptions/subscription_feeder.rbs +64 -0
- data/sig/pg_eventstore/subscriptions/subscription_feeder_commands/base.rbs +45 -0
- data/sig/pg_eventstore/subscriptions/subscription_feeder_commands/restore.rbs +8 -0
- data/sig/pg_eventstore/subscriptions/subscription_feeder_commands/start_all.rbs +8 -0
- data/sig/pg_eventstore/subscriptions/subscription_feeder_commands/stop.rbs +8 -0
- data/sig/pg_eventstore/subscriptions/subscription_feeder_commands/stop_all.rbs +8 -0
- data/sig/pg_eventstore/subscriptions/subscription_feeder_commands.rbs +8 -0
- data/sig/pg_eventstore/subscriptions/subscription_handler_performance.rbs +12 -0
- data/sig/pg_eventstore/subscriptions/subscription_runner.rbs +55 -0
- data/sig/pg_eventstore/subscriptions/subscription_runner_commands/base.rbs +47 -0
- data/sig/pg_eventstore/subscriptions/subscription_runner_commands/reset_position.rbs +11 -0
- data/sig/pg_eventstore/subscriptions/subscription_runner_commands/restore.rbs +8 -0
- data/sig/pg_eventstore/subscriptions/subscription_runner_commands/start.rbs +8 -0
- data/sig/pg_eventstore/subscriptions/subscription_runner_commands/stop.rbs +8 -0
- data/sig/pg_eventstore/subscriptions/subscription_runner_commands.rbs +8 -0
- data/sig/pg_eventstore/subscriptions/subscription_runners_feeder.rbs +13 -0
- data/sig/pg_eventstore/subscriptions/subscriptions_manager.rbs +60 -0
- data/sig/pg_eventstore/subscriptions/subscriptions_set.rbs +72 -0
- data/sig/pg_eventstore/utils.rbs +20 -0
- data/sig/pg_eventstore/version.rbs +3 -0
- data/sig/pg_eventstore/web/paginator/base_collection.rbs +51 -0
- data/sig/pg_eventstore/web/paginator/event_types_collection.rbs +15 -0
- data/sig/pg_eventstore/web/paginator/events_collection.rbs +31 -0
- data/sig/pg_eventstore/web/paginator/helpers.rbs +38 -0
- data/sig/pg_eventstore/web/paginator/stream_contexts_collection.rbs +15 -0
- data/sig/pg_eventstore/web/paginator/stream_ids_collection.rbs +15 -0
- data/sig/pg_eventstore/web/paginator/stream_names_collection.rbs +15 -0
- data/sig/pg_eventstore/web/subscriptions/helpers.rbs +48 -0
- data/sig/pg_eventstore/web/subscriptions/set_collection.rbs +18 -0
- data/sig/pg_eventstore/web/subscriptions/subscriptions.rbs +18 -0
- data/sig/pg_eventstore/web/subscriptions/subscriptions_set.rbs +18 -0
- data/sig/pg_eventstore/web/subscriptions/subscriptions_to_set_association.rbs +18 -0
- data/sig/pg_eventstore.rbs +42 -0
- metadata +90 -3
@@ -0,0 +1,153 @@
|
|
1
|
+
module PG
|
2
|
+
module Constants
|
3
|
+
CONNECTION_AUTH_OK: ::Integer
|
4
|
+
|
5
|
+
CONNECTION_AWAITING_RESPONSE: ::Integer
|
6
|
+
|
7
|
+
CONNECTION_BAD: ::Integer
|
8
|
+
|
9
|
+
CONNECTION_CHECK_STANDBY: ::Integer
|
10
|
+
|
11
|
+
CONNECTION_CHECK_TARGET: ::Integer
|
12
|
+
|
13
|
+
CONNECTION_CHECK_WRITABLE: ::Integer
|
14
|
+
|
15
|
+
CONNECTION_CONSUME: ::Integer
|
16
|
+
|
17
|
+
CONNECTION_GSS_STARTUP: ::Integer
|
18
|
+
|
19
|
+
CONNECTION_MADE: ::Integer
|
20
|
+
|
21
|
+
CONNECTION_NEEDED: ::Integer
|
22
|
+
|
23
|
+
CONNECTION_OK: ::Integer
|
24
|
+
|
25
|
+
CONNECTION_SETENV: ::Integer
|
26
|
+
|
27
|
+
CONNECTION_SSL_STARTUP: ::Integer
|
28
|
+
|
29
|
+
CONNECTION_STARTED: ::Integer
|
30
|
+
|
31
|
+
DEF_PGPORT: ::Integer
|
32
|
+
|
33
|
+
INVALID_OID: ::Integer
|
34
|
+
|
35
|
+
INV_READ: ::Integer
|
36
|
+
|
37
|
+
INV_WRITE: ::Integer
|
38
|
+
|
39
|
+
InvalidOid: ::Integer
|
40
|
+
|
41
|
+
PGRES_BAD_RESPONSE: ::Integer
|
42
|
+
|
43
|
+
PGRES_COMMAND_OK: ::Integer
|
44
|
+
|
45
|
+
PGRES_COPY_BOTH: ::Integer
|
46
|
+
|
47
|
+
PGRES_COPY_IN: ::Integer
|
48
|
+
|
49
|
+
PGRES_COPY_OUT: ::Integer
|
50
|
+
|
51
|
+
PGRES_EMPTY_QUERY: ::Integer
|
52
|
+
|
53
|
+
PGRES_FATAL_ERROR: ::Integer
|
54
|
+
|
55
|
+
PGRES_NONFATAL_ERROR: ::Integer
|
56
|
+
|
57
|
+
PGRES_PIPELINE_ABORTED: ::Integer
|
58
|
+
|
59
|
+
PGRES_PIPELINE_SYNC: ::Integer
|
60
|
+
|
61
|
+
PGRES_POLLING_FAILED: ::Integer
|
62
|
+
|
63
|
+
PGRES_POLLING_OK: ::Integer
|
64
|
+
|
65
|
+
PGRES_POLLING_READING: ::Integer
|
66
|
+
|
67
|
+
PGRES_POLLING_WRITING: ::Integer
|
68
|
+
|
69
|
+
PGRES_SINGLE_TUPLE: ::Integer
|
70
|
+
|
71
|
+
PGRES_TUPLES_OK: ::Integer
|
72
|
+
|
73
|
+
PG_DIAG_COLUMN_NAME: ::Integer
|
74
|
+
|
75
|
+
PG_DIAG_CONSTRAINT_NAME: ::Integer
|
76
|
+
|
77
|
+
PG_DIAG_CONTEXT: ::Integer
|
78
|
+
|
79
|
+
PG_DIAG_DATATYPE_NAME: ::Integer
|
80
|
+
|
81
|
+
PG_DIAG_INTERNAL_POSITION: ::Integer
|
82
|
+
|
83
|
+
PG_DIAG_INTERNAL_QUERY: ::Integer
|
84
|
+
|
85
|
+
PG_DIAG_MESSAGE_DETAIL: ::Integer
|
86
|
+
|
87
|
+
PG_DIAG_MESSAGE_HINT: ::Integer
|
88
|
+
|
89
|
+
PG_DIAG_MESSAGE_PRIMARY: ::Integer
|
90
|
+
|
91
|
+
PG_DIAG_SCHEMA_NAME: ::Integer
|
92
|
+
|
93
|
+
PG_DIAG_SEVERITY: ::Integer
|
94
|
+
|
95
|
+
PG_DIAG_SEVERITY_NONLOCALIZED: ::Integer
|
96
|
+
|
97
|
+
PG_DIAG_SOURCE_FILE: ::Integer
|
98
|
+
|
99
|
+
PG_DIAG_SOURCE_FUNCTION: ::Integer
|
100
|
+
|
101
|
+
PG_DIAG_SOURCE_LINE: ::Integer
|
102
|
+
|
103
|
+
PG_DIAG_SQLSTATE: ::Integer
|
104
|
+
|
105
|
+
PG_DIAG_STATEMENT_POSITION: ::Integer
|
106
|
+
|
107
|
+
PG_DIAG_TABLE_NAME: ::Integer
|
108
|
+
|
109
|
+
PQERRORS_DEFAULT: ::Integer
|
110
|
+
|
111
|
+
PQERRORS_SQLSTATE: ::Integer
|
112
|
+
|
113
|
+
PQERRORS_TERSE: ::Integer
|
114
|
+
|
115
|
+
PQERRORS_VERBOSE: ::Integer
|
116
|
+
|
117
|
+
PQPING_NO_ATTEMPT: ::Integer
|
118
|
+
|
119
|
+
PQPING_NO_RESPONSE: ::Integer
|
120
|
+
|
121
|
+
PQPING_OK: ::Integer
|
122
|
+
|
123
|
+
PQPING_REJECT: ::Integer
|
124
|
+
|
125
|
+
PQSHOW_CONTEXT_ALWAYS: ::Integer
|
126
|
+
|
127
|
+
PQSHOW_CONTEXT_ERRORS: ::Integer
|
128
|
+
|
129
|
+
PQSHOW_CONTEXT_NEVER: ::Integer
|
130
|
+
|
131
|
+
PQTRANS_ACTIVE: ::Integer
|
132
|
+
|
133
|
+
PQTRANS_IDLE: ::Integer
|
134
|
+
|
135
|
+
PQTRANS_INERROR: ::Integer
|
136
|
+
|
137
|
+
PQTRANS_INTRANS: ::Integer
|
138
|
+
|
139
|
+
PQTRANS_UNKNOWN: ::Integer
|
140
|
+
|
141
|
+
PQ_PIPELINE_ABORTED: ::Integer
|
142
|
+
|
143
|
+
PQ_PIPELINE_OFF: ::Integer
|
144
|
+
|
145
|
+
PQ_PIPELINE_ON: ::Integer
|
146
|
+
|
147
|
+
SEEK_CUR: ::Integer
|
148
|
+
|
149
|
+
SEEK_END: ::Integer
|
150
|
+
|
151
|
+
SEEK_SET: ::Integer
|
152
|
+
end
|
153
|
+
end
|
@@ -0,0 +1,11 @@
|
|
1
|
+
module PgEventstore
|
2
|
+
class AbstractCommand
|
3
|
+
# _@param_ `queries`
|
4
|
+
def initialize: (PgEventstore::Queries queries) -> void
|
5
|
+
|
6
|
+
def call: () -> untyped
|
7
|
+
|
8
|
+
# Returns the value of attribute queries.
|
9
|
+
attr_accessor queries: PgEventstore::Queries
|
10
|
+
end
|
11
|
+
end
|
@@ -0,0 +1,21 @@
|
|
1
|
+
module PgEventstore
|
2
|
+
class Callbacks
|
3
|
+
def initialize: () -> void
|
4
|
+
|
5
|
+
# _@param_ `action` — an object, that represents your action. In most cases you want to use a symbol there
|
6
|
+
#
|
7
|
+
# _@param_ `filter` — callback filter. Supported values are :before, :after and :around
|
8
|
+
#
|
9
|
+
# _@param_ `callback`
|
10
|
+
def define_callback: (untyped action, Symbol filter, _Callback callback) -> void
|
11
|
+
|
12
|
+
# _@param_ `action` — an action to run
|
13
|
+
def run_callbacks: (untyped action, *untyped args, **untyped kwargs) ?{ () -> untyped } -> untyped
|
14
|
+
|
15
|
+
def run_before_callbacks: (untyped action, *untyped args, **untyped kwargs) -> void
|
16
|
+
|
17
|
+
def run_around_callbacks: (untyped action, *untyped args, **untyped kwargs) ?{ () -> untyped } -> untyped
|
18
|
+
|
19
|
+
def run_after_callbacks: (untyped action, *untyped args, **untyped kwargs) -> void
|
20
|
+
end
|
21
|
+
end
|
@@ -0,0 +1,67 @@
|
|
1
|
+
module PgEventstore
|
2
|
+
class Client
|
3
|
+
# _@param_ `config`
|
4
|
+
def initialize: (PgEventstore::Config config) -> void
|
5
|
+
|
6
|
+
# _@param_ `stream`
|
7
|
+
#
|
8
|
+
# _@param_ `events_or_event`
|
9
|
+
#
|
10
|
+
# _@param_ `options`
|
11
|
+
#
|
12
|
+
# _@param_ `middlewares` — provide a list of middleware names to override a config's middlewares
|
13
|
+
def append_to_stream: (
|
14
|
+
PgEventstore::Stream stream,
|
15
|
+
(PgEventstore::Event | ::Array[PgEventstore::Event]) events_or_event,
|
16
|
+
?options: ::Hash[untyped, untyped],
|
17
|
+
?middlewares: ::Array[untyped]?
|
18
|
+
) -> (PgEventstore::Event | ::Array[PgEventstore::Event])
|
19
|
+
|
20
|
+
def multiple: () { () -> untyped } -> untyped
|
21
|
+
|
22
|
+
# _@param_ `stream`
|
23
|
+
#
|
24
|
+
# _@param_ `options` — request options
|
25
|
+
#
|
26
|
+
# _@param_ `middlewares` — provide a list of middleware names to override a config's middlewares
|
27
|
+
def read: (PgEventstore::Stream stream, ?options: ::Hash[untyped, untyped], ?middlewares: ::Array[::Symbol]?) -> ::Array[PgEventstore::Event]
|
28
|
+
|
29
|
+
# _@param_ `stream`
|
30
|
+
#
|
31
|
+
# _@param_ `options` — request options
|
32
|
+
#
|
33
|
+
# _@param_ `middlewares`
|
34
|
+
#
|
35
|
+
# _@return_ — enumerator will yield PgEventstore::Event
|
36
|
+
def read_paginated: (PgEventstore::Stream stream, ?options: ::Hash[untyped, untyped], ?middlewares: ::Array[::Symbol]?) -> ::Enumerator[Array[PgEventstore::Event], void]
|
37
|
+
|
38
|
+
# _@param_ `stream`
|
39
|
+
#
|
40
|
+
# _@param_ `events_or_event`
|
41
|
+
#
|
42
|
+
# _@param_ `options`
|
43
|
+
#
|
44
|
+
# _@param_ `middlewares` — provide a list of middleware names to use. Defaults to empty array, meaning no middlewares will be applied to the "link" event
|
45
|
+
def link_to: (
|
46
|
+
PgEventstore::Stream stream,
|
47
|
+
(PgEventstore::Event | ::Array[PgEventstore::Event]) events_or_event,
|
48
|
+
?options: ::Hash[untyped, untyped],
|
49
|
+
?middlewares: ::Array[::Symbol]
|
50
|
+
) -> (PgEventstore::Event | ::Array[PgEventstore::Event])
|
51
|
+
|
52
|
+
# _@param_ `middlewares`
|
53
|
+
def middlewares: (?::Array[::Symbol]? middlewares) -> ::Array[PgEventstore::Middleware]
|
54
|
+
|
55
|
+
def connection: () -> PgEventstore::Connection
|
56
|
+
|
57
|
+
def partition_queries: () -> PgEventstore::PartitionQueries
|
58
|
+
|
59
|
+
def transaction_queries: () -> PgEventstore::TransactionQueries
|
60
|
+
|
61
|
+
# _@param_ `middlewares`
|
62
|
+
def event_queries: (::Array[PgEventstore::Middleware] middlewares) -> PgEventstore::EventQueries
|
63
|
+
|
64
|
+
# Returns the value of attribute config.
|
65
|
+
attr_accessor config: PgEventstore::Config
|
66
|
+
end
|
67
|
+
end
|
@@ -0,0 +1,33 @@
|
|
1
|
+
module PgEventstore
|
2
|
+
module Commands
|
3
|
+
class Append < PgEventstore::AbstractCommand
|
4
|
+
# _@param_ `stream`
|
5
|
+
#
|
6
|
+
# _@param_ `events`
|
7
|
+
#
|
8
|
+
# _@param_ `options`
|
9
|
+
#
|
10
|
+
# _@param_ `event_modifier`
|
11
|
+
#
|
12
|
+
# _@return_ — persisted events
|
13
|
+
def call: (
|
14
|
+
PgEventstore::Stream stream,
|
15
|
+
*PgEventstore::Event events,
|
16
|
+
?options: ::Hash[untyped, untyped],
|
17
|
+
?event_modifier: _EventModifier
|
18
|
+
) -> ::Array[PgEventstore::Event]
|
19
|
+
|
20
|
+
# _@param_ `stream`
|
21
|
+
#
|
22
|
+
# _@param_ `events`
|
23
|
+
def create_partitions: (PgEventstore::Stream stream, ::Array[PgEventstore::Event] events) -> void
|
24
|
+
|
25
|
+
# _@param_ `revision`
|
26
|
+
#
|
27
|
+
# _@param_ `expected_revision`
|
28
|
+
#
|
29
|
+
# _@param_ `stream`
|
30
|
+
def assert_expected_revision!: (Integer revision, (Symbol | Integer) expected_revision, PgEventstore::Stream stream) -> void
|
31
|
+
end
|
32
|
+
end
|
33
|
+
end
|
@@ -0,0 +1,24 @@
|
|
1
|
+
module PgEventstore
|
2
|
+
module Commands
|
3
|
+
module EventModifiers
|
4
|
+
class PrepareLinkEvent
|
5
|
+
# _@param_ `partition_queries`
|
6
|
+
def initialize: (PgEventstore::PartitionQueries partition_queries) -> void
|
7
|
+
|
8
|
+
# _@param_ `event`
|
9
|
+
#
|
10
|
+
# _@param_ `revision`
|
11
|
+
def call: (PgEventstore::Event event, Integer revision) -> PgEventstore::Event
|
12
|
+
|
13
|
+
# _@param_ `event` — persisted event
|
14
|
+
#
|
15
|
+
# _@return_ — partition id
|
16
|
+
def partition_id: (PgEventstore::Event event) -> Integer
|
17
|
+
|
18
|
+
attr_reader partition_queries: PgEventstore::PartitionQueries
|
19
|
+
|
20
|
+
attr_reader partitions: Hash[untyped, untyped]
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
module PgEventstore
|
2
|
+
module Commands
|
3
|
+
class LinkTo < PgEventstore::AbstractCommand
|
4
|
+
# _@param_ `stream`
|
5
|
+
#
|
6
|
+
# _@param_ `events`
|
7
|
+
#
|
8
|
+
# _@param_ `options`
|
9
|
+
#
|
10
|
+
# _@return_ — persisted events
|
11
|
+
def call: (PgEventstore::Stream stream, *PgEventstore::Event events, ?options: ::Hash[untyped, untyped]) -> ::Array[PgEventstore::Event]
|
12
|
+
|
13
|
+
# _@param_ `events`
|
14
|
+
def check_events_presence: (::Array[PgEventstore::Event] events) -> void
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
@@ -0,0 +1,10 @@
|
|
1
|
+
module PgEventstore
|
2
|
+
module Commands
|
3
|
+
class Read < PgEventstore::AbstractCommand
|
4
|
+
# _@param_ `stream`
|
5
|
+
#
|
6
|
+
# _@param_ `options` — request options
|
7
|
+
def call: (PgEventstore::Stream stream, ?options: ::Hash[untyped, untyped]) -> ::Array[PgEventstore::Event]
|
8
|
+
end
|
9
|
+
end
|
10
|
+
end
|
@@ -0,0 +1,32 @@
|
|
1
|
+
module PgEventstore
|
2
|
+
module Commands
|
3
|
+
class RegularStreamReadPaginated < PgEventstore::AbstractCommand
|
4
|
+
# _@param_ `stream`
|
5
|
+
#
|
6
|
+
# _@param_ `options`
|
7
|
+
%a{rbs:test:skip} def call: (PgEventstore::Stream stream, ?options: ::Hash[untyped, untyped]) -> ::Enumerator[Array[PgEventstore::Event], void]
|
8
|
+
|
9
|
+
# _@param_ `stream`
|
10
|
+
#
|
11
|
+
# _@param_ `options`
|
12
|
+
def calc_initial_revision: (PgEventstore::Stream stream, ::Hash[untyped, untyped] options) -> Integer
|
13
|
+
|
14
|
+
# _@param_ `events`
|
15
|
+
#
|
16
|
+
# _@param_ `max_count`
|
17
|
+
def end_reached?: (::Array[PgEventstore::Event] events, Integer max_count) -> bool
|
18
|
+
|
19
|
+
# _@param_ `events`
|
20
|
+
#
|
21
|
+
# _@param_ `revision`
|
22
|
+
#
|
23
|
+
# _@param_ `direction`
|
24
|
+
def calc_next_revision: (::Array[PgEventstore::Event] events, Integer revision, (String | Symbol)? direction) -> Integer
|
25
|
+
|
26
|
+
# _@param_ `direction`
|
27
|
+
def forwards?: ((String | Symbol)? direction) -> bool
|
28
|
+
|
29
|
+
def read_cmd: () -> PgEventstore::Commands::Read
|
30
|
+
end
|
31
|
+
end
|
32
|
+
end
|
@@ -0,0 +1,30 @@
|
|
1
|
+
module PgEventstore
|
2
|
+
module Commands
|
3
|
+
class SystemStreamReadPaginated < PgEventstore::AbstractCommand
|
4
|
+
# _@param_ `stream`
|
5
|
+
#
|
6
|
+
# _@param_ `options`
|
7
|
+
%a{rbs:test:skip} def call: (PgEventstore::Stream stream, ?options: ::Hash[untyped, untyped]) -> ::Enumerator[Array[PgEventstore::Event], void]
|
8
|
+
|
9
|
+
# _@param_ `stream`
|
10
|
+
#
|
11
|
+
# _@param_ `options`
|
12
|
+
def calc_initial_position: (PgEventstore::Stream stream, ::Hash[untyped, untyped] options) -> Integer
|
13
|
+
|
14
|
+
# _@param_ `events`
|
15
|
+
#
|
16
|
+
# _@param_ `max_count`
|
17
|
+
def end_reached?: (::Array[PgEventstore::Event] events, Integer max_count) -> bool
|
18
|
+
|
19
|
+
# _@param_ `events`
|
20
|
+
#
|
21
|
+
# _@param_ `direction`
|
22
|
+
def calc_next_position: (::Array[PgEventstore::Event] events, (String | Symbol)? direction) -> Integer
|
23
|
+
|
24
|
+
# _@param_ `direction`
|
25
|
+
def forwards?: ((String | Symbol)? direction) -> bool
|
26
|
+
|
27
|
+
def read_cmd: () -> PgEventstore::Commands::Read
|
28
|
+
end
|
29
|
+
end
|
30
|
+
end
|
@@ -0,0 +1,51 @@
|
|
1
|
+
module PgEventstore
|
2
|
+
class Config
|
3
|
+
include PgEventstore::Extensions::OptionsExtension
|
4
|
+
|
5
|
+
# _@param_ `name` — config's name. Its value matches the appropriate key in PgEventstore.config hash
|
6
|
+
def initialize: (name: Symbol, **untyped options) -> void
|
7
|
+
|
8
|
+
def connection_options: () -> ::Hash[untyped, untyped]
|
9
|
+
|
10
|
+
def options_hash: () -> ::Hash[untyped, untyped]
|
11
|
+
|
12
|
+
# _@param_ `opt_name`
|
13
|
+
def readonly!: (Symbol opt_name) -> bool
|
14
|
+
|
15
|
+
# _@param_ `opt_name`
|
16
|
+
def readonly?: (Symbol opt_name) -> bool
|
17
|
+
|
18
|
+
# _@param_ `opt_name`
|
19
|
+
def readonly_error: (Symbol opt_name) -> void
|
20
|
+
|
21
|
+
# _@param_ `options`
|
22
|
+
def init_default_values: (::Hash[untyped, untyped] options) -> void
|
23
|
+
|
24
|
+
attr_reader name: untyped
|
25
|
+
|
26
|
+
attr_accessor pg_uri: String
|
27
|
+
|
28
|
+
# _@return_ — Number of events to return in one response when reading from a stream
|
29
|
+
attr_accessor max_count: Integer
|
30
|
+
|
31
|
+
attr_accessor middlewares: ::Hash[Symbol, PgEventstore::Middleware]
|
32
|
+
|
33
|
+
attr_accessor event_class_resolver: _EventClassResolver
|
34
|
+
|
35
|
+
attr_accessor connection_pool_size: Integer
|
36
|
+
|
37
|
+
attr_accessor connection_pool_timeout: Integer
|
38
|
+
|
39
|
+
attr_accessor subscription_pull_interval: Float | Integer
|
40
|
+
|
41
|
+
attr_accessor subscription_max_retries: Integer
|
42
|
+
|
43
|
+
attr_accessor subscription_retries_interval: Integer
|
44
|
+
|
45
|
+
attr_accessor subscription_restart_terminator: _RestartTerminator?
|
46
|
+
|
47
|
+
attr_accessor subscriptions_set_max_retries: Integer
|
48
|
+
|
49
|
+
attr_accessor subscriptions_set_retries_interval: Integer
|
50
|
+
end
|
51
|
+
end
|
@@ -0,0 +1,30 @@
|
|
1
|
+
module PgEventstore
|
2
|
+
class Connection
|
3
|
+
module Ruby30Patch
|
4
|
+
end
|
5
|
+
|
6
|
+
include PgEventstore::Connection::Ruby30Patch
|
7
|
+
|
8
|
+
# _@param_ `uri` — PostgreSQL connection URI. Example: "postgresql://postgres:postgres@localhost:5432/eventstore"
|
9
|
+
#
|
10
|
+
# _@param_ `pool_size` — Connection pool size
|
11
|
+
#
|
12
|
+
# _@param_ `pool_timeout` — Connection pool timeout in seconds
|
13
|
+
def initialize: (uri: String, ?pool_size: Integer, ?pool_timeout: Integer) -> void
|
14
|
+
|
15
|
+
def with: () { (PG::Connection connection) -> untyped } -> untyped
|
16
|
+
|
17
|
+
def init_pool: () -> ConnectionPool[untyped]
|
18
|
+
|
19
|
+
def pg_type_registry: () -> PG::BasicTypeRegistry
|
20
|
+
|
21
|
+
# Returns the value of attribute uri.
|
22
|
+
attr_accessor uri: String
|
23
|
+
|
24
|
+
# Returns the value of attribute pool_size.
|
25
|
+
attr_accessor pool_size: Integer
|
26
|
+
|
27
|
+
# Returns the value of attribute pool_timeout.
|
28
|
+
attr_accessor pool_timeout: Integer
|
29
|
+
end
|
30
|
+
end
|
@@ -0,0 +1,116 @@
|
|
1
|
+
module PgEventstore
|
2
|
+
class Error < StandardError
|
3
|
+
def as_json: () -> ::Hash[untyped, untyped]
|
4
|
+
|
5
|
+
def to_h: () -> ::Hash[untyped, untyped]
|
6
|
+
end
|
7
|
+
|
8
|
+
class StreamNotFoundError < PgEventstore::Error
|
9
|
+
# _@param_ `stream`
|
10
|
+
def initialize: (PgEventstore::Stream stream) -> void
|
11
|
+
|
12
|
+
# Returns the value of attribute stream.
|
13
|
+
attr_accessor stream: PgEventstore::Stream
|
14
|
+
end
|
15
|
+
|
16
|
+
class SystemStreamError < PgEventstore::Error
|
17
|
+
# _@param_ `stream`
|
18
|
+
def initialize: (PgEventstore::Stream stream) -> void
|
19
|
+
|
20
|
+
attr_accessor stream: PgEventstore::Stream
|
21
|
+
end
|
22
|
+
|
23
|
+
class WrongExpectedRevisionError < PgEventstore::Error
|
24
|
+
# _@param_ `revision`
|
25
|
+
#
|
26
|
+
# _@param_ `expected_revision`
|
27
|
+
#
|
28
|
+
# _@param_ `stream`
|
29
|
+
def initialize: (revision: Integer, expected_revision: (Integer | Symbol), stream: PgEventstore::Stream) -> void
|
30
|
+
|
31
|
+
def user_friendly_message: () -> String
|
32
|
+
|
33
|
+
def expected_stream_exists: () -> String
|
34
|
+
|
35
|
+
def expected_no_stream: () -> String
|
36
|
+
|
37
|
+
def current_no_stream: () -> String
|
38
|
+
|
39
|
+
def unmatched_stream_revision: () -> String
|
40
|
+
|
41
|
+
def stream_descr: () -> String
|
42
|
+
|
43
|
+
attr_accessor stream: PgEventstore::Stream
|
44
|
+
|
45
|
+
attr_accessor revision: Integer
|
46
|
+
|
47
|
+
attr_accessor expected_revision: (Integer | Symbol)
|
48
|
+
end
|
49
|
+
|
50
|
+
class RecordNotFound < PgEventstore::Error
|
51
|
+
# _@param_ `table_name`
|
52
|
+
#
|
53
|
+
# _@param_ `id`
|
54
|
+
def initialize: (String table_name, (Integer | String) id) -> void
|
55
|
+
|
56
|
+
def user_friendly_message: () -> String
|
57
|
+
|
58
|
+
attr_accessor table_name: String
|
59
|
+
|
60
|
+
attr_accessor id: (Integer | String)
|
61
|
+
end
|
62
|
+
|
63
|
+
class SubscriptionAlreadyLockedError < PgEventstore::Error
|
64
|
+
# _@param_ `set` — subscriptions set name
|
65
|
+
#
|
66
|
+
# _@param_ `name` — subscription's name
|
67
|
+
#
|
68
|
+
# _@param_ `lock_id`
|
69
|
+
def initialize: (String set, String name, Integer lock_id) -> void
|
70
|
+
|
71
|
+
def user_friendly_message: () -> String
|
72
|
+
|
73
|
+
attr_accessor set: String
|
74
|
+
|
75
|
+
attr_accessor name: String
|
76
|
+
|
77
|
+
attr_accessor lock_id: Integer
|
78
|
+
end
|
79
|
+
|
80
|
+
class WrongLockIdError < PgEventstore::Error
|
81
|
+
# _@param_ `set` — subscriptions set name
|
82
|
+
#
|
83
|
+
# _@param_ `name` — subscription's name
|
84
|
+
#
|
85
|
+
# _@param_ `lock_id`
|
86
|
+
def initialize: (String set, String name, Integer lock_id) -> void
|
87
|
+
|
88
|
+
def user_friendly_message: () -> String
|
89
|
+
|
90
|
+
attr_accessor set: String
|
91
|
+
|
92
|
+
attr_accessor name: String
|
93
|
+
|
94
|
+
attr_accessor lock_id: Integer
|
95
|
+
end
|
96
|
+
|
97
|
+
class NotPersistedEventError < PgEventstore::Error
|
98
|
+
# _@param_ `event`
|
99
|
+
def initialize: (PgEventstore::Event event) -> void
|
100
|
+
|
101
|
+
def user_friendly_message: () -> String
|
102
|
+
|
103
|
+
attr_accessor event: PgEventstore::Event
|
104
|
+
end
|
105
|
+
|
106
|
+
class MissingPartitions < PgEventstore::Error
|
107
|
+
# _@param_ `stream`
|
108
|
+
#
|
109
|
+
# _@param_ `event_types`
|
110
|
+
def initialize: (PgEventstore::Stream stream, ::Array[String] event_types) -> void
|
111
|
+
|
112
|
+
attr_accessor stream: PgEventstore::Stream
|
113
|
+
|
114
|
+
attr_accessor event_types: ::Array[String]
|
115
|
+
end
|
116
|
+
end
|
@@ -0,0 +1,46 @@
|
|
1
|
+
module PgEventstore
|
2
|
+
class Event
|
3
|
+
include PgEventstore::Extensions::OptionsExtension
|
4
|
+
LINK_TYPE: String
|
5
|
+
|
6
|
+
def ==: ((Object | PgEventstore::Event) other) -> bool
|
7
|
+
|
8
|
+
def link?: () -> bool
|
9
|
+
|
10
|
+
def system?: () -> bool
|
11
|
+
|
12
|
+
def initialize: (**untyped options) -> void
|
13
|
+
|
14
|
+
def options_hash: () -> ::Hash[untyped, untyped]
|
15
|
+
|
16
|
+
def readonly!: (Symbol opt_name) -> bool
|
17
|
+
|
18
|
+
def readonly?: (Symbol opt_name) -> bool
|
19
|
+
|
20
|
+
def readonly_error: (Symbol opt_name) -> void
|
21
|
+
|
22
|
+
def init_default_values: (::Hash[untyped, untyped] options) -> void
|
23
|
+
|
24
|
+
attr_accessor id: String?
|
25
|
+
|
26
|
+
attr_accessor type: String
|
27
|
+
|
28
|
+
attr_accessor global_position: Integer?
|
29
|
+
|
30
|
+
attr_accessor stream: PgEventstore::Stream?
|
31
|
+
|
32
|
+
attr_accessor stream_revision: Integer?
|
33
|
+
|
34
|
+
attr_accessor data: ::Hash[untyped, untyped]
|
35
|
+
|
36
|
+
attr_accessor metadata: ::Hash[untyped, untyped]
|
37
|
+
|
38
|
+
attr_accessor link_id: String?
|
39
|
+
|
40
|
+
attr_accessor link_partition_id: Integer?
|
41
|
+
|
42
|
+
attr_accessor link: PgEventstore::Event?
|
43
|
+
|
44
|
+
attr_accessor created_at: Time?
|
45
|
+
end
|
46
|
+
end
|