diff options
| author | Kostya <mail@sartin.in> | 2026-08-13 15:39:56 +0000 |
|---|---|---|
| committer | Kostya <mail@sartin.in> | 2026-08-13 15:39:56 +0000 |
| commit | 9dd3ec7ff11839503e4d5ef6639d0faa21403095 (patch) | |
| tree | 925fb81222c055404b63cc8eed8ef7ae710ec5be /ui-console/src/main | |
| parent | c58e65ad4fba4b964d26dcf11d6163465fc3cfd3 (diff) | |
| download | guess-market-9dd3ec7ff11839503e4d5ef6639d0faa21403095.tar.gz guess-market-9dd3ec7ff11839503e4d5ef6639d0faa21403095.tar.xz guess-market-9dd3ec7ff11839503e4d5ef6639d0faa21403095.zip | |
Move I/O provider abstraction to ui-console, add ledger/account/problem DTOs
InputProvider/OutputProvider were api-layer types only ever implemented
by the console UI; relocate them there. Drop the unused
GuessMarketEngine/LocalGuessMarketService pair, flesh out LoadResultDTO
with success/failure variants, and make LocalGuessMarketContext.LoadAsync
report real outcomes instead of an empty placeholder.
Diffstat (limited to 'ui-console/src/main')
9 files changed, 22 insertions, 11 deletions
diff --git a/ui-console/src/main/java/market/guess/ui/console/ConsoleInputProvider.java b/ui-console/src/main/java/market/guess/ui/console/ConsoleInputProvider.java index 71de3be..38b02a9 100644 --- a/ui-console/src/main/java/market/guess/ui/console/ConsoleInputProvider.java +++ b/ui-console/src/main/java/market/guess/ui/console/ConsoleInputProvider.java | |||
| @@ -1,7 +1,6 @@ | |||
| 1 | package market.guess.ui.console; | 1 | package market.guess.ui.console; |
| 2 | 2 | ||
| 3 | import java.util.Scanner; | 3 | import java.util.Scanner; |
| 4 | import market.guess.InputProvider; | ||
| 5 | 4 | ||
| 6 | public class ConsoleInputProvider implements InputProvider { | 5 | public class ConsoleInputProvider implements InputProvider { |
| 7 | private final Scanner scanner = new Scanner(System.in); | 6 | private final Scanner scanner = new Scanner(System.in); |
diff --git a/ui-console/src/main/java/market/guess/ui/console/ConsoleInputProviderFactory.java b/ui-console/src/main/java/market/guess/ui/console/ConsoleInputProviderFactory.java index d122549..a7433b7 100644 --- a/ui-console/src/main/java/market/guess/ui/console/ConsoleInputProviderFactory.java +++ b/ui-console/src/main/java/market/guess/ui/console/ConsoleInputProviderFactory.java | |||
| @@ -1,8 +1,5 @@ | |||
| 1 | package market.guess.ui.console; | 1 | package market.guess.ui.console; |
| 2 | 2 | ||
| 3 | import market.guess.InputProvider; | ||
| 4 | import market.guess.InputProviderFactory; | ||
| 5 | |||
| 6 | public class ConsoleInputProviderFactory implements InputProviderFactory { | 3 | public class ConsoleInputProviderFactory implements InputProviderFactory { |
| 7 | 4 | ||
| 8 | @Override | 5 | @Override |
diff --git a/ui-console/src/main/java/market/guess/ui/console/ConsoleOutputProvider.java b/ui-console/src/main/java/market/guess/ui/console/ConsoleOutputProvider.java index eb9f31b..84017ac 100644 --- a/ui-console/src/main/java/market/guess/ui/console/ConsoleOutputProvider.java +++ b/ui-console/src/main/java/market/guess/ui/console/ConsoleOutputProvider.java | |||
| @@ -1,7 +1,5 @@ | |||
| 1 | package market.guess.ui.console; | 1 | package market.guess.ui.console; |
| 2 | 2 | ||
| 3 | import market.guess.OutputProvider; | ||
| 4 | |||
| 5 | public class ConsoleOutputProvider implements OutputProvider { | 3 | public class ConsoleOutputProvider implements OutputProvider { |
| 6 | 4 | ||
| 7 | @Override | 5 | @Override |
diff --git a/ui-console/src/main/java/market/guess/ui/console/ConsoleOutputProviderFactory.java b/ui-console/src/main/java/market/guess/ui/console/ConsoleOutputProviderFactory.java index 6db91fc..3665df3 100644 --- a/ui-console/src/main/java/market/guess/ui/console/ConsoleOutputProviderFactory.java +++ b/ui-console/src/main/java/market/guess/ui/console/ConsoleOutputProviderFactory.java | |||
| @@ -1,8 +1,5 @@ | |||
| 1 | package market.guess.ui.console; | 1 | package market.guess.ui.console; |
| 2 | 2 | ||
| 3 | import market.guess.OutputProvider; | ||
| 4 | import market.guess.OutputProviderFactory; | ||
| 5 | |||
| 6 | public class ConsoleOutputProviderFactory implements OutputProviderFactory { | 3 | public class ConsoleOutputProviderFactory implements OutputProviderFactory { |
| 7 | 4 | ||
| 8 | @Override | 5 | @Override |
diff --git a/ui-console/src/main/java/market/guess/ui/console/InputProvider.java b/ui-console/src/main/java/market/guess/ui/console/InputProvider.java new file mode 100644 index 0000000..3579b4a --- /dev/null +++ b/ui-console/src/main/java/market/guess/ui/console/InputProvider.java | |||
| @@ -0,0 +1,5 @@ | |||
| 1 | package market.guess.ui.console; | ||
| 2 | |||
| 3 | public interface InputProvider extends AutoCloseable { | ||
| 4 | int nextInt(); | ||
| 5 | } | ||
diff --git a/ui-console/src/main/java/market/guess/ui/console/InputProviderFactory.java b/ui-console/src/main/java/market/guess/ui/console/InputProviderFactory.java new file mode 100644 index 0000000..dcbb1c6 --- /dev/null +++ b/ui-console/src/main/java/market/guess/ui/console/InputProviderFactory.java | |||
| @@ -0,0 +1,5 @@ | |||
| 1 | package market.guess.ui.console; | ||
| 2 | |||
| 3 | public interface InputProviderFactory { | ||
| 4 | InputProvider create(); | ||
| 5 | } | ||
diff --git a/ui-console/src/main/java/market/guess/ui/console/Menu.java b/ui-console/src/main/java/market/guess/ui/console/Menu.java index a5217a4..4bf8929 100644 --- a/ui-console/src/main/java/market/guess/ui/console/Menu.java +++ b/ui-console/src/main/java/market/guess/ui/console/Menu.java | |||
| @@ -1,7 +1,5 @@ | |||
| 1 | package market.guess.ui.console; | 1 | package market.guess.ui.console; |
| 2 | 2 | ||
| 3 | import market.guess.OutputProvider; | ||
| 4 | import market.guess.OutputProviderFactory; | ||
| 5 | import org.picocontainer.Startable; | 3 | import org.picocontainer.Startable; |
| 6 | 4 | ||
| 7 | public class Menu implements Startable { | 5 | public class Menu implements Startable { |
diff --git a/ui-console/src/main/java/market/guess/ui/console/OutputProvider.java b/ui-console/src/main/java/market/guess/ui/console/OutputProvider.java new file mode 100644 index 0000000..57ff001 --- /dev/null +++ b/ui-console/src/main/java/market/guess/ui/console/OutputProvider.java | |||
| @@ -0,0 +1,7 @@ | |||
| 1 | package market.guess.ui.console; | ||
| 2 | |||
| 3 | public interface OutputProvider { | ||
| 4 | void print(Object object); | ||
| 5 | |||
| 6 | void println(Object object); | ||
| 7 | } | ||
diff --git a/ui-console/src/main/java/market/guess/ui/console/OutputProviderFactory.java b/ui-console/src/main/java/market/guess/ui/console/OutputProviderFactory.java new file mode 100644 index 0000000..6d6601f --- /dev/null +++ b/ui-console/src/main/java/market/guess/ui/console/OutputProviderFactory.java | |||
| @@ -0,0 +1,5 @@ | |||
| 1 | package market.guess.ui.console; | ||
| 2 | |||
| 3 | public interface OutputProviderFactory { | ||
| 4 | OutputProvider create(); | ||
| 5 | } | ||