Size: a a a

Java/Kotlin and more

2021 May 30

TS

Timur Shaidullin in Java/Kotlin and more
Если у тебя getConditions синхронный метод, можно использовать handle():
        Flux.fromIterable(models)
               .handle((model, sink) -> {
                   if (model.isDefault) {
                       sink.next(model);
                   } else {
                       List<Condition> conditions = getConditions(model);

                       boolean matched = false;
                       for (Condition cond : conditions) {
                           matched &= cond.check(model);
                       }

                       if (matched) {
                           sink.next(model);
                       }
                   }
               });
источник

KJ

Kirill Jønua in Java/Kotlin and more
getConditions() возвращает Mono<List<Condition>>
источник

TS

Timur Shaidullin in Java/Kotlin and more
handle замени на flatMap
.flatMap(model -> {
       if (model.isDefault) {
           return Mono.just(model);
       } else {
           return Flux.fromIterable(getConditions(model))
                   .all(cond -> cond.check(model))
                   .filter(Boolean::booleanValue)
                   .map(ignored -> model);
       }
   });
источник

KJ

Kirill Jønua in Java/Kotlin and more
что такое all?
источник

KJ

Kirill Jønua in Java/Kotlin and more
reduce?
источник

KJ

Kirill Jønua in Java/Kotlin and more
аа, сорри
источник

TS

Timur Shaidullin in Java/Kotlin and more
Применение предиката для каждого элемента в стриме
источник

KJ

Kirill Jønua in Java/Kotlin and more
Это восхитительно. Спасибо большое,   @timur_s_m
источник

KJ

Kirill Jønua in Java/Kotlin and more
А можете посоветовать мне что-то почитать по правильной архитекруте реактивного кода, про то, как писать реактивный код правильно?
источник

KJ

Kirill Jønua in Java/Kotlin and more
а можно как-то скипнуть остальные модели, когда то, что написано во flatMap вернуло не empty() ?
источник

KJ

Kirill Jønua in Java/Kotlin and more
то есть getConditions должен выполняться столько раз, сколько потребуется для первого выполнения условий на одной из моделей
источник

KJ

Kirill Jønua in Java/Kotlin and more
а не для всех моделей
источник

TS

Timur Shaidullin in Java/Kotlin and more
Уже не у компа. Пороюсь в закладках, отправлю потом
источник

KJ

Kirill Jønua in Java/Kotlin and more
Ага, пасиб
источник

AL

Aleksander Lemyagov in Java/Kotlin and more
Подскажите, пожалуйста, годные статью об spring boot 2 с oauth2. Интересует свой сервер и клиент. Спасибо.
источник

А

Артем in Java/Kotlin and more
Laurentiu Spilca на ютубе, серия видосов про это есть, вроде годно
источник

ME

Makhlov Egor in Java/Kotlin and more
Народ, подскажите удобную и бесплатную прогу для быстрого моделирования архитектуры на UML с возможностью экспорта диаграмм в png/jpeg
источник

RA

Rakhmatulla Amanov in Java/Kotlin and more
источник

ME

Makhlov Egor in Java/Kotlin and more
А чуть серьезнее, чем аналог Draw.io известно?
Ранее пользовался StarUML и Visual Paradigm, но и то и другое либо с триалом, либо экспортирует вместе с ватермаркой, что немного отвлекает
источник

AE

Alexandr Emelyanov in Java/Kotlin and more
Visual paradigm, экспорт в csv - там просто просто регекспом выразаешь и готово
источник