Check CallLimitValidator only at startup (#479)
* Check CallLimitValidator only at startup checks * simplify code
This commit is contained in:
@@ -34,8 +34,8 @@ abstract class UpstreamValidator(
|
|||||||
|
|
||||||
abstract fun validateUpstreamSettings(): Mono<ValidateUpstreamSettingsResult>
|
abstract fun validateUpstreamSettings(): Mono<ValidateUpstreamSettingsResult>
|
||||||
|
|
||||||
fun validateUpstreamSettingsOnStartup(): ValidateUpstreamSettingsResult {
|
open fun validateUpstreamSettingsOnStartup(): ValidateUpstreamSettingsResult {
|
||||||
return validateUpstreamSettings().block() ?: ValidateUpstreamSettingsResult.UPSTREAM_FATAL_SETTINGS_ERROR
|
return ValidateUpstreamSettingsResult.UPSTREAM_VALID
|
||||||
}
|
}
|
||||||
|
|
||||||
companion object {
|
companion object {
|
||||||
|
|||||||
@@ -80,13 +80,25 @@ open class EthereumUpstreamValidator @JvmOverloads constructor(
|
|||||||
}
|
}
|
||||||
return Mono.zip(
|
return Mono.zip(
|
||||||
validateChain(),
|
validateChain(),
|
||||||
validateCallLimit(),
|
|
||||||
validateOldBlocks(),
|
validateOldBlocks(),
|
||||||
).map {
|
).map {
|
||||||
listOf(it.t1, it.t2, it.t3).sorted().last()
|
listOf(it.t1, it.t2).maxOf { it }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
override fun validateUpstreamSettingsOnStartup(): ValidateUpstreamSettingsResult {
|
||||||
|
if (options.disableUpstreamValidation) {
|
||||||
|
return ValidateUpstreamSettingsResult.UPSTREAM_VALID
|
||||||
|
}
|
||||||
|
return Mono.zip(
|
||||||
|
validateChain(),
|
||||||
|
validateOldBlocks(),
|
||||||
|
validateCallLimit(),
|
||||||
|
).map {
|
||||||
|
listOf(it.t1, it.t2, it.t3).maxOf { it }
|
||||||
|
}.block() ?: ValidateUpstreamSettingsResult.UPSTREAM_SETTINGS_ERROR
|
||||||
|
}
|
||||||
|
|
||||||
private fun validateChain(): Mono<ValidateUpstreamSettingsResult> {
|
private fun validateChain(): Mono<ValidateUpstreamSettingsResult> {
|
||||||
if (!options.validateChain) {
|
if (!options.validateChain) {
|
||||||
return Mono.just(ValidateUpstreamSettingsResult.UPSTREAM_VALID)
|
return Mono.just(ValidateUpstreamSettingsResult.UPSTREAM_VALID)
|
||||||
|
|||||||
Reference in New Issue
Block a user