synapse-core 0.1.2
Sign up to get free protection for your applications and to get access to all the features.
- data/lib/synapse.rb +351 -0
- data/lib/synapse/command/command_bus.rb +45 -0
- data/lib/synapse/command/command_callback.rb +18 -0
- data/lib/synapse/command/command_filter.rb +17 -0
- data/lib/synapse/command/command_handler.rb +13 -0
- data/lib/synapse/command/dispatch_interceptor.rb +16 -0
- data/lib/synapse/command/duplication.rb +43 -0
- data/lib/synapse/command/errors.rb +27 -0
- data/lib/synapse/command/filters/validation.rb +32 -0
- data/lib/synapse/command/gateway.rb +34 -0
- data/lib/synapse/command/interceptor_chain.rb +31 -0
- data/lib/synapse/command/interceptors/serialization.rb +35 -0
- data/lib/synapse/command/message.rb +19 -0
- data/lib/synapse/command/rollback_policy.rb +22 -0
- data/lib/synapse/command/simple_command_bus.rb +138 -0
- data/lib/synapse/command/wiring.rb +47 -0
- data/lib/synapse/domain/aggregate_root.rb +121 -0
- data/lib/synapse/domain/event_container.rb +127 -0
- data/lib/synapse/domain/message.rb +82 -0
- data/lib/synapse/domain/message_builder.rb +34 -0
- data/lib/synapse/domain/stream.rb +108 -0
- data/lib/synapse/duplication.rb +60 -0
- data/lib/synapse/errors.rb +13 -0
- data/lib/synapse/event_bus/event_bus.rb +40 -0
- data/lib/synapse/event_bus/event_listener.rb +16 -0
- data/lib/synapse/event_bus/event_listener_proxy.rb +12 -0
- data/lib/synapse/event_bus/simple_event_bus.rb +69 -0
- data/lib/synapse/event_bus/wiring.rb +23 -0
- data/lib/synapse/event_sourcing/aggregate_factory.rb +69 -0
- data/lib/synapse/event_sourcing/aggregate_root.rb +104 -0
- data/lib/synapse/event_sourcing/conflict_resolver.rb +80 -0
- data/lib/synapse/event_sourcing/entity.rb +64 -0
- data/lib/synapse/event_sourcing/member.rb +72 -0
- data/lib/synapse/event_sourcing/repository.rb +119 -0
- data/lib/synapse/event_sourcing/snapshot/count_stream.rb +86 -0
- data/lib/synapse/event_sourcing/snapshot/count_trigger.rb +91 -0
- data/lib/synapse/event_sourcing/snapshot/taker.rb +73 -0
- data/lib/synapse/event_sourcing/storage_listener.rb +34 -0
- data/lib/synapse/event_sourcing/stream_decorator.rb +25 -0
- data/lib/synapse/event_store/errors.rb +16 -0
- data/lib/synapse/event_store/event_store.rb +43 -0
- data/lib/synapse/event_store/in_memory.rb +59 -0
- data/lib/synapse/event_store/mongo/cursor_event_stream.rb +63 -0
- data/lib/synapse/event_store/mongo/event_store.rb +86 -0
- data/lib/synapse/event_store/mongo/per_commit_strategy.rb +253 -0
- data/lib/synapse/event_store/mongo/per_event_strategy.rb +143 -0
- data/lib/synapse/event_store/mongo/storage_strategy.rb +113 -0
- data/lib/synapse/event_store/mongo/template.rb +73 -0
- data/lib/synapse/identifier.rb +23 -0
- data/lib/synapse/message.rb +101 -0
- data/lib/synapse/message_builder.rb +38 -0
- data/lib/synapse/process_manager/correlation.rb +32 -0
- data/lib/synapse/process_manager/correlation_resolver.rb +14 -0
- data/lib/synapse/process_manager/correlation_set.rb +58 -0
- data/lib/synapse/process_manager/process.rb +71 -0
- data/lib/synapse/repository/errors.rb +26 -0
- data/lib/synapse/repository/lock_manager.rb +40 -0
- data/lib/synapse/repository/locking.rb +97 -0
- data/lib/synapse/repository/pessimistic_lock_manager.rb +61 -0
- data/lib/synapse/repository/repository.rb +109 -0
- data/lib/synapse/serialization/converter.rb +39 -0
- data/lib/synapse/serialization/converter/chain.rb +45 -0
- data/lib/synapse/serialization/converter/factory.rb +68 -0
- data/lib/synapse/serialization/converter/identity.rb +29 -0
- data/lib/synapse/serialization/converter/json.rb +31 -0
- data/lib/synapse/serialization/converter/ox.rb +31 -0
- data/lib/synapse/serialization/errors.rb +12 -0
- data/lib/synapse/serialization/lazy_object.rb +61 -0
- data/lib/synapse/serialization/message/data.rb +25 -0
- data/lib/synapse/serialization/message/metadata.rb +13 -0
- data/lib/synapse/serialization/message/serialization_aware.rb +17 -0
- data/lib/synapse/serialization/message/serialization_aware_message.rb +66 -0
- data/lib/synapse/serialization/message/serialized_message.rb +201 -0
- data/lib/synapse/serialization/message/serialized_message_builder.rb +64 -0
- data/lib/synapse/serialization/message/serialized_object_cache.rb +50 -0
- data/lib/synapse/serialization/message/serializer.rb +47 -0
- data/lib/synapse/serialization/revision_resolver.rb +30 -0
- data/lib/synapse/serialization/serialized_object.rb +37 -0
- data/lib/synapse/serialization/serialized_type.rb +31 -0
- data/lib/synapse/serialization/serializer.rb +98 -0
- data/lib/synapse/serialization/serializer/marshal.rb +32 -0
- data/lib/synapse/serialization/serializer/oj.rb +34 -0
- data/lib/synapse/serialization/serializer/ox.rb +31 -0
- data/lib/synapse/uow/factory.rb +28 -0
- data/lib/synapse/uow/listener.rb +79 -0
- data/lib/synapse/uow/listener_collection.rb +93 -0
- data/lib/synapse/uow/nesting.rb +262 -0
- data/lib/synapse/uow/provider.rb +71 -0
- data/lib/synapse/uow/storage_listener.rb +14 -0
- data/lib/synapse/uow/transaction_manager.rb +27 -0
- data/lib/synapse/uow/uow.rb +178 -0
- data/lib/synapse/upcasting/chain.rb +78 -0
- data/lib/synapse/upcasting/context.rb +58 -0
- data/lib/synapse/upcasting/data.rb +30 -0
- data/lib/synapse/upcasting/single_upcaster.rb +57 -0
- data/lib/synapse/upcasting/upcaster.rb +55 -0
- data/lib/synapse/version.rb +3 -0
- data/lib/synapse/wiring/message_wiring.rb +41 -0
- data/lib/synapse/wiring/wire.rb +55 -0
- data/lib/synapse/wiring/wire_registry.rb +61 -0
- data/test/command/duplication_test.rb +54 -0
- data/test/command/gateway_test.rb +25 -0
- data/test/command/interceptor_chain_test.rb +26 -0
- data/test/command/serialization_test.rb +37 -0
- data/test/command/simple_command_bus_test.rb +141 -0
- data/test/command/validation_test.rb +42 -0
- data/test/command/wiring_test.rb +73 -0
- data/test/domain/aggregate_root_test.rb +57 -0
- data/test/domain/fixtures.rb +31 -0
- data/test/domain/message_test.rb +61 -0
- data/test/domain/stream_test.rb +35 -0
- data/test/duplication_test.rb +40 -0
- data/test/event_bus/wiring_test.rb +46 -0
- data/test/event_sourcing/aggregate_factory_test.rb +28 -0
- data/test/event_sourcing/aggregate_root_test.rb +76 -0
- data/test/event_sourcing/entity_test.rb +34 -0
- data/test/event_sourcing/fixtures.rb +85 -0
- data/test/event_sourcing/repository_test.rb +102 -0
- data/test/event_sourcing/snapshot/aggregate_taker_test.rb +39 -0
- data/test/event_sourcing/snapshot/deferred_taker_test.rb +19 -0
- data/test/event_sourcing/snapshot/integration_test.rb +65 -0
- data/test/event_sourcing/storage_listener_test.rb +77 -0
- data/test/event_store/in_memory_test.rb +47 -0
- data/test/process_manager/correlation_set_test.rb +49 -0
- data/test/process_manager/correlation_test.rb +24 -0
- data/test/process_manager/process_test.rb +52 -0
- data/test/repository/locking_test.rb +101 -0
- data/test/serialization/converter/factory_test.rb +33 -0
- data/test/serialization/converter/identity_test.rb +17 -0
- data/test/serialization/converter/json_test.rb +31 -0
- data/test/serialization/converter/ox_test.rb +40 -0
- data/test/serialization/fixtures.rb +17 -0
- data/test/serialization/lazy_object_test.rb +32 -0
- data/test/serialization/message/metadata_test.rb +19 -0
- data/test/serialization/message/serialization_aware_message_test.rb +88 -0
- data/test/serialization/message/serialized_message_builder_test.rb +41 -0
- data/test/serialization/message/serialized_message_test.rb +140 -0
- data/test/serialization/message/serializer_test.rb +50 -0
- data/test/serialization/revision_resolver_test.rb +12 -0
- data/test/serialization/serialized_object_test.rb +36 -0
- data/test/serialization/serialized_type_test.rb +27 -0
- data/test/serialization/serializer/marshal_test.rb +22 -0
- data/test/serialization/serializer/oj_test.rb +24 -0
- data/test/serialization/serializer/ox_test.rb +36 -0
- data/test/serialization/serializer_test.rb +20 -0
- data/test/test_helper.rb +19 -0
- data/test/uow/factory_test.rb +23 -0
- data/test/uow/outer_commit_listener_test.rb +50 -0
- data/test/uow/provider_test.rb +70 -0
- data/test/uow/uow_test.rb +337 -0
- data/test/upcasting/chain_test.rb +29 -0
- data/test/upcasting/fixtures.rb +66 -0
- data/test/wiring/wire_registry_test.rb +60 -0
- data/test/wiring/wire_test.rb +51 -0
- metadata +263 -0
@@ -0,0 +1,29 @@
|
|
1
|
+
require 'test_helper'
|
2
|
+
require 'upcasting/fixtures'
|
3
|
+
|
4
|
+
module Synapse
|
5
|
+
module Upcasting
|
6
|
+
class UpcasterChainTest < Test::Unit::TestCase
|
7
|
+
|
8
|
+
def test_multiple_upcasters
|
9
|
+
factory = Serialization::ConverterFactory.new
|
10
|
+
|
11
|
+
chain = UpcasterChain.new factory
|
12
|
+
chain.push TestTypeUpcaster.new
|
13
|
+
chain.push TestSplitUpcaster.new
|
14
|
+
chain.push TestPhaseOutUpcaster.new
|
15
|
+
chain.converter_factory.register Serialization::JsonToObjectConverter.new
|
16
|
+
|
17
|
+
content = Hash.new
|
18
|
+
|
19
|
+
input = Serialization::SerializedObject.new(JSON.dump(content), String, Serialization::SerializedType.new('TestEvent', '1'))
|
20
|
+
output = chain.upcast(input, nil)
|
21
|
+
|
22
|
+
assert_equal 2, output.size
|
23
|
+
assert_equal 'FooEvent', output[0].type.name
|
24
|
+
assert_equal 'BarEvent', output[1].type.name
|
25
|
+
end
|
26
|
+
|
27
|
+
end
|
28
|
+
end
|
29
|
+
end
|
@@ -0,0 +1,66 @@
|
|
1
|
+
module Synapse
|
2
|
+
module Upcasting
|
3
|
+
class TestSplitUpcaster
|
4
|
+
include Upcaster
|
5
|
+
|
6
|
+
expects_content_type Object
|
7
|
+
|
8
|
+
def can_upcast?(serialized_type)
|
9
|
+
serialized_type.name == 'TestEvent' and serialized_type.revision == '2'
|
10
|
+
end
|
11
|
+
|
12
|
+
def upcast(intermediate, expected_types, upcast_context)
|
13
|
+
upcast_objects = Array.new
|
14
|
+
|
15
|
+
expected_types.each do |type|
|
16
|
+
upcast_objects.push Serialization::SerializedObject.new(intermediate.content, Object, type)
|
17
|
+
end
|
18
|
+
|
19
|
+
upcast_objects
|
20
|
+
end
|
21
|
+
|
22
|
+
def upcast_type(serialized_type)
|
23
|
+
upcast_types = Array.new
|
24
|
+
upcast_types.push Serialization::SerializedType.new('FooEvent', '1')
|
25
|
+
upcast_types.push Serialization::SerializedType.new('BazEvent', '1')
|
26
|
+
upcast_types.push Serialization::SerializedType.new('BarEvent', '1')
|
27
|
+
upcast_types
|
28
|
+
end
|
29
|
+
end
|
30
|
+
|
31
|
+
class TestTypeUpcaster
|
32
|
+
include SingleUpcaster
|
33
|
+
|
34
|
+
expects_content_type Object
|
35
|
+
|
36
|
+
def can_upcast?(serialized_type)
|
37
|
+
serialized_type.name == 'TestEvent' and serialized_type.revision == '1'
|
38
|
+
end
|
39
|
+
|
40
|
+
protected
|
41
|
+
|
42
|
+
def perform_upcast(intermediate, upcast_context)
|
43
|
+
intermediate.content
|
44
|
+
end
|
45
|
+
|
46
|
+
def perform_upcast_type(serialized_type)
|
47
|
+
Serialization::SerializedType.new('TestEvent', '2')
|
48
|
+
end
|
49
|
+
end
|
50
|
+
|
51
|
+
class TestPhaseOutUpcaster
|
52
|
+
include SingleUpcaster
|
53
|
+
|
54
|
+
expects_content_type Object
|
55
|
+
|
56
|
+
def can_upcast?(serialized_type)
|
57
|
+
serialized_type.name == 'BazEvent' and serialized_type.revision == '1'
|
58
|
+
end
|
59
|
+
|
60
|
+
protected
|
61
|
+
|
62
|
+
def perform_upcast(intermediate, upcast_context); end
|
63
|
+
def perform_upcast_type(serialized_type); end
|
64
|
+
end
|
65
|
+
end
|
66
|
+
end
|
@@ -0,0 +1,60 @@
|
|
1
|
+
require 'test_helper'
|
2
|
+
|
3
|
+
module Synapse
|
4
|
+
module Wiring
|
5
|
+
|
6
|
+
class WireRegistryTest < Test::Unit::TestCase
|
7
|
+
def test_duplicates
|
8
|
+
registry = WireRegistry.new false
|
9
|
+
|
10
|
+
registry.register Wire.new Object, :test
|
11
|
+
registry.register Wire.new Integer, :test
|
12
|
+
|
13
|
+
assert_raise DuplicateWireError do
|
14
|
+
registry.register Wire.new Object, :test
|
15
|
+
end
|
16
|
+
end
|
17
|
+
|
18
|
+
def test_each_type
|
19
|
+
registry = WireRegistry.new false
|
20
|
+
|
21
|
+
registry.register Wire.new Integer, :test
|
22
|
+
registry.register Wire.new Object, :test
|
23
|
+
|
24
|
+
types = Array.new
|
25
|
+
registry.each_type do |type|
|
26
|
+
types << type
|
27
|
+
end
|
28
|
+
|
29
|
+
assert_equal [Integer, Object], types
|
30
|
+
end
|
31
|
+
|
32
|
+
def test_wire_for
|
33
|
+
registry = WireRegistry.new false
|
34
|
+
|
35
|
+
registry.register Wire.new Object, :test
|
36
|
+
registry.register Wire.new Integer, :test
|
37
|
+
|
38
|
+
wire = registry.wire_for Integer
|
39
|
+
assert_equal Integer, wire.type
|
40
|
+
|
41
|
+
wire = registry.wire_for BasicObject
|
42
|
+
assert_equal nil, wire
|
43
|
+
end
|
44
|
+
|
45
|
+
def test_wires_for
|
46
|
+
registry = WireRegistry.new false
|
47
|
+
|
48
|
+
registry.register Wire.new String, :test
|
49
|
+
registry.register Wire.new Object, :test
|
50
|
+
registry.register Wire.new Integer, :test
|
51
|
+
|
52
|
+
wires = registry.wires_for Integer
|
53
|
+
|
54
|
+
assert_equal Integer, wires[0].type
|
55
|
+
assert_equal Object, wires[1].type
|
56
|
+
end
|
57
|
+
end
|
58
|
+
|
59
|
+
end
|
60
|
+
end
|
@@ -0,0 +1,51 @@
|
|
1
|
+
require 'test_helper'
|
2
|
+
|
3
|
+
module Synapse
|
4
|
+
module Wiring
|
5
|
+
|
6
|
+
class WireTest < Test::Unit::TestCase
|
7
|
+
def test_invoke_method
|
8
|
+
payload = TestEvent.new
|
9
|
+
|
10
|
+
target = Object.new
|
11
|
+
mock(target).test(payload)
|
12
|
+
|
13
|
+
wire = Wire.new TestEvent, :test
|
14
|
+
wire.invoke target, payload
|
15
|
+
end
|
16
|
+
|
17
|
+
def test_invoke_block
|
18
|
+
payload = TestEvent.new
|
19
|
+
|
20
|
+
target_class = Class.new do
|
21
|
+
def initialize
|
22
|
+
@secret = 5
|
23
|
+
end
|
24
|
+
end
|
25
|
+
target = target_class.new
|
26
|
+
|
27
|
+
handler = proc do |command|
|
28
|
+
raise 'Oh noes' unless @secret == 5
|
29
|
+
end
|
30
|
+
|
31
|
+
wire = Wire.new TestEvent, handler
|
32
|
+
wire.invoke target, payload
|
33
|
+
end
|
34
|
+
|
35
|
+
def test_comparison_and_equality
|
36
|
+
wire_a = Wire.new TestEvent, :test
|
37
|
+
wire_b = Wire.new TestEvent, :test
|
38
|
+
wire_c = Wire.new TestSubEvent, :test
|
39
|
+
|
40
|
+
assert wire_a == wire_b
|
41
|
+
assert wire_b == wire_a
|
42
|
+
assert_equal wire_a <=> wire_c, 1
|
43
|
+
assert_equal wire_c <=> wire_a, -1
|
44
|
+
end
|
45
|
+
end
|
46
|
+
|
47
|
+
class TestEvent; end
|
48
|
+
class TestSubEvent < TestEvent; end
|
49
|
+
|
50
|
+
end
|
51
|
+
end
|
metadata
ADDED
@@ -0,0 +1,263 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: synapse-core
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.1.2
|
5
|
+
prerelease:
|
6
|
+
platform: ruby
|
7
|
+
authors:
|
8
|
+
- Ian Unruh
|
9
|
+
autorequire:
|
10
|
+
bindir: bin
|
11
|
+
cert_chain: []
|
12
|
+
date: 2013-05-09 00:00:00.000000000 Z
|
13
|
+
dependencies:
|
14
|
+
- !ruby/object:Gem::Dependency
|
15
|
+
name: activesupport
|
16
|
+
requirement: !ruby/object:Gem::Requirement
|
17
|
+
none: false
|
18
|
+
requirements:
|
19
|
+
- - ! '>='
|
20
|
+
- !ruby/object:Gem::Version
|
21
|
+
version: '0'
|
22
|
+
type: :runtime
|
23
|
+
prerelease: false
|
24
|
+
version_requirements: !ruby/object:Gem::Requirement
|
25
|
+
none: false
|
26
|
+
requirements:
|
27
|
+
- - ! '>='
|
28
|
+
- !ruby/object:Gem::Version
|
29
|
+
version: '0'
|
30
|
+
- !ruby/object:Gem::Dependency
|
31
|
+
name: atomic
|
32
|
+
requirement: !ruby/object:Gem::Requirement
|
33
|
+
none: false
|
34
|
+
requirements:
|
35
|
+
- - ! '>='
|
36
|
+
- !ruby/object:Gem::Version
|
37
|
+
version: '0'
|
38
|
+
type: :runtime
|
39
|
+
prerelease: false
|
40
|
+
version_requirements: !ruby/object:Gem::Requirement
|
41
|
+
none: false
|
42
|
+
requirements:
|
43
|
+
- - ! '>='
|
44
|
+
- !ruby/object:Gem::Version
|
45
|
+
version: '0'
|
46
|
+
- !ruby/object:Gem::Dependency
|
47
|
+
name: eventmachine
|
48
|
+
requirement: !ruby/object:Gem::Requirement
|
49
|
+
none: false
|
50
|
+
requirements:
|
51
|
+
- - ! '>='
|
52
|
+
- !ruby/object:Gem::Version
|
53
|
+
version: '0'
|
54
|
+
type: :runtime
|
55
|
+
prerelease: false
|
56
|
+
version_requirements: !ruby/object:Gem::Requirement
|
57
|
+
none: false
|
58
|
+
requirements:
|
59
|
+
- - ! '>='
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '0'
|
62
|
+
- !ruby/object:Gem::Dependency
|
63
|
+
name: logging
|
64
|
+
requirement: !ruby/object:Gem::Requirement
|
65
|
+
none: false
|
66
|
+
requirements:
|
67
|
+
- - ! '>='
|
68
|
+
- !ruby/object:Gem::Version
|
69
|
+
version: '0'
|
70
|
+
type: :runtime
|
71
|
+
prerelease: false
|
72
|
+
version_requirements: !ruby/object:Gem::Requirement
|
73
|
+
none: false
|
74
|
+
requirements:
|
75
|
+
- - ! '>='
|
76
|
+
- !ruby/object:Gem::Version
|
77
|
+
version: '0'
|
78
|
+
description: A versatile CQRS and event sourcing framework
|
79
|
+
email: ianunruh@gmail.com
|
80
|
+
executables: []
|
81
|
+
extensions: []
|
82
|
+
extra_rdoc_files: []
|
83
|
+
files:
|
84
|
+
- lib/synapse.rb
|
85
|
+
- lib/synapse/uow/provider.rb
|
86
|
+
- lib/synapse/uow/transaction_manager.rb
|
87
|
+
- lib/synapse/uow/factory.rb
|
88
|
+
- lib/synapse/uow/uow.rb
|
89
|
+
- lib/synapse/uow/storage_listener.rb
|
90
|
+
- lib/synapse/uow/listener_collection.rb
|
91
|
+
- lib/synapse/uow/listener.rb
|
92
|
+
- lib/synapse/uow/nesting.rb
|
93
|
+
- lib/synapse/identifier.rb
|
94
|
+
- lib/synapse/command/rollback_policy.rb
|
95
|
+
- lib/synapse/command/interceptors/serialization.rb
|
96
|
+
- lib/synapse/command/duplication.rb
|
97
|
+
- lib/synapse/command/simple_command_bus.rb
|
98
|
+
- lib/synapse/command/message.rb
|
99
|
+
- lib/synapse/command/interceptor_chain.rb
|
100
|
+
- lib/synapse/command/wiring.rb
|
101
|
+
- lib/synapse/command/command_filter.rb
|
102
|
+
- lib/synapse/command/gateway.rb
|
103
|
+
- lib/synapse/command/errors.rb
|
104
|
+
- lib/synapse/command/command_callback.rb
|
105
|
+
- lib/synapse/command/dispatch_interceptor.rb
|
106
|
+
- lib/synapse/command/filters/validation.rb
|
107
|
+
- lib/synapse/command/command_handler.rb
|
108
|
+
- lib/synapse/command/command_bus.rb
|
109
|
+
- lib/synapse/repository/lock_manager.rb
|
110
|
+
- lib/synapse/repository/pessimistic_lock_manager.rb
|
111
|
+
- lib/synapse/repository/errors.rb
|
112
|
+
- lib/synapse/repository/locking.rb
|
113
|
+
- lib/synapse/repository/repository.rb
|
114
|
+
- lib/synapse/duplication.rb
|
115
|
+
- lib/synapse/event_sourcing/aggregate_factory.rb
|
116
|
+
- lib/synapse/event_sourcing/stream_decorator.rb
|
117
|
+
- lib/synapse/event_sourcing/entity.rb
|
118
|
+
- lib/synapse/event_sourcing/snapshot/count_trigger.rb
|
119
|
+
- lib/synapse/event_sourcing/snapshot/count_stream.rb
|
120
|
+
- lib/synapse/event_sourcing/snapshot/taker.rb
|
121
|
+
- lib/synapse/event_sourcing/storage_listener.rb
|
122
|
+
- lib/synapse/event_sourcing/member.rb
|
123
|
+
- lib/synapse/event_sourcing/repository.rb
|
124
|
+
- lib/synapse/event_sourcing/aggregate_root.rb
|
125
|
+
- lib/synapse/event_sourcing/conflict_resolver.rb
|
126
|
+
- lib/synapse/upcasting/upcaster.rb
|
127
|
+
- lib/synapse/upcasting/chain.rb
|
128
|
+
- lib/synapse/upcasting/data.rb
|
129
|
+
- lib/synapse/upcasting/single_upcaster.rb
|
130
|
+
- lib/synapse/upcasting/context.rb
|
131
|
+
- lib/synapse/version.rb
|
132
|
+
- lib/synapse/message.rb
|
133
|
+
- lib/synapse/process_manager/correlation_set.rb
|
134
|
+
- lib/synapse/process_manager/correlation.rb
|
135
|
+
- lib/synapse/process_manager/correlation_resolver.rb
|
136
|
+
- lib/synapse/process_manager/process.rb
|
137
|
+
- lib/synapse/event_store/mongo/cursor_event_stream.rb
|
138
|
+
- lib/synapse/event_store/mongo/event_store.rb
|
139
|
+
- lib/synapse/event_store/mongo/storage_strategy.rb
|
140
|
+
- lib/synapse/event_store/mongo/template.rb
|
141
|
+
- lib/synapse/event_store/mongo/per_commit_strategy.rb
|
142
|
+
- lib/synapse/event_store/mongo/per_event_strategy.rb
|
143
|
+
- lib/synapse/event_store/event_store.rb
|
144
|
+
- lib/synapse/event_store/errors.rb
|
145
|
+
- lib/synapse/event_store/in_memory.rb
|
146
|
+
- lib/synapse/errors.rb
|
147
|
+
- lib/synapse/message_builder.rb
|
148
|
+
- lib/synapse/event_bus/simple_event_bus.rb
|
149
|
+
- lib/synapse/event_bus/wiring.rb
|
150
|
+
- lib/synapse/event_bus/event_listener_proxy.rb
|
151
|
+
- lib/synapse/event_bus/event_listener.rb
|
152
|
+
- lib/synapse/event_bus/event_bus.rb
|
153
|
+
- lib/synapse/wiring/wire.rb
|
154
|
+
- lib/synapse/wiring/message_wiring.rb
|
155
|
+
- lib/synapse/wiring/wire_registry.rb
|
156
|
+
- lib/synapse/domain/event_container.rb
|
157
|
+
- lib/synapse/domain/message.rb
|
158
|
+
- lib/synapse/domain/stream.rb
|
159
|
+
- lib/synapse/domain/message_builder.rb
|
160
|
+
- lib/synapse/domain/aggregate_root.rb
|
161
|
+
- lib/synapse/serialization/lazy_object.rb
|
162
|
+
- lib/synapse/serialization/revision_resolver.rb
|
163
|
+
- lib/synapse/serialization/message/serialization_aware.rb
|
164
|
+
- lib/synapse/serialization/message/metadata.rb
|
165
|
+
- lib/synapse/serialization/message/serialization_aware_message.rb
|
166
|
+
- lib/synapse/serialization/message/serialized_message.rb
|
167
|
+
- lib/synapse/serialization/message/data.rb
|
168
|
+
- lib/synapse/serialization/message/serialized_object_cache.rb
|
169
|
+
- lib/synapse/serialization/message/serialized_message_builder.rb
|
170
|
+
- lib/synapse/serialization/message/serializer.rb
|
171
|
+
- lib/synapse/serialization/serialized_type.rb
|
172
|
+
- lib/synapse/serialization/converter/ox.rb
|
173
|
+
- lib/synapse/serialization/converter/chain.rb
|
174
|
+
- lib/synapse/serialization/converter/factory.rb
|
175
|
+
- lib/synapse/serialization/converter/json.rb
|
176
|
+
- lib/synapse/serialization/converter/identity.rb
|
177
|
+
- lib/synapse/serialization/serializer/ox.rb
|
178
|
+
- lib/synapse/serialization/serializer/oj.rb
|
179
|
+
- lib/synapse/serialization/serializer/marshal.rb
|
180
|
+
- lib/synapse/serialization/errors.rb
|
181
|
+
- lib/synapse/serialization/serializer.rb
|
182
|
+
- lib/synapse/serialization/converter.rb
|
183
|
+
- lib/synapse/serialization/serialized_object.rb
|
184
|
+
- test/duplication_test.rb
|
185
|
+
- test/uow/factory_test.rb
|
186
|
+
- test/uow/uow_test.rb
|
187
|
+
- test/uow/outer_commit_listener_test.rb
|
188
|
+
- test/uow/provider_test.rb
|
189
|
+
- test/command/duplication_test.rb
|
190
|
+
- test/command/interceptor_chain_test.rb
|
191
|
+
- test/command/gateway_test.rb
|
192
|
+
- test/command/wiring_test.rb
|
193
|
+
- test/command/simple_command_bus_test.rb
|
194
|
+
- test/command/serialization_test.rb
|
195
|
+
- test/command/validation_test.rb
|
196
|
+
- test/repository/locking_test.rb
|
197
|
+
- test/test_helper.rb
|
198
|
+
- test/event_sourcing/storage_listener_test.rb
|
199
|
+
- test/event_sourcing/repository_test.rb
|
200
|
+
- test/event_sourcing/aggregate_root_test.rb
|
201
|
+
- test/event_sourcing/snapshot/deferred_taker_test.rb
|
202
|
+
- test/event_sourcing/snapshot/integration_test.rb
|
203
|
+
- test/event_sourcing/snapshot/aggregate_taker_test.rb
|
204
|
+
- test/event_sourcing/entity_test.rb
|
205
|
+
- test/event_sourcing/fixtures.rb
|
206
|
+
- test/event_sourcing/aggregate_factory_test.rb
|
207
|
+
- test/upcasting/fixtures.rb
|
208
|
+
- test/upcasting/chain_test.rb
|
209
|
+
- test/process_manager/process_test.rb
|
210
|
+
- test/process_manager/correlation_set_test.rb
|
211
|
+
- test/process_manager/correlation_test.rb
|
212
|
+
- test/event_store/in_memory_test.rb
|
213
|
+
- test/event_bus/wiring_test.rb
|
214
|
+
- test/wiring/wire_registry_test.rb
|
215
|
+
- test/wiring/wire_test.rb
|
216
|
+
- test/domain/stream_test.rb
|
217
|
+
- test/domain/aggregate_root_test.rb
|
218
|
+
- test/domain/message_test.rb
|
219
|
+
- test/domain/fixtures.rb
|
220
|
+
- test/serialization/message/metadata_test.rb
|
221
|
+
- test/serialization/message/serialization_aware_message_test.rb
|
222
|
+
- test/serialization/message/serializer_test.rb
|
223
|
+
- test/serialization/message/serialized_message_builder_test.rb
|
224
|
+
- test/serialization/message/serialized_message_test.rb
|
225
|
+
- test/serialization/converter/factory_test.rb
|
226
|
+
- test/serialization/converter/ox_test.rb
|
227
|
+
- test/serialization/converter/identity_test.rb
|
228
|
+
- test/serialization/converter/json_test.rb
|
229
|
+
- test/serialization/serializer_test.rb
|
230
|
+
- test/serialization/lazy_object_test.rb
|
231
|
+
- test/serialization/serializer/oj_test.rb
|
232
|
+
- test/serialization/serializer/ox_test.rb
|
233
|
+
- test/serialization/serializer/marshal_test.rb
|
234
|
+
- test/serialization/serialized_object_test.rb
|
235
|
+
- test/serialization/revision_resolver_test.rb
|
236
|
+
- test/serialization/fixtures.rb
|
237
|
+
- test/serialization/serialized_type_test.rb
|
238
|
+
homepage: https://github.com/iunruh/synapse
|
239
|
+
licenses: []
|
240
|
+
post_install_message:
|
241
|
+
rdoc_options: []
|
242
|
+
require_paths:
|
243
|
+
- lib
|
244
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
245
|
+
none: false
|
246
|
+
requirements:
|
247
|
+
- - ! '>='
|
248
|
+
- !ruby/object:Gem::Version
|
249
|
+
version: '0'
|
250
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
251
|
+
none: false
|
252
|
+
requirements:
|
253
|
+
- - ! '>='
|
254
|
+
- !ruby/object:Gem::Version
|
255
|
+
version: '0'
|
256
|
+
requirements: []
|
257
|
+
rubyforge_project:
|
258
|
+
rubygems_version: 1.8.25
|
259
|
+
signing_key:
|
260
|
+
specification_version: 3
|
261
|
+
summary: A versatile CQRS and event sourcing framework
|
262
|
+
test_files: []
|
263
|
+
has_rdoc:
|