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>
|
||||
|
||||
fun validateUpstreamSettingsOnStartup(): ValidateUpstreamSettingsResult {
|
||||
return validateUpstreamSettings().block() ?: ValidateUpstreamSettingsResult.UPSTREAM_FATAL_SETTINGS_ERROR
|
||||
open fun validateUpstreamSettingsOnStartup(): ValidateUpstreamSettingsResult {
|
||||
return ValidateUpstreamSettingsResult.UPSTREAM_VALID
|
||||
}
|
||||
|
||||
companion object {
|
||||
|
||||
@@ -80,13 +80,25 @@ open class EthereumUpstreamValidator @JvmOverloads constructor(
|
||||
}
|
||||
return Mono.zip(
|
||||
validateChain(),
|
||||
validateCallLimit(),
|
||||
validateOldBlocks(),
|
||||
).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> {
|
||||
if (!options.validateChain) {
|
||||
return Mono.just(ValidateUpstreamSettingsResult.UPSTREAM_VALID)
|
||||
|
||||
Reference in New Issue
Block a user