- TransferConsumer transferConsumer =
- new TransferConsumer(properties.topic, consumer, executorService, mapper, transferService);
- transferConsumer.start();
- return transferConsumer;
+ return
+ new TransferConsumer(
+ properties.topic,
+ consumer,
+ executorService,
+ mapper,
+ new TransferConsumer.ConsumerUseCases() {
+ @Override
+ public void create(Transfer transfer)
+ {
+ productionTransferService.create(transfer);
+ }
+
+ @Override
+ public Optional<Transfer> get(Long id)
+ {
+ return productionTransferService.get(id);
+ }
+
+ @Override
+ public void handle(Transfer transfer)
+ {
+ productionTransferService.handle(transfer);
+ }
+ },
+ new TransferConsumer.ConsumerUseCases() {
+ @Override
+ public void create(Transfer transfer)
+ {
+ restoreTransferService.create(transfer);
+ }
+
+ @Override
+ public Optional<Transfer> get(Long id)
+ {
+ return restoreTransferService.get(id);
+ }
+
+ @Override
+ public void handle(Transfer transfer)
+ {
+ restoreTransferService.handle(transfer);
+ }
+ });