public class org.terracotta.statistics.registry.Statistic<T extends java.io.Serializable> implements java.io.Serializable
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.terracotta.statistics.registry.Statistic
super_class: java.lang.Object
{
private static final long serialVersionUID;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 1
private final org.terracotta.statistics.StatisticType type;
descriptor: Lorg/terracotta/statistics/StatisticType;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.util.List<org.terracotta.statistics.Sample<T>> samples;
descriptor: Ljava/util/List;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/List<Lorg/terracotta/statistics/Sample<TT;>;>;
public void <init>(org.terracotta.statistics.StatisticType);
descriptor: (Lorg/terracotta/statistics/StatisticType;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokestatic java.util.Collections.emptyList:()Ljava/util/List;
invokespecial org.terracotta.statistics.registry.Statistic.<init>:(Lorg/terracotta/statistics/StatisticType;Ljava/util/List;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/terracotta/statistics/registry/Statistic<TT;>;
0 2 1 type Lorg/terracotta/statistics/StatisticType;
MethodParameters:
Name Flags
type
public void <init>(org.terracotta.statistics.StatisticType, org.terracotta.statistics.Sample<T>);
descriptor: (Lorg/terracotta/statistics/StatisticType;Lorg/terracotta/statistics/Sample;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
invokestatic java.util.Collections.singletonList:(Ljava/lang/Object;)Ljava/util/List;
invokespecial org.terracotta.statistics.registry.Statistic.<init>:(Lorg/terracotta/statistics/StatisticType;Ljava/util/List;)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/terracotta/statistics/registry/Statistic<TT;>;
0 2 1 type Lorg/terracotta/statistics/StatisticType;
0 2 2 sample Lorg/terracotta/statistics/Sample<TT;>;
Signature: (Lorg/terracotta/statistics/StatisticType;Lorg/terracotta/statistics/Sample<TT;>;)V
MethodParameters:
Name Flags
type
sample
public void <init>(org.terracotta.statistics.StatisticType, java.util.List<org.terracotta.statistics.Sample<T>>);
descriptor: (Lorg/terracotta/statistics/StatisticType;Ljava/util/List;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
putfield org.terracotta.statistics.registry.Statistic.type:Lorg/terracotta/statistics/StatisticType;
2: aload 0
aload 2
putfield org.terracotta.statistics.registry.Statistic.samples:Ljava/util/List;
3: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/terracotta/statistics/registry/Statistic<TT;>;
0 4 1 type Lorg/terracotta/statistics/StatisticType;
0 4 2 samples Ljava/util/List<Lorg/terracotta/statistics/Sample<TT;>;>;
Signature: (Lorg/terracotta/statistics/StatisticType;Ljava/util/List<Lorg/terracotta/statistics/Sample<TT;>;>;)V
MethodParameters:
Name Flags
type
samples
public org.terracotta.statistics.StatisticType getType();
descriptor: ()Lorg/terracotta/statistics/StatisticType;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.terracotta.statistics.registry.Statistic.type:Lorg/terracotta/statistics/StatisticType;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/terracotta/statistics/registry/Statistic<TT;>;
public boolean isEmpty();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.terracotta.statistics.registry.Statistic.samples:Ljava/util/List;
invokeinterface java.util.List.isEmpty:()Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/terracotta/statistics/registry/Statistic<TT;>;
public java.util.List<org.terracotta.statistics.Sample<T>> getSamples();
descriptor: ()Ljava/util/List;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.terracotta.statistics.registry.Statistic.samples:Ljava/util/List;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/terracotta/statistics/registry/Statistic<TT;>;
Signature: ()Ljava/util/List<Lorg/terracotta/statistics/Sample<TT;>;>;
public java.util.Optional<T> getLatestSampleValue();
descriptor: ()Ljava/util/Optional;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual org.terracotta.statistics.registry.Statistic.getLatestSample:()Ljava/util/Optional;
invokedynamic apply()Ljava/util/function/Function;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Ljava/lang/Object;
org/terracotta/statistics/Sample.getSample()Ljava/io/Serializable; (5)
(Lorg/terracotta/statistics/Sample;)Ljava/io/Serializable;
invokevirtual java.util.Optional.map:(Ljava/util/function/Function;)Ljava/util/Optional;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/terracotta/statistics/registry/Statistic<TT;>;
Signature: ()Ljava/util/Optional<TT;>;
public java.util.Optional<org.terracotta.statistics.Sample<T>> getLatestSample();
descriptor: ()Ljava/util/Optional;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
getfield org.terracotta.statistics.registry.Statistic.samples:Ljava/util/List;
invokeinterface java.util.List.isEmpty:()Z
ifeq 1
invokestatic java.util.Optional.empty:()Ljava/util/Optional;
goto 2
StackMap locals:
StackMap stack:
1: aload 0
getfield org.terracotta.statistics.registry.Statistic.samples:Ljava/util/List;
aload 0
getfield org.terracotta.statistics.registry.Statistic.samples:Ljava/util/List;
invokeinterface java.util.List.size:()I
iconst_1
isub
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast org.terracotta.statistics.Sample
invokestatic java.util.Optional.of:(Ljava/lang/Object;)Ljava/util/Optional;
StackMap locals:
StackMap stack: java.util.Optional
2: areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/terracotta/statistics/registry/Statistic<TT;>;
Signature: ()Ljava/util/Optional<Lorg/terracotta/statistics/Sample<TT;>;>;
public java.lang.String toString();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.StringBuilder
dup
ldc "Statistic{type="
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
1: aload 0
getfield org.terracotta.statistics.registry.Statistic.type:Lorg/terracotta/statistics/StatisticType;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
2: ldc ", samples="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield org.terracotta.statistics.registry.Statistic.samples:Ljava/util/List;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
3: bipush 125
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
4: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/terracotta/statistics/registry/Statistic<TT;>;
static <T extends java.io.Serializable> org.terracotta.statistics.registry.Statistic<T> extract(org.terracotta.statistics.ValueStatistic<T>, long, long);
descriptor: (Lorg/terracotta/statistics/ValueStatistic;JJ)Lorg/terracotta/statistics/registry/Statistic;
flags: (0x0008) ACC_STATIC
Code:
stack=8, locals=6, args_size=3
start local 0 start local 1 start local 3 0: aload 0
instanceof org.terracotta.statistics.SampledStatistic
ifeq 8
1: new org.terracotta.statistics.registry.Statistic
dup
2: aload 0
invokeinterface org.terracotta.statistics.ValueStatistic.type:()Lorg/terracotta/statistics/StatisticType;
3: aload 0
checkcast org.terracotta.statistics.SampledStatistic
lload 1
invokeinterface org.terracotta.statistics.SampledStatistic.history:(J)Ljava/util/List;
4: invokeinterface java.util.List.stream:()Ljava/util/stream/Stream;
5: invokedynamic test()Ljava/util/function/Predicate;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Z
org/terracotta/statistics/registry/Statistic.lambda$1(Lorg/terracotta/statistics/Sample;)Z (6)
(Lorg/terracotta/statistics/Sample;)Z
invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
6: invokestatic java.util.stream.Collectors.toList:()Ljava/util/stream/Collector;
invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
checkcast java.util.List
7: invokespecial org.terracotta.statistics.registry.Statistic.<init>:(Lorg/terracotta/statistics/StatisticType;Ljava/util/List;)V
areturn
8: StackMap locals:
StackMap stack:
lload 1
lload 3
lcmp
ifgt 12
9: aload 0
invokeinterface org.terracotta.statistics.ValueStatistic.value:()Ljava/io/Serializable;
astore 5
start local 5 10: aload 5
invokestatic org.terracotta.statistics.registry.Statistic.accepted:(Ljava/io/Serializable;)Z
ifeq 12
11: new org.terracotta.statistics.registry.Statistic
dup
aload 0
invokeinterface org.terracotta.statistics.ValueStatistic.type:()Lorg/terracotta/statistics/StatisticType;
new org.terracotta.statistics.Sample
dup
lload 3
aload 5
invokespecial org.terracotta.statistics.Sample.<init>:(JLjava/io/Serializable;)V
invokespecial org.terracotta.statistics.registry.Statistic.<init>:(Lorg/terracotta/statistics/StatisticType;Lorg/terracotta/statistics/Sample;)V
areturn
end local 5 12: StackMap locals:
StackMap stack:
new org.terracotta.statistics.registry.Statistic
dup
aload 0
invokeinterface org.terracotta.statistics.ValueStatistic.type:()Lorg/terracotta/statistics/StatisticType;
invokespecial org.terracotta.statistics.registry.Statistic.<init>:(Lorg/terracotta/statistics/StatisticType;)V
areturn
end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 valueStatistic Lorg/terracotta/statistics/ValueStatistic<TT;>;
0 13 1 sinceMillis J
0 13 3 now J
10 12 5 value TT;
Signature: <T::Ljava/io/Serializable;>(Lorg/terracotta/statistics/ValueStatistic<TT;>;JJ)Lorg/terracotta/statistics/registry/Statistic<TT;>;
MethodParameters:
Name Flags
valueStatistic
sinceMillis
now
private static <T extends java.io.Serializable> boolean accepted();
descriptor: (Ljava/io/Serializable;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
ifnull 2
aload 0
instanceof org.terracotta.statistics.Table
ifeq 1
aload 0
checkcast org.terracotta.statistics.Table
invokevirtual org.terracotta.statistics.Table.isEmpty:()Z
ifne 2
StackMap locals:
StackMap stack:
1: iconst_1
ireturn
StackMap locals:
StackMap stack:
2: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 sample TT;
Signature: <T::Ljava/io/Serializable;>(TT;)Z
MethodParameters:
Name Flags
sample
private static boolean lambda$1(org.terracotta.statistics.Sample);
descriptor: (Lorg/terracotta/statistics/Sample;)Z
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual org.terracotta.statistics.Sample.getSample:()Ljava/io/Serializable;
invokestatic org.terracotta.statistics.registry.Statistic.accepted:(Ljava/io/Serializable;)Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 s Lorg/terracotta/statistics/Sample<TT;>;
}
Signature: <T::Ljava/io/Serializable;>Ljava/lang/Object;Ljava/io/Serializable;
SourceFile: "Statistic.java"
InnerClasses:
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles