v
Size: a a a
v
v

AG

v
AG
v
C
A
io.netty.util.ResourceLeakDetector - LEAK: ByteBuf.release() was not called before it's garbage-collected. See http://netty.io/wiki/reference-counted-objects.html for more information.
l params = mapOf(…)Хорошо бы зарелизить тело когда я обрабатываю статус ответа, но проблема в том что в библиотеке я не нашел банального releaseBody() метода, только эти:
webClient
.post()
.uri { it.build(params) }
.body(BodyInserters.fromObject(mapOf(...)))
.exchange()
.flatMap { resp ->
val statusCode = resp.statusCode()
when {
statusCode.is2xxSuccessful -> Mono.empty<Unit>()
statusCode.is5xxServerError -> throw SomeServiceError()
else -> checkError(resp, statusCode)
}
}
...
fun checkError(resp: ClientResponse, statusCode: HttpStatus): Mono<Unit> {
return resp.body(BodyExtractors.toMono(String::class.java)).flatMap {
val e = SomeBusinessException(objectMapper.readValue(it, Map::class.java))
if (...) {
Mono.empty<Unit>()
} else {
Mono.error(e)
}
}
}
der body(Flux<DataBuffer> body);
/**
* Set the body of the response to the UTF-8 encoded bytes of the given string.der body(String body);
Как юы лучше это организовать? Может кто сталкивался?I
...
.subscribeOn(Schedulers.io())
.switchMap {
repo.getSingle()
.subscribeOn(Schedulers.io())
.applyMyRetryWhen()
.onErrorReturnItem(MyObj())
}...
.subscribeOn(Schedulers.io())
.switchMap { repo.getSingle()) }
.applyMyRetryWhen()
.onErrorReturnItem(MyObj())l
...
.subscribeOn(Schedulers.io())
.switchMap {
repo.getSingle()
.subscribeOn(Schedulers.io())
.applyMyRetryWhen()
.onErrorReturnItem(MyObj())
}...
.subscribeOn(Schedulers.io())
.switchMap { repo.getSingle()) }
.applyMyRetryWhen()
.onErrorReturnItem(MyObj())I
l
l
I
A
println(“Before”);
Observable
.range(5, 3)
.subscribe(i -> println(i));
println(“After”);
bscribe от block в данном контексте?l
println(“Before”);
Observable
.range(5, 3)
.subscribe(i -> println(i));
println(“After”);
bscribe от block в данном контексте?l
l
A