Class FlowableBucket4jRateLimiter
java.lang.Object
com.flowable.platform.engine.impl.sandbox.ratelimiter.bucket4j.AbstractFlowableRateLimiter
com.flowable.platform.engine.impl.sandbox.ratelimiter.bucket4j.FlowableBucket4jRateLimiter
- All Implemented Interfaces:
FlowableRateLimiter,SessionFactory
- Author:
- Filip Hrisafov
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprotected classprotected static classNested classes/interfaces inherited from class com.flowable.platform.engine.impl.sandbox.ratelimiter.bucket4j.AbstractFlowableRateLimiter
AbstractFlowableRateLimiter.RateLimitCommandContextCloseListener -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final BucketConfigurationProviderprotected final io.github.bucket4j.distributed.proxy.ProxyManager<String>Fields inherited from class com.flowable.platform.engine.impl.sandbox.ratelimiter.bucket4j.AbstractFlowableRateLimiter
SERVICE_TYPE_AI -
Constructor Summary
ConstructorsConstructorDescriptionFlowableBucket4jRateLimiter(io.github.bucket4j.distributed.proxy.ProxyManager<String> proxyManager, BucketConfigurationProvider bucketConfigurationProvider) -
Method Summary
Modifier and TypeMethodDescriptionprotected io.github.bucket4j.BucketgetBucket(String bucketName, String tenantId, Function<String, io.github.bucket4j.BucketConfiguration> configurationSupplier) protected voidvalidateAiServiceInvocationInternal(String tenantId) voidvalidateDashboardGeneration(String tenantId) voidvalidateDocumentAiInvocation(String tenantId) protected voidvalidateJobExecuteInternal(String jobTenantId) Methods inherited from class com.flowable.platform.engine.impl.sandbox.ratelimiter.bucket4j.AbstractFlowableRateLimiter
getSessionType, openSession, validateActivityInstanceStart, validateCaseInstanceStart, validateJobCancel, validateJobExecute, validateJobSchedule, validatePlanItemInstanceCreate, validateProcessInstanceStart, validateServiceInvocation
-
Field Details
-
proxyManager
-
bucketConfigurationProvider
-
-
Constructor Details
-
FlowableBucket4jRateLimiter
public FlowableBucket4jRateLimiter(io.github.bucket4j.distributed.proxy.ProxyManager<String> proxyManager, BucketConfigurationProvider bucketConfigurationProvider)
-
-
Method Details
-
validateJobExecuteInternal
- Specified by:
validateJobExecuteInternalin classAbstractFlowableRateLimiter
-
validateAiServiceInvocationInternal
- Specified by:
validateAiServiceInvocationInternalin classAbstractFlowableRateLimiter
-
validateDashboardGeneration
-
validateDocumentAiInvocation
-
getBucket
-
createCommandContextCloseListener
protected AbstractFlowableRateLimiter.RateLimitCommandContextCloseListener createCommandContextCloseListener()- Specified by:
createCommandContextCloseListenerin classAbstractFlowableRateLimiter
-