private ShipmentRepository repository;
@EventListener(asynchronous = true)
public void handle(OrderSubmittedEvent event) {
OrderDto orderDetails = orderFinder.find(event.getOrderId());
Shipment shipment = factory.createShipment(orderDetails.getOrderId());
repository.save(shipment);
}