d5b033e731
change validation on builder to error log
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
6028846828
Improve concurrency
...
Fix GameState.currentPlayerTurn and nextPlayer
Add ItsTheTurnOfNotification
Improve test
2025-04-14 23:39:38 +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
3080e515d6
simplify tests
2025-04-14 23:39:37 +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
d84e8359c9
CommandStreamChannelTest
2025-04-14 23:39:35 +02:00
c50127ba1b
PlayersHands class
2025-04-14 23:39:35 +02:00
fd78bfa4d0
Stack and Discard class
2025-04-14 23:39:35 +02:00
7043e1c6e7
Deck tests
2025-04-14 23:39:34 +02:00
729e7f6adc
PlayerHand test
2025-04-14 23:39:34 +02:00
b6908cc712
create ICantPlayCommand
...
+ move canBePlayThisCard
2025-04-14 23:39:33 +02:00
32472018d4
players hands and deck is modify on PlayerHavePassEvent & CardIsPlayedEvent events
2025-04-14 23:39:33 +02:00
4b6eaaf58c
move login from state to Command
2025-04-14 23:39:33 +02:00
84615dec36
create IWantToJoinTheGameCommand
2025-04-14 23:39:32 +02:00
a4e83f7357
extract action command
2025-04-14 23:39:32 +02:00
bc35131bfc
add IamReadyToPlayCommand & refactoring
2025-04-14 23:39:31 +02:00
06443d7efa
refactoring
2025-04-14 23:39:31 +02:00
f3ca94c97e
create bus and subscriber
2025-04-14 23:39:30 +02:00
a6847353b2
Rename HttpInput to HttpRoute
2025-04-14 23:39:30 +02:00
299ebff88b
Refactor app configuration
2025-04-14 23:39:30 +02:00
de3d4a1021
Add Comments
2025-04-14 23:39:29 +02:00
ae5c229e4b
Refactor
2025-04-14 23:39:29 +02:00
03ba14d918
update ktlint
2025-04-14 23:39:28 +02:00
53cc961c62
create CommandStream and first Command
2025-04-14 23:39:28 +02:00
8beb66d8dc
EventStream.publish() can now receive vararg
2025-04-14 23:39:27 +02:00
43b5f27e50
Implement first routes & tests
...
install Koin
install kotest
declare first events
create EventStream
2025-04-14 23:39:27 +02:00
5434c59129
add ktlint to project
2025-04-14 23:39:26 +02:00
e39c38ced5
Init empty project
2025-04-14 23:39:20 +02:00