synapse-core 0.1.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (155) hide show
  1. data/lib/synapse.rb +351 -0
  2. data/lib/synapse/command/command_bus.rb +45 -0
  3. data/lib/synapse/command/command_callback.rb +18 -0
  4. data/lib/synapse/command/command_filter.rb +17 -0
  5. data/lib/synapse/command/command_handler.rb +13 -0
  6. data/lib/synapse/command/dispatch_interceptor.rb +16 -0
  7. data/lib/synapse/command/duplication.rb +43 -0
  8. data/lib/synapse/command/errors.rb +27 -0
  9. data/lib/synapse/command/filters/validation.rb +32 -0
  10. data/lib/synapse/command/gateway.rb +34 -0
  11. data/lib/synapse/command/interceptor_chain.rb +31 -0
  12. data/lib/synapse/command/interceptors/serialization.rb +35 -0
  13. data/lib/synapse/command/message.rb +19 -0
  14. data/lib/synapse/command/rollback_policy.rb +22 -0
  15. data/lib/synapse/command/simple_command_bus.rb +138 -0
  16. data/lib/synapse/command/wiring.rb +47 -0
  17. data/lib/synapse/domain/aggregate_root.rb +121 -0
  18. data/lib/synapse/domain/event_container.rb +127 -0
  19. data/lib/synapse/domain/message.rb +82 -0
  20. data/lib/synapse/domain/message_builder.rb +34 -0
  21. data/lib/synapse/domain/stream.rb +108 -0
  22. data/lib/synapse/duplication.rb +60 -0
  23. data/lib/synapse/errors.rb +13 -0
  24. data/lib/synapse/event_bus/event_bus.rb +40 -0
  25. data/lib/synapse/event_bus/event_listener.rb +16 -0
  26. data/lib/synapse/event_bus/event_listener_proxy.rb +12 -0
  27. data/lib/synapse/event_bus/simple_event_bus.rb +69 -0
  28. data/lib/synapse/event_bus/wiring.rb +23 -0
  29. data/lib/synapse/event_sourcing/aggregate_factory.rb +69 -0
  30. data/lib/synapse/event_sourcing/aggregate_root.rb +104 -0
  31. data/lib/synapse/event_sourcing/conflict_resolver.rb +80 -0
  32. data/lib/synapse/event_sourcing/entity.rb +64 -0
  33. data/lib/synapse/event_sourcing/member.rb +72 -0
  34. data/lib/synapse/event_sourcing/repository.rb +119 -0
  35. data/lib/synapse/event_sourcing/snapshot/count_stream.rb +86 -0
  36. data/lib/synapse/event_sourcing/snapshot/count_trigger.rb +91 -0
  37. data/lib/synapse/event_sourcing/snapshot/taker.rb +73 -0
  38. data/lib/synapse/event_sourcing/storage_listener.rb +34 -0
  39. data/lib/synapse/event_sourcing/stream_decorator.rb +25 -0
  40. data/lib/synapse/event_store/errors.rb +16 -0
  41. data/lib/synapse/event_store/event_store.rb +43 -0
  42. data/lib/synapse/event_store/in_memory.rb +59 -0
  43. data/lib/synapse/event_store/mongo/cursor_event_stream.rb +63 -0
  44. data/lib/synapse/event_store/mongo/event_store.rb +86 -0
  45. data/lib/synapse/event_store/mongo/per_commit_strategy.rb +253 -0
  46. data/lib/synapse/event_store/mongo/per_event_strategy.rb +143 -0
  47. data/lib/synapse/event_store/mongo/storage_strategy.rb +113 -0
  48. data/lib/synapse/event_store/mongo/template.rb +73 -0
  49. data/lib/synapse/identifier.rb +23 -0
  50. data/lib/synapse/message.rb +101 -0
  51. data/lib/synapse/message_builder.rb +38 -0
  52. data/lib/synapse/process_manager/correlation.rb +32 -0
  53. data/lib/synapse/process_manager/correlation_resolver.rb +14 -0
  54. data/lib/synapse/process_manager/correlation_set.rb +58 -0
  55. data/lib/synapse/process_manager/process.rb +71 -0
  56. data/lib/synapse/repository/errors.rb +26 -0
  57. data/lib/synapse/repository/lock_manager.rb +40 -0
  58. data/lib/synapse/repository/locking.rb +97 -0
  59. data/lib/synapse/repository/pessimistic_lock_manager.rb +61 -0
  60. data/lib/synapse/repository/repository.rb +109 -0
  61. data/lib/synapse/serialization/converter.rb +39 -0
  62. data/lib/synapse/serialization/converter/chain.rb +45 -0
  63. data/lib/synapse/serialization/converter/factory.rb +68 -0
  64. data/lib/synapse/serialization/converter/identity.rb +29 -0
  65. data/lib/synapse/serialization/converter/json.rb +31 -0
  66. data/lib/synapse/serialization/converter/ox.rb +31 -0
  67. data/lib/synapse/serialization/errors.rb +12 -0
  68. data/lib/synapse/serialization/lazy_object.rb +61 -0
  69. data/lib/synapse/serialization/message/data.rb +25 -0
  70. data/lib/synapse/serialization/message/metadata.rb +13 -0
  71. data/lib/synapse/serialization/message/serialization_aware.rb +17 -0
  72. data/lib/synapse/serialization/message/serialization_aware_message.rb +66 -0
  73. data/lib/synapse/serialization/message/serialized_message.rb +201 -0
  74. data/lib/synapse/serialization/message/serialized_message_builder.rb +64 -0
  75. data/lib/synapse/serialization/message/serialized_object_cache.rb +50 -0
  76. data/lib/synapse/serialization/message/serializer.rb +47 -0
  77. data/lib/synapse/serialization/revision_resolver.rb +30 -0
  78. data/lib/synapse/serialization/serialized_object.rb +37 -0
  79. data/lib/synapse/serialization/serialized_type.rb +31 -0
  80. data/lib/synapse/serialization/serializer.rb +98 -0
  81. data/lib/synapse/serialization/serializer/marshal.rb +32 -0
  82. data/lib/synapse/serialization/serializer/oj.rb +34 -0
  83. data/lib/synapse/serialization/serializer/ox.rb +31 -0
  84. data/lib/synapse/uow/factory.rb +28 -0
  85. data/lib/synapse/uow/listener.rb +79 -0
  86. data/lib/synapse/uow/listener_collection.rb +93 -0
  87. data/lib/synapse/uow/nesting.rb +262 -0
  88. data/lib/synapse/uow/provider.rb +71 -0
  89. data/lib/synapse/uow/storage_listener.rb +14 -0
  90. data/lib/synapse/uow/transaction_manager.rb +27 -0
  91. data/lib/synapse/uow/uow.rb +178 -0
  92. data/lib/synapse/upcasting/chain.rb +78 -0
  93. data/lib/synapse/upcasting/context.rb +58 -0
  94. data/lib/synapse/upcasting/data.rb +30 -0
  95. data/lib/synapse/upcasting/single_upcaster.rb +57 -0
  96. data/lib/synapse/upcasting/upcaster.rb +55 -0
  97. data/lib/synapse/version.rb +3 -0
  98. data/lib/synapse/wiring/message_wiring.rb +41 -0
  99. data/lib/synapse/wiring/wire.rb +55 -0
  100. data/lib/synapse/wiring/wire_registry.rb +61 -0
  101. data/test/command/duplication_test.rb +54 -0
  102. data/test/command/gateway_test.rb +25 -0
  103. data/test/command/interceptor_chain_test.rb +26 -0
  104. data/test/command/serialization_test.rb +37 -0
  105. data/test/command/simple_command_bus_test.rb +141 -0
  106. data/test/command/validation_test.rb +42 -0
  107. data/test/command/wiring_test.rb +73 -0
  108. data/test/domain/aggregate_root_test.rb +57 -0
  109. data/test/domain/fixtures.rb +31 -0
  110. data/test/domain/message_test.rb +61 -0
  111. data/test/domain/stream_test.rb +35 -0
  112. data/test/duplication_test.rb +40 -0
  113. data/test/event_bus/wiring_test.rb +46 -0
  114. data/test/event_sourcing/aggregate_factory_test.rb +28 -0
  115. data/test/event_sourcing/aggregate_root_test.rb +76 -0
  116. data/test/event_sourcing/entity_test.rb +34 -0
  117. data/test/event_sourcing/fixtures.rb +85 -0
  118. data/test/event_sourcing/repository_test.rb +102 -0
  119. data/test/event_sourcing/snapshot/aggregate_taker_test.rb +39 -0
  120. data/test/event_sourcing/snapshot/deferred_taker_test.rb +19 -0
  121. data/test/event_sourcing/snapshot/integration_test.rb +65 -0
  122. data/test/event_sourcing/storage_listener_test.rb +77 -0
  123. data/test/event_store/in_memory_test.rb +47 -0
  124. data/test/process_manager/correlation_set_test.rb +49 -0
  125. data/test/process_manager/correlation_test.rb +24 -0
  126. data/test/process_manager/process_test.rb +52 -0
  127. data/test/repository/locking_test.rb +101 -0
  128. data/test/serialization/converter/factory_test.rb +33 -0
  129. data/test/serialization/converter/identity_test.rb +17 -0
  130. data/test/serialization/converter/json_test.rb +31 -0
  131. data/test/serialization/converter/ox_test.rb +40 -0
  132. data/test/serialization/fixtures.rb +17 -0
  133. data/test/serialization/lazy_object_test.rb +32 -0
  134. data/test/serialization/message/metadata_test.rb +19 -0
  135. data/test/serialization/message/serialization_aware_message_test.rb +88 -0
  136. data/test/serialization/message/serialized_message_builder_test.rb +41 -0
  137. data/test/serialization/message/serialized_message_test.rb +140 -0
  138. data/test/serialization/message/serializer_test.rb +50 -0
  139. data/test/serialization/revision_resolver_test.rb +12 -0
  140. data/test/serialization/serialized_object_test.rb +36 -0
  141. data/test/serialization/serialized_type_test.rb +27 -0
  142. data/test/serialization/serializer/marshal_test.rb +22 -0
  143. data/test/serialization/serializer/oj_test.rb +24 -0
  144. data/test/serialization/serializer/ox_test.rb +36 -0
  145. data/test/serialization/serializer_test.rb +20 -0
  146. data/test/test_helper.rb +19 -0
  147. data/test/uow/factory_test.rb +23 -0
  148. data/test/uow/outer_commit_listener_test.rb +50 -0
  149. data/test/uow/provider_test.rb +70 -0
  150. data/test/uow/uow_test.rb +337 -0
  151. data/test/upcasting/chain_test.rb +29 -0
  152. data/test/upcasting/fixtures.rb +66 -0
  153. data/test/wiring/wire_registry_test.rb +60 -0
  154. data/test/wiring/wire_test.rb +51 -0
  155. 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: