8e732b0f9e
Configure redis for ktor/koin
2025-04-14 23:39:58 +02:00
c762f31449
Move tests
2025-04-14 23:39:56 +02:00
8c1eabb9f5
Projection was now built on listener events
...
Create ProjectionBus and use it with listeners
add EventStream::getByVersion
2025-04-14 23:39:56 +02:00
c3155da23c
Create route to list all the games
2025-04-14 23:39:52 +02:00
8074881d57
Move GameStateRepository
2025-04-14 23:39:51 +02:00
1a96c68521
Add AggregateID for the PlayerNotificationEventListener and CommandHandler
2025-04-14 23:39:50 +02:00
3434d43fc2
move secrete into config file
2025-04-14 23:39:48 +02:00
4adfc6467c
Split configs
2025-04-14 23:39:48 +02:00
769d104040
Move file and add interface to improve Archi Hexa
2025-04-14 23:39:47 +02:00
4739495980
Rename file DeclareWebSocketsGameRoute
2025-04-14 23:39:47 +02:00
fb9a8e2384
Rename class GameCommandRouteWebSocket
2025-04-14 23:39:46 +02:00
ca95344ca9
Send Success notification when Command is executed
...
extract Action of the Commands
simplify somme classes
2025-04-14 23:39:45 +02:00
a2f93d4edd
rename GameCommandRunner to GameCommandActionRunner
2025-04-14 23:39:45 +02:00
b4234a9b37
update ktlint rules
2025-04-14 23:39:44 +02:00
492981bed0
Split EventStream and EventStore
2025-04-14 23:39:43 +02:00
91767e3747
Improve concurrence of ProjectionSnapshotRepositoryInMemory and GameEventHandler
2025-04-14 23:39:42 +02:00
286dedac76
extract projection snapshot logic
...
implement GameStateRepositoryTest
add lambda to the GameEventHandler.handle{} to set the version
add VersionBuilder
add version to the events
add creation date to the events
rename gameId to aggregateId
add EventHandler interface
2025-04-14 23:39:41 +02:00
28075feff2
create GameCommandRunner to extract business logic
2025-04-14 23:39:41 +02:00
a2756d7fdb
Rename listeners
2025-04-14 23:39:40 +02:00
c84aa7e0c1
CommandStreamChannel block the duplicate call
...
add GameCommandHandlerTest
Create a CommandStreamChannelBuilder to inject maxCacheTime
Add missing empty disabled test
fix EventStreamInMemory.readAll
2025-04-14 23:39:40 +02:00
0fbea7903a
create a FrameChannelConverter
2025-04-14 23:39:39 +02:00
c84562afe6
Move serializer
2025-04-14 23:39:39 +02:00
3a685496fd
Add GameStateRepository.getUntil(event)
...
Add Cache and Snapshot to the GameStateRepository
Add eventId on events
2025-04-14 23:39:38 +02:00
19e425d684
Create GameStateRepository
...
Use GameState.apply() to build Projection
Create GameEventHandler
Add PlayerWinEvent
2025-04-14 23:39:38 +02:00
51d857513c
Create test for complete game
...
create notifications for reply the players
implement notifications on GameEventPlayerNotificationListener
add priority to the eventbus.subscribe()
improve JWT creation
update libs koin + ktor
remove output of GameCommandStream
improve logs
create a function disableShuffleDeck to disable the shuffle of the deck (for tests)
2025-04-14 23:39:36 +02:00
99f0760d3c
Clean and fix
2025-04-14 23:39:36 +02:00
bc35131bfc
add IamReadyToPlayCommand & refactoring
2025-04-14 23:39:31 +02:00
06443d7efa
refactoring
2025-04-14 23:39:31 +02:00