From f7751a641750adde97edfa015117c41ad1db8cbf Mon Sep 17 00:00:00 2001 From: Mateusz Nowak Date: Wed, 5 Mar 2025 11:55:40 +0100 Subject: [PATCH] :sparkles: feat: `CorrelationDataProvider` with `gameId`, `playerId` and the Axon defaults --- .../dddheroes/heroesofddd/GameConfiguration.java | 13 +++++++++++++ .../getdwellingbyid/GetDwellingByIdRestApi.java | 2 +- 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/dddheroes/heroesofddd/GameConfiguration.java b/src/main/java/com/dddheroes/heroesofddd/GameConfiguration.java index 0cacb37..383bc64 100644 --- a/src/main/java/com/dddheroes/heroesofddd/GameConfiguration.java +++ b/src/main/java/com/dddheroes/heroesofddd/GameConfiguration.java @@ -3,6 +3,9 @@ import com.dddheroes.heroesofddd.shared.application.GameMetaData; import org.axonframework.eventhandling.EventMessage; import org.axonframework.eventhandling.async.SequencingPolicy; +import org.axonframework.messaging.correlation.CorrelationDataProvider; +import org.axonframework.messaging.correlation.MessageOriginProvider; +import org.axonframework.messaging.correlation.SimpleCorrelationDataProvider; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; @@ -13,4 +16,14 @@ public class GameConfiguration { public SequencingPolicy> gameIdSequencingPolicy() { return e -> e.getMetaData().get(GameMetaData.GAME_ID_KEY); } + + @Bean + public CorrelationDataProvider gameDataProvider() { + return new SimpleCorrelationDataProvider(GameMetaData.GAME_ID_KEY, GameMetaData.PLAYER_ID_KEY); + } + + @Bean + public CorrelationDataProvider messageOriginProvider() { + return new MessageOriginProvider(); + } } diff --git a/src/main/java/com/dddheroes/heroesofddd/creaturerecruitment/read/getdwellingbyid/GetDwellingByIdRestApi.java b/src/main/java/com/dddheroes/heroesofddd/creaturerecruitment/read/getdwellingbyid/GetDwellingByIdRestApi.java index cd5d3fd..d8c4dc1 100644 --- a/src/main/java/com/dddheroes/heroesofddd/creaturerecruitment/read/getdwellingbyid/GetDwellingByIdRestApi.java +++ b/src/main/java/com/dddheroes/heroesofddd/creaturerecruitment/read/getdwellingbyid/GetDwellingByIdRestApi.java @@ -24,7 +24,7 @@ CompletableFuture getDwellings( @PathVariable String gameId, @PathVariable String dwellingId ) { - var query = GetDwellingById.query(dwellingId, gameId); + var query = GetDwellingById.query(gameId, dwellingId); return queryGateway.query( query,