This is an automated email from the ASF dual-hosted git repository.

matthieu pushed a commit to branch refactorings-5
in repository https://gitbox.apache.org/repos/asf/james-project.git

commit 99efb9cfc18251934ad01a491ff900062de1e0cc
Author: Matthieu Baechler <[email protected]>
AuthorDate: Fri Feb 10 09:04:56 2023 +0100

    GlobalRateLimiter can't be a case class as it contains a class
---
 .../scala/org/apache/james/transport/mailets/GlobalRateLimit.scala    | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git 
a/server/mailet/rate-limiter/src/main/scala/org/apache/james/transport/mailets/GlobalRateLimit.scala
 
b/server/mailet/rate-limiter/src/main/scala/org/apache/james/transport/mailets/GlobalRateLimit.scala
index 385ccd80fd..bb83c59dce 100644
--- 
a/server/mailet/rate-limiter/src/main/scala/org/apache/james/transport/mailets/GlobalRateLimit.scala
+++ 
b/server/mailet/rate-limiter/src/main/scala/org/apache/james/transport/mailets/GlobalRateLimit.scala
@@ -38,7 +38,7 @@ case class GlobalKey(keyPrefix: Option[KeyPrefix], 
entityType: EntityType) exten
   }
 }
 
-case class GlobalRateLimiter(rateLimiter: Option[RateLimiter], keyPrefix: 
Option[KeyPrefix], entityType: EntityType) {
+class GlobalRateLimiter(rateLimiter: Option[RateLimiter], keyPrefix: 
Option[KeyPrefix], entityType: EntityType) {
   def rateLimit(mail: Mail): Publisher[RateLimitingResult] = {
     val rateLimitingKey = GlobalKey(keyPrefix, entityType)
 
@@ -142,7 +142,7 @@ class GlobalRateLimit @Inject()(rateLimiterFactory: 
RateLimiterFactory) extends
 
   private def createRateLimiter(rateLimiterFactory: RateLimiterFactory, 
entityType: EntityType, keyPrefix: Option[KeyPrefix],
                                 duration: Duration, precision: 
Option[Duration]): GlobalRateLimiter =
-    GlobalRateLimiter(rateLimiter = EntityType.extractRules(entityType, 
duration, getMailetConfig)
+    new GlobalRateLimiter(rateLimiter = EntityType.extractRules(entityType, 
duration, getMailetConfig)
       .map(rateLimiterFactory.withSpecification(_, precision)),
       keyPrefix = keyPrefix,
       entityType = entityType)


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to