(window time.Duration, maxHits int)
| 140 | } |
| 141 | |
| 142 | func newAttemptLimiter(window time.Duration, maxHits int) *attemptLimiter { |
| 143 | return &attemptLimiter{ |
| 144 | window: window, |
| 145 | maxHits: maxHits, |
| 146 | hits: make(map[string][]time.Time), |
| 147 | } |
| 148 | } |
| 149 | |
| 150 | func (l *attemptLimiter) allow(key string) bool { |
| 151 | if strings.TrimSpace(key) == "" { |
no outgoing calls