Metric class

Пакет: com.hypixel.hytale.metrics.metric

Файл: com/hypixel/hytale/metrics/metric/Metric.java

Поля (1)

МодификаторыТипИмя
final Codec<Metric> CODEC

Методы (14)

МодификаторыВозвратСигнатура
public void addvoid add(long var1)
public void addToAveragevoid addToAverage(long var1)
public void calculateMinMaxvoid calculateMinMax(long var1)
public void clearvoid clear()
public double getAveragedouble getAverage()
public long getMaxlong getMax()
public long getMinlong getMin()
if if(var1 < this.min)
if if(var1 > this.max)
if if(var1 < this.min)
if if(var1 > this.max)
public void removevoid remove(long var1)
public void resetMinMaxvoid resetMinMax()
public void setvoid set(@Nonnull Metric var1)

Исходный код

Показать/скрыть
class="kw">package com.hypixel.hytale.metrics.metric;

class="kw">import com.hypixel.hytale.codec.Codec;
class="kw">import com.hypixel.hytale.codec.KeyedCodec;
class="kw">import com.hypixel.hytale.codec.builder.BuilderCodec;
class="kw">import javax.annotation.Nonnull;

class="kw">public class Metric {
   class="kw">public class="kw">static class="kw">final Codec<Metric> CODEC = BuilderCodec.builder(Metric.class, Metric::new)
      .append(new KeyedCodec<>("Min", Codec.LONG), (var0, var1) -> var0.min = var1, var0 -> var0.min)
      .add()
      .append(new KeyedCodec<>("Average", Codec.DOUBLE), (var0, var1) -> var0.average.set(var1), var0 -> var0.average.get())
      .add()
      .append(new KeyedCodec<>("Max", Codec.LONG), (var0, var1) -> var0.max = var1, var0 -> var0.max)
      .add()
      .build();
   class="kw">private long min;
   class="kw">private class="kw">final AverageCollector average = new AverageCollector();
   class="kw">private long max;

   class="kw">public Metric() {
      this.clear();
   }

   class="kw">public void add(long var1) {
      if (var1 < this.min) {
         this.min = var1;
      }

      this.average.add(var1);
      if (var1 > this.max) {
         this.max = var1;
      }
   }

   class="kw">public void remove(long var1) {
      this.average.remove(var1);
   }

   class="kw">public long getMin() {
      class="kw">return this.min;
   }

   class="kw">public double getAverage() {
      class="kw">return this.average.get();
   }

   class="kw">public long getMax() {
      class="kw">return this.max;
   }

   class="kw">public void clear() {
      this.min = Long.MAX_VALUE;
      this.average.clear();
      this.max = Long.MIN_VALUE;
   }

   class="kw">public void resetMinMax() {
      this.min = Long.MAX_VALUE;
      this.max = Long.MIN_VALUE;
   }

   class="kw">public void calculateMinMax(long var1) {
      if (var1 < this.min) {
         this.min = var1;
      }

      if (var1 > this.max) {
         this.max = var1;
      }
   }

   class="kw">public void addToAverage(long var1) {
      this.average.add(var1);
   }

   class="kw">public void set(@Nonnull Metric var1) {
      this.min = var1.min;
      this.average.set(var1.average.get());
      this.max = var1.max;
   }

   @Nonnull
   @Override
   class="kw">public String toString() {
      class="kw">return "Metric{min=" + this.min + ", average=" + this.average.get() + ", max=" + this.max + "}";
   }
}