| 124 | } |
| 125 | |
| 126 | function getCachedRateLimitConfig(request) { |
| 127 | const cachedConfig = {}; |
| 128 | const cachedBucketConfig = cache.getCachedConfig(cache.namespace.bucket, request.bucketName); |
| 129 | if (cachedBucketConfig !== undefined) { |
| 130 | cachedConfig.bucket = cachedBucketConfig; |
| 131 | } |
| 132 | |
| 133 | const cachedOwner = cache.getCachedBucketOwner(request.bucketName); |
| 134 | if (cachedOwner !== undefined) { |
| 135 | const cachedAccountConfig = cache.getCachedConfig(cache.namespace.account, cachedOwner); |
| 136 | if (cachedAccountConfig !== undefined) { |
| 137 | cachedConfig.account = cachedAccountConfig; |
| 138 | cachedConfig.bucketOwner = cachedOwner; |
| 139 | } |
| 140 | } |
| 141 | |
| 142 | return cachedConfig; |
| 143 | } |
| 144 | |
| 145 | function buildRateChecksFromConfig(resourceClass, resourceId, limitConfig) { |
| 146 | const checks = []; |