diff --git a/vorgang-manager-server/src/main/java/de/ozgcloud/vorgang/vorgang/redirect/ForwardingEventListener.java b/vorgang-manager-server/src/main/java/de/ozgcloud/vorgang/vorgang/redirect/ForwardingEventListener.java index 56b8691e800fe4912df2d232f379e504bb1b7594..5462a66755829257883aa30dc23fc9aea347e182 100644 --- a/vorgang-manager-server/src/main/java/de/ozgcloud/vorgang/vorgang/redirect/ForwardingEventListener.java +++ b/vorgang-manager-server/src/main/java/de/ozgcloud/vorgang/vorgang/redirect/ForwardingEventListener.java @@ -101,19 +101,14 @@ public class ForwardingEventListener { } void handleForwardVorgangCommand(Command command) { + service.forward(forwardingRequestMapper.fromCommand(command)); lockVorgangOnForwarding(command); - service.forward(updateVorgangVersion(forwardingRequestMapper.fromCommand(command))); publisher.publishEvent(new VorgangLockedEvent(command)); } private void lockVorgangOnForwarding(Command command) { var lock = lockMapper.fromCommand(command).toBuilder().reason("Vorgang was forwarded").build(); - vorgangService.lockVorgang(lock, command.getVorgangId(), command.getRelationVersion()); - } - - ForwardingRequest updateVorgangVersion(ForwardingRequest request) { - var vorgang = vorgangService.getById(request.getVorgangId()); - return request.toBuilder().version(vorgang.getVersion()).build(); + vorgangService.lockVorgang(lock, command.getVorgangId(), command.getRelationVersion() + 1); } private void handleException(Runnable runnable, String commandId) { diff --git a/vorgang-manager-server/src/test/java/de/ozgcloud/vorgang/vorgang/redirect/ForwardingEventListenerTest.java b/vorgang-manager-server/src/test/java/de/ozgcloud/vorgang/vorgang/redirect/ForwardingEventListenerTest.java index acb4c3377432346db0142aaec527e680ca3e7527..7ea1432a94ab13bd4de3e4cdfa4586320aa8cb72 100644 --- a/vorgang-manager-server/src/test/java/de/ozgcloud/vorgang/vorgang/redirect/ForwardingEventListenerTest.java +++ b/vorgang-manager-server/src/test/java/de/ozgcloud/vorgang/vorgang/redirect/ForwardingEventListenerTest.java @@ -146,19 +146,15 @@ class ForwardingEventListenerTest { private final Command command = CommandTestFactory.createBuilder().bodyObject(commandBody()).build(); private final Lock lock = LockTestFactory.create(); private final ForwardingRequest request = ForwardingRequestTestFactory.create(); - private final ForwardingRequest updatedRequest = ForwardingRequestTestFactory.createBuilder().version(request.getVersion() + 1).build(); @Captor private ArgumentCaptor<Lock> lockCaptor; @Captor - private ArgumentCaptor<ForwardingRequest> forwardingRequestCaptor; - @Captor private ArgumentCaptor<VorgangLockedEvent> lockedEventCaptor; @BeforeEach void init() { when(forwardingRequestMapper.fromCommand(any())).thenReturn(request); when(lockMapper.fromCommand(any())).thenReturn(lock); - doReturn(updatedRequest).when(listener).updateVorgangVersion(any()); } @Test @@ -172,7 +168,7 @@ class ForwardingEventListenerTest { void shouldLockVorgang() { handleForwardVorgangCommand(); - verify(vorgangService).lockVorgang(lockCaptor.capture(), eq(VorgangTestFactory.ID), eq(CommandTestFactory.RELATION_VERSION)); + verify(vorgangService).lockVorgang(lockCaptor.capture(), eq(VorgangTestFactory.ID), eq(CommandTestFactory.RELATION_VERSION + 1)); assertThat(lockCaptor.getValue()).usingRecursiveComparison() .isEqualTo(LockTestFactory.createBuilder().reason("Vorgang was forwarded").build()); } @@ -184,19 +180,11 @@ class ForwardingEventListenerTest { verify(forwardingRequestMapper).fromCommand(command); } - @Test - void shouldUpdateVorgangVersionInRequest() { - handleForwardVorgangCommand(); - - verify(listener).updateVorgangVersion(request); - } - @Test void shouldCallForwardingService() { handleForwardVorgangCommand(); - verify(forwardingService).forward(forwardingRequestCaptor.capture()); - assertThat(forwardingRequestCaptor.getValue()).isSameAs(updatedRequest); + verify(forwardingService).forward(same(request)); } @Test