Skip to content
Snippets Groups Projects

Ozg 7501 weiterleitung vorbereiten

Merged Krzysztof Witukiewicz requested to merge OZG-7501-weiterleitung-vorbereiten into main
2 unresolved threads
3 files
+ 73
23
Compare changes
  • Side-by-side
  • Inline
Files
3
@@ -97,16 +97,25 @@ public class ForwardingEventListener {
@EventListener(condition = IS_FORWARD_VORGANG_ORDER_CONDITION)
public void onForwardVorgangOrder(CommandCreatedEvent event) {
lockVorgangOnForwarding(event.getSource());
service.forward(forwardingRequestMapper.fromCommand(event.getSource()));
publisher.publishEvent(new VorgangLockedEvent(event.getSource()));
handleException(() -> handleForwardVorgangCommand(event.getSource()), event.getSource().getId());
}
void handleForwardVorgangCommand(Command 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 is being forwarded").build();
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();
}
private void handleException(Runnable runnable, String commandId) {
try {
runnable.run();
Loading