class CircuitBreakerStats {

    private final String name;
    private final long limit;
    private final long used;
    private final long trippedCount;
    private final double overhead;

    @ConstructorProperties({"name", "limit", "used", "trippedCount", "overhead"})
    public CircuitBreakerStats(String name,
                               long limit,
                               long used,
                               long trippedCount,
                               double overhead) {
        this.name = name;
        this.limit = limit;
        this.used = used;
        this.trippedCount = trippedCount;
        this.overhead = overhead;
    }

    public String getName() {
        return this.name;
    }

    public long getLimit() {
        return this.limit;
    }

    public long getUsed() {
        return this.used;
    }

    public long getTrippedCount() {
        return this.trippedCount;
    }

    /**
     * Kept around for BWC of JMX metrics
     *
     * Overhead cannot be set by the user anymore and must always be 1.0
     **/
    @Deprecated
    public double getOverhead() {
        return this.overhead;
    }

    @Override
    public String toString() {<FILL_FUNCTION_BODY>}
}

        return "[" + this.name +
               ",limit=" + this.limit + "/" + new ByteSizeValue(this.limit) +
               ",estimated=" + this.used + "/" + new ByteSizeValue(this.used) +
               ",overhead=" + this.overhead + ",tripped=" + this.trippedCount + "]";
    
<no_super_class>