Da się wyjąć obiekt z Publishera ?

0

Mam metodę:

@Override
    public Mono<Void> saveAll(Publisher<PizzaDTO> pizzaPublisher) {
        return pizzaReactiveRepository
            .saveAll().then();
    }

Tylko, że na razie nie działa, ponieważ saveAll() zapisuje do bazy obiekty typu Pizza, a nie PizzaDTO. Moje pytanie brzmi, czy da się jakoś wyciągnąć z tego Publishera obiekt PizzaDTO żeby go przekonwertować, a później przekazać do saveAll ?

0

map

0

A jakieś wskazówki jak tutaj użyć map ? Bo generalnie to o map wiem, użyłem jej w innej metodzie, ale w inny sposób:

 @Override
    public Mono<PizzaDTO> saveDTO(PizzaDTO pizzaDTO) {
        return pizzaReactiveRepository.save(pizzaDTOToPizza.convert(pizzaDTO))
            .map(p -> pizzaToPizzaDTO.convert(p));
    }

Przy publisher nie wiem jak to zrobić.

1
pizzaReactiveRepository.saveAll( Mono.fromDirect(pizzaPublisher).map(  pizzaDTO->pizzaDTOToPizza.convert(pizzaDTO))
0

Właśnie już kilka minut temu wpadłem na coś podobnego tylko, że nie powinno tam być Flux.from(pizzaPublisher) zamiast Mono.fromDirect(pizzaPublisher), skoro to jest metoda saveAll() ? Czy bez różnicy?

0

Ile masz tych obiektów? Jeden - to daj Mono, wiele - to daj Flux.
Z punktu widzenia Api bez różnicy.

1 użytkowników online, w tym zalogowanych: 0, gości: 1