@VisibleForTesting
  static RateLimiter create(SleepingStopwatch stopwatch, double permitsPerSecond) {
    RateLimiter rateLimiter = new SmoothBursty(stopwatch, 1.0 /* maxBurstSeconds */);
    rateLimiter.setRate(permitsPerSecond);
    return rateLimiter;
  }
@ VisibleForTesting static RateLimiter create ( SleepingStopwatch stopwatch , double permitsPerSecond ) { RateLimiter rateLimiter = new SmoothBursty ( stopwatch , 1.0 ) ; rateLimiter . setRate ( permitsPerSecond ) ; return rateLimiter ; }
/*
TODO(cpovirk): make SleepingStopwatch the last parameter throughout the class so that the
overloads follow the usual convention: Foo(int), Foo(int, SleepingStopwatch)