-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathGameConfiguration.java
More file actions
29 lines (24 loc) · 1.03 KB
/
GameConfiguration.java
File metadata and controls
29 lines (24 loc) · 1.03 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
package com.dddheroes.heroesofddd;
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;
@Configuration
public class GameConfiguration {
@Bean
public SequencingPolicy<EventMessage<?>> 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();
}
}