|
1 | 1 | package com.example.demo; |
2 | 2 |
|
3 | | -import fr.maif.concurrent.CompletionStages; |
4 | | -import fr.maif.eventsourcing.CommandHandler; |
5 | 3 | import fr.maif.eventsourcing.Events; |
| 4 | +import fr.maif.eventsourcing.blocking.CommandHandler; |
6 | 5 | import io.vavr.collection.List; |
7 | 6 | import io.vavr.control.Either; |
8 | 7 | import io.vavr.control.Option; |
9 | 8 |
|
10 | 9 | import java.math.BigDecimal; |
11 | 10 | import java.sql.Connection; |
12 | | -import java.util.concurrent.CompletionStage; |
13 | 11 |
|
14 | | -import static com.example.demo.BankCommand.CloseAccount; |
15 | | -import static com.example.demo.BankCommand.Deposit; |
16 | | -import static com.example.demo.BankCommand.OpenAccount; |
17 | | -import static com.example.demo.BankCommand.Withdraw; |
18 | | -import static io.vavr.API.Left; |
19 | | -import static io.vavr.API.List; |
20 | | -import static io.vavr.API.Right; |
| 12 | +import static com.example.demo.BankCommand.*; |
| 13 | +import static io.vavr.API.*; |
21 | 14 |
|
22 | 15 | public class BankCommandHandler implements CommandHandler<String, Account, BankCommand, BankEvent, List<String>, Connection> { |
23 | 16 | @Override |
24 | | - public CompletionStage<Either<String, Events<BankEvent, List<String>>>> handleCommand( |
| 17 | + public Either<String, Events<BankEvent, List<String>>> handleCommand( |
25 | 18 | Connection transactionContext, |
26 | 19 | Option<Account> previousState, |
27 | 20 | BankCommand command) { |
28 | | - return CompletionStages.of(() -> switch (command) { |
| 21 | + return switch (command) { |
29 | 22 | case Withdraw withdraw -> this.handleWithdraw(previousState, withdraw); |
30 | 23 | case Deposit deposit -> this.handleDeposit(previousState, deposit); |
31 | 24 | case OpenAccount openAccount -> this.handleOpening(openAccount); |
32 | 25 | case CloseAccount close -> this.handleClosing(previousState, close); |
33 | | - }); |
| 26 | + }; |
34 | 27 | } |
35 | 28 |
|
36 | 29 | private Either<String, Events<BankEvent, List<String>>> handleOpening( |
|
0 commit comments