public class RateLimiterRequestHandlerAdvice extends AbstractRequestHandlerAdvice
AbstractRequestHandlerAdvice 拡張。実装は Resilience4j に基づいています。| 修飾子と型 | クラスと説明 |
|---|---|
static class | RateLimiterRequestHandlerAdvice.RateLimitExceededException |
AbstractRequestHandlerAdvice.ExecutionCallback, AbstractRequestHandlerAdvice.ThrowableHolderException| 修飾子と型 | フィールドと説明 |
|---|---|
static StringSE | DEFAULT_NAME |
EXPRESSION_PARSER, logger| コンストラクターと説明 |
|---|
RateLimiterRequestHandlerAdvice() デフォルトのレートリミッターオプションとレートリミッター名としての "RateLimiterRequestHandlerAdvice" に基づいてインスタンスを構築します。 |
RateLimiterRequestHandlerAdvice(io.github.resilience4j.ratelimiter.RateLimiter rateLimiter) 提供された RateLimiter に基づいてインスタンスを構築します。 |
RateLimiterRequestHandlerAdvice(io.github.resilience4j.ratelimiter.RateLimiterConfig rateLimiterConfig) レートリミッター名として提供された RateLimiterConfig および "RateLimiterRequestHandlerAdvice" に基づいてインスタンスを構築します。 |
RateLimiterRequestHandlerAdvice(io.github.resilience4j.ratelimiter.RateLimiterConfig rateLimiterConfig, StringSE name) 提供された RateLimiterConfig と名前に基づいてインスタンスを構築します。 |
RateLimiterRequestHandlerAdvice(StringSE name) デフォルトのレートリミッターオプションと指定された名前に基づいてインスタンスを構築します。 |
| 修飾子と型 | メソッドと説明 |
|---|---|
protected ObjectSE | doInvoke(AbstractRequestHandlerAdvice.ExecutionCallback callback, ObjectSE target, Message<?> message) サブクラスは、このメソッドを実装して、 MessageHandler に動作を適用します。 |
io.github.resilience4j.ratelimiter.RateLimiter.Metrics | getMetrics() レートリミッターからメトリクスを取得します。 |
io.github.resilience4j.ratelimiter.RateLimiter | getRateLimiter() このアドバイス用に構成された RateLimiter を取得します。 |
void | setLimitForPeriod(int limitForPeriod)rateLimiter の limitForPeriod オプションを変更します。 |
void | setTimeoutDuration(java.time.Duration timeoutDuration)rateLimiter の timeoutDuration オプションを変更します。 |
invoke, unwrapExceptionIfNecessary, unwrapThrowableIfNecessaryafterPropertiesSet, extractTypeIfPossible, generateId, getApplicationContext, getApplicationContextId, getBeanDescription, getBeanFactory, getBeanName, getChannelResolver, getComponentName, getComponentType, getConversionService, getExpression, getIntegrationProperties, getIntegrationProperty, getMessageBuilderFactory, getTaskScheduler, isInitialized, onInit, setApplicationContext, setBeanFactory, setBeanName, setChannelResolver, setComponentName, setConversionService, setMessageBuilderFactory, setPrimaryExpression, setTaskScheduler, toStringcloneSE, equalsSE, finalizeSE, getClassSE, hashCodeSE, notifySE, notifyAllSE, waitSE, waitSE, waitSEpublic RateLimiterRequestHandlerAdvice()
RateLimiter.ofDefaults(java.lang.String)public RateLimiterRequestHandlerAdvice(StringSE name)
name - レートリミッターの名前。public RateLimiterRequestHandlerAdvice(io.github.resilience4j.ratelimiter.RateLimiter rateLimiter)
RateLimiter に基づいてインスタンスを構築します。rateLimiter - 使用する RateLimiter。public RateLimiterRequestHandlerAdvice(io.github.resilience4j.ratelimiter.RateLimiterConfig rateLimiterConfig)
RateLimiterConfig および "RateLimiterRequestHandlerAdvice" に基づいてインスタンスを構築します。rateLimiterConfig - 使用する RateLimiterConfig。public RateLimiterRequestHandlerAdvice(io.github.resilience4j.ratelimiter.RateLimiterConfig rateLimiterConfig,
StringSE name)RateLimiterConfig と名前に基づいてインスタンスを構築します。rateLimiterConfig - 使用する RateLimiterConfig。name - レートリミッターの名前。public void setLimitForPeriod(int limitForPeriod)
rateLimiter の limitForPeriod オプションを変更します。limitForPeriod - 使用する limitForPeriod。RateLimiter.changeLimitForPeriod(int)public void setTimeoutDuration(java.time.Duration timeoutDuration)
rateLimiter の timeoutDuration オプションを変更します。timeoutDuration - 使用する timeoutDuration。RateLimiter.changeTimeoutDuration(Duration)public io.github.resilience4j.ratelimiter.RateLimiter.Metrics getMetrics()
RateLimiter.Metrics。RateLimiter.getMetrics()public io.github.resilience4j.ratelimiter.RateLimiter getRateLimiter()
RateLimiter を取得します。RateLimiter。protected ObjectSE doInvoke(AbstractRequestHandlerAdvice.ExecutionCallback callback, ObjectSE target, Message<?> message)
AbstractRequestHandlerAdviceMessageHandler に動作を適用します。callback.execute() はハンドラーメソッドを呼び出し、その結果、null を返します。
AbstractRequestHandlerAdvice の doInvoke callback - サブクラスは、このインターフェースで execute() メソッドを呼び出して、ハンドラーメソッドを呼び出します。target - ターゲットハンドラー。message - ハンドラーに送信されるメッセージ。MessageHandler を呼び出した後の結果。