code: public void stats(String name, float value) {
  		for (ICounters counter : _counters)
  			counter.stats(name, value);
  	}
  
  	/**
  	 * Records the last calculated measurement value.
  	 * 
  	 * Usually this method is used by metrics calculated externally.
  	 * 
  	 * @param name  a counter name of Last type.
  	 * @param value a last value to record.
  	 */
  	public void last(String name, float value) {
  		for (ICounters counter : _counters)
  			counter.last(name, value);
  	}
  
  	/**
  	 * Records the current time as a timestamp.
  	 * 
  	 * @param name a counter name of Timestamp type.
  	 */
  	public void timestampNow(String name) {
  		timestamp(name, ZonedDateTime.now());
  	}
  
  	/**
  	 * Records the given timestamp.
  	 * 
  	 * @param name  a counter name of Timestamp type.
  	 * @param value a timestamp to record.
  	 */
  	public void timestamp(String name, ZonedDateTime value) {
  		for (ICounters counter : _counters)
  			counter.timestamp(name, value);
  	}
  
  	/**
  	 * Increments counter by 1.
  	 * 
  	 * @param name a counter name of Increment type.
  	 */
  	public void incrementOne(String name) {
  		increment(name, 1);
  	}
  
  	/**
  	 * Increments counter by given value.
  	 * 
  	 * @param name  a counter name of Increment type.
  	 * @param value a value to add to the counter.
  	 */
  	public void increment(String name, int value) {
  		for (ICounters counter : _counters)
  			counter.increment(name, value);
  	}
  
  }
docs: Calculates min/average/max statistics based on the current and previous
  values.
  
  @param name  a counter name of Statistics type
  @param value a value to update statistics