class Bartender {

  private static final Logger LOGGER = LoggerFactory.getLogger(Bartender.class);
  private final CallsCount callsCount;

  public Bartender(Throttler timer, CallsCount callsCount) {
    this.callsCount = callsCount;
    timer.start();
  }

  /**
   * Orders a drink from the bartender.
   * @return customer id which is randomly generated
   */
  public int orderDrink(BarCustomer barCustomer) {<FILL_FUNCTION_BODY>}

  private int getRandomCustomerId() {
    return ThreadLocalRandom.current().nextInt(1, 10000);
  }
}

    var tenantName = barCustomer.getName();
    var count = callsCount.getCount(tenantName);
    if (count >= barCustomer.getAllowedCallsPerSecond()) {
      LOGGER.error("I'm sorry {}, you've had enough for today!", tenantName);
      return -1;
    }
    callsCount.incrementCount(tenantName);
    LOGGER.debug("Serving beer to {} : [{} consumed] ", barCustomer.getName(), count + 1);
    return getRandomCustomerId();
  
<no_super_class>