Как пройти подачу из котлина?

Посмотрите на код:

CompletableFuture.supplyAsync({
    awsBatch.terminateJob(
        TerminateJobRequest.builder().jobId(it).reason("terminated").build())}, executor)

Intellij пойми меня:

Type mismatrch:
Required: Supplier<TerminateJobResponse>
Found: () -> TerminateJobResponse

Пока эта компиляция идеальна, но без исполнителя:

CompletableFuture.supplyAsync {
    awsBatch.terminateJob(TerminateJobRequest.builder().jobId(it).reason("terminated").build())
}

Как передать поставщика в API Java 8 от Kotlin?

Оффтоп (только мое настроение на сегодня)

Они создали хороший метод CompletableFuture.allOf() с типом возврата voidи создал это - передай поставщика в качестве первого аргумента... Я люблю java, но все это иногда приводит меня в бешенство - почему бы просто не посмотреть на scala и создать что-то такое же??? Kotlin, Scala автоматически выставляет второй аргумент как функцию myFunc("parameter"){"function"}, Итак, теперь я создал код и должен потратить пару часов на компиляцию сахара (что должно сэкономить мое время)
: (((

1 ответ

Ты пытался

CompletableFuture.supplyAsync(Supplier<TerminateJobResponse> {

?

Использовать функциональные литералы

CompletableFuture.supplyAsync<Something>({ Runnable { println("abc") } }, { Runnable { println("xyz") } })

Посмотреть преобразования SAM

Другие вопросы по тегам