class com.netflix.hystrix.util.HystrixRollingNumber$CumulativeSum
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: com.netflix.hystrix.util.HystrixRollingNumber$CumulativeSum
super_class: java.lang.Object
{
final com.netflix.hystrix.util.LongAdder[] adderForCounterType;
descriptor: [Lcom/netflix/hystrix/util/LongAdder;
flags: (0x0010) ACC_FINAL
final com.netflix.hystrix.util.LongMaxUpdater[] updaterForCounterType;
descriptor: [Lcom/netflix/hystrix/util/LongMaxUpdater;
flags: (0x0010) ACC_FINAL
void <init>();
descriptor: ()V
flags: (0x0000)
Code:
stack=4, locals=5, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
invokestatic com.netflix.hystrix.util.HystrixRollingNumberEvent.values:()[Lcom/netflix/hystrix/util/HystrixRollingNumberEvent;
arraylength
anewarray com.netflix.hystrix.util.LongAdder
putfield com.netflix.hystrix.util.HystrixRollingNumber$CumulativeSum.adderForCounterType:[Lcom/netflix/hystrix/util/LongAdder;
2: invokestatic com.netflix.hystrix.util.HystrixRollingNumberEvent.values:()[Lcom/netflix/hystrix/util/HystrixRollingNumberEvent;
dup
astore 4
arraylength
istore 3
iconst_0
istore 2
goto 7
StackMap locals: com.netflix.hystrix.util.HystrixRollingNumber$CumulativeSum top int int com.netflix.hystrix.util.HystrixRollingNumberEvent[]
StackMap stack:
3: aload 4
iload 2
aaload
astore 1
start local 1 4: aload 1
invokevirtual com.netflix.hystrix.util.HystrixRollingNumberEvent.isCounter:()Z
ifeq 6
5: aload 0
getfield com.netflix.hystrix.util.HystrixRollingNumber$CumulativeSum.adderForCounterType:[Lcom/netflix/hystrix/util/LongAdder;
aload 1
invokevirtual com.netflix.hystrix.util.HystrixRollingNumberEvent.ordinal:()I
new com.netflix.hystrix.util.LongAdder
dup
invokespecial com.netflix.hystrix.util.LongAdder.<init>:()V
aastore
end local 1 6: StackMap locals:
StackMap stack:
iinc 2 1
StackMap locals:
StackMap stack:
7: iload 2
iload 3
if_icmplt 3
8: aload 0
invokestatic com.netflix.hystrix.util.HystrixRollingNumberEvent.values:()[Lcom/netflix/hystrix/util/HystrixRollingNumberEvent;
arraylength
anewarray com.netflix.hystrix.util.LongMaxUpdater
putfield com.netflix.hystrix.util.HystrixRollingNumber$CumulativeSum.updaterForCounterType:[Lcom/netflix/hystrix/util/LongMaxUpdater;
9: invokestatic com.netflix.hystrix.util.HystrixRollingNumberEvent.values:()[Lcom/netflix/hystrix/util/HystrixRollingNumberEvent;
dup
astore 4
arraylength
istore 3
iconst_0
istore 2
goto 15
StackMap locals:
StackMap stack:
10: aload 4
iload 2
aaload
astore 1
start local 1 11: aload 1
invokevirtual com.netflix.hystrix.util.HystrixRollingNumberEvent.isMaxUpdater:()Z
ifeq 14
12: aload 0
getfield com.netflix.hystrix.util.HystrixRollingNumber$CumulativeSum.updaterForCounterType:[Lcom/netflix/hystrix/util/LongMaxUpdater;
aload 1
invokevirtual com.netflix.hystrix.util.HystrixRollingNumberEvent.ordinal:()I
new com.netflix.hystrix.util.LongMaxUpdater
dup
invokespecial com.netflix.hystrix.util.LongMaxUpdater.<init>:()V
aastore
13: aload 0
getfield com.netflix.hystrix.util.HystrixRollingNumber$CumulativeSum.updaterForCounterType:[Lcom/netflix/hystrix/util/LongMaxUpdater;
aload 1
invokevirtual com.netflix.hystrix.util.HystrixRollingNumberEvent.ordinal:()I
aaload
lconst_0
invokevirtual com.netflix.hystrix.util.LongMaxUpdater.update:(J)V
end local 1 14: StackMap locals:
StackMap stack:
iinc 2 1
StackMap locals:
StackMap stack:
15: iload 2
iload 3
if_icmplt 10
16: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Lcom/netflix/hystrix/util/HystrixRollingNumber$CumulativeSum;
4 6 1 type Lcom/netflix/hystrix/util/HystrixRollingNumberEvent;
11 14 1 type Lcom/netflix/hystrix/util/HystrixRollingNumberEvent;
public void addBucket(com.netflix.hystrix.util.HystrixRollingNumber$Bucket);
descriptor: (Lcom/netflix/hystrix/util/HystrixRollingNumber$Bucket;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=6, args_size=2
start local 0 start local 1 0: invokestatic com.netflix.hystrix.util.HystrixRollingNumberEvent.values:()[Lcom/netflix/hystrix/util/HystrixRollingNumberEvent;
dup
astore 5
arraylength
istore 4
iconst_0
istore 3
goto 7
StackMap locals: com.netflix.hystrix.util.HystrixRollingNumber$CumulativeSum com.netflix.hystrix.util.HystrixRollingNumber$Bucket top int int com.netflix.hystrix.util.HystrixRollingNumberEvent[]
StackMap stack:
1: aload 5
iload 3
aaload
astore 2
start local 2 2: aload 2
invokevirtual com.netflix.hystrix.util.HystrixRollingNumberEvent.isCounter:()Z
ifeq 4
3: aload 0
aload 2
invokevirtual com.netflix.hystrix.util.HystrixRollingNumber$CumulativeSum.getAdder:(Lcom/netflix/hystrix/util/HystrixRollingNumberEvent;)Lcom/netflix/hystrix/util/LongAdder;
aload 1
aload 2
invokevirtual com.netflix.hystrix.util.HystrixRollingNumber$Bucket.getAdder:(Lcom/netflix/hystrix/util/HystrixRollingNumberEvent;)Lcom/netflix/hystrix/util/LongAdder;
invokevirtual com.netflix.hystrix.util.LongAdder.sum:()J
invokevirtual com.netflix.hystrix.util.LongAdder.add:(J)V
4: StackMap locals: com.netflix.hystrix.util.HystrixRollingNumber$CumulativeSum com.netflix.hystrix.util.HystrixRollingNumber$Bucket com.netflix.hystrix.util.HystrixRollingNumberEvent int int com.netflix.hystrix.util.HystrixRollingNumberEvent[]
StackMap stack:
aload 2
invokevirtual com.netflix.hystrix.util.HystrixRollingNumberEvent.isMaxUpdater:()Z
ifeq 6
5: aload 0
aload 2
invokevirtual com.netflix.hystrix.util.HystrixRollingNumber$CumulativeSum.getMaxUpdater:(Lcom/netflix/hystrix/util/HystrixRollingNumberEvent;)Lcom/netflix/hystrix/util/LongMaxUpdater;
aload 1
aload 2
invokevirtual com.netflix.hystrix.util.HystrixRollingNumber$Bucket.getMaxUpdater:(Lcom/netflix/hystrix/util/HystrixRollingNumberEvent;)Lcom/netflix/hystrix/util/LongMaxUpdater;
invokevirtual com.netflix.hystrix.util.LongMaxUpdater.max:()J
invokevirtual com.netflix.hystrix.util.LongMaxUpdater.update:(J)V
end local 2 6: StackMap locals: com.netflix.hystrix.util.HystrixRollingNumber$CumulativeSum com.netflix.hystrix.util.HystrixRollingNumber$Bucket top int int com.netflix.hystrix.util.HystrixRollingNumberEvent[]
StackMap stack:
iinc 3 1
StackMap locals:
StackMap stack:
7: iload 3
iload 4
if_icmplt 1
8: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lcom/netflix/hystrix/util/HystrixRollingNumber$CumulativeSum;
0 9 1 lastBucket Lcom/netflix/hystrix/util/HystrixRollingNumber$Bucket;
2 6 2 type Lcom/netflix/hystrix/util/HystrixRollingNumberEvent;
MethodParameters:
Name Flags
lastBucket
long get(com.netflix.hystrix.util.HystrixRollingNumberEvent);
descriptor: (Lcom/netflix/hystrix/util/HystrixRollingNumberEvent;)J
flags: (0x0000)
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual com.netflix.hystrix.util.HystrixRollingNumberEvent.isCounter:()Z
ifeq 2
1: aload 0
getfield com.netflix.hystrix.util.HystrixRollingNumber$CumulativeSum.adderForCounterType:[Lcom/netflix/hystrix/util/LongAdder;
aload 1
invokevirtual com.netflix.hystrix.util.HystrixRollingNumberEvent.ordinal:()I
aaload
invokevirtual com.netflix.hystrix.util.LongAdder.sum:()J
lreturn
2: StackMap locals:
StackMap stack:
aload 1
invokevirtual com.netflix.hystrix.util.HystrixRollingNumberEvent.isMaxUpdater:()Z
ifeq 4
3: aload 0
getfield com.netflix.hystrix.util.HystrixRollingNumber$CumulativeSum.updaterForCounterType:[Lcom/netflix/hystrix/util/LongMaxUpdater;
aload 1
invokevirtual com.netflix.hystrix.util.HystrixRollingNumberEvent.ordinal:()I
aaload
invokevirtual com.netflix.hystrix.util.LongMaxUpdater.max:()J
lreturn
4: StackMap locals:
StackMap stack:
new java.lang.IllegalStateException
dup
new java.lang.StringBuilder
dup
ldc "Unknown type of event: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual com.netflix.hystrix.util.HystrixRollingNumberEvent.name:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/netflix/hystrix/util/HystrixRollingNumber$CumulativeSum;
0 5 1 type Lcom/netflix/hystrix/util/HystrixRollingNumberEvent;
MethodParameters:
Name Flags
type
com.netflix.hystrix.util.LongAdder getAdder(com.netflix.hystrix.util.HystrixRollingNumberEvent);
descriptor: (Lcom/netflix/hystrix/util/HystrixRollingNumberEvent;)Lcom/netflix/hystrix/util/LongAdder;
flags: (0x0000)
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual com.netflix.hystrix.util.HystrixRollingNumberEvent.isCounter:()Z
ifne 2
1: new java.lang.IllegalStateException
dup
new java.lang.StringBuilder
dup
ldc "Type is not a Counter: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual com.netflix.hystrix.util.HystrixRollingNumberEvent.name:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
getfield com.netflix.hystrix.util.HystrixRollingNumber$CumulativeSum.adderForCounterType:[Lcom/netflix/hystrix/util/LongAdder;
aload 1
invokevirtual com.netflix.hystrix.util.HystrixRollingNumberEvent.ordinal:()I
aaload
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/netflix/hystrix/util/HystrixRollingNumber$CumulativeSum;
0 3 1 type Lcom/netflix/hystrix/util/HystrixRollingNumberEvent;
MethodParameters:
Name Flags
type
com.netflix.hystrix.util.LongMaxUpdater getMaxUpdater(com.netflix.hystrix.util.HystrixRollingNumberEvent);
descriptor: (Lcom/netflix/hystrix/util/HystrixRollingNumberEvent;)Lcom/netflix/hystrix/util/LongMaxUpdater;
flags: (0x0000)
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual com.netflix.hystrix.util.HystrixRollingNumberEvent.isMaxUpdater:()Z
ifne 2
1: new java.lang.IllegalStateException
dup
new java.lang.StringBuilder
dup
ldc "Type is not a MaxUpdater: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual com.netflix.hystrix.util.HystrixRollingNumberEvent.name:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
getfield com.netflix.hystrix.util.HystrixRollingNumber$CumulativeSum.updaterForCounterType:[Lcom/netflix/hystrix/util/LongMaxUpdater;
aload 1
invokevirtual com.netflix.hystrix.util.HystrixRollingNumberEvent.ordinal:()I
aaload
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/netflix/hystrix/util/HystrixRollingNumber$CumulativeSum;
0 3 1 type Lcom/netflix/hystrix/util/HystrixRollingNumberEvent;
MethodParameters:
Name Flags
type
}
SourceFile: "HystrixRollingNumber.java"
NestHost: com.netflix.hystrix.util.HystrixRollingNumber
InnerClasses:
Bucket = com.netflix.hystrix.util.HystrixRollingNumber$Bucket of com.netflix.hystrix.util.HystrixRollingNumber
CumulativeSum = com.netflix.hystrix.util.HystrixRollingNumber$CumulativeSum of com.netflix.hystrix.util.HystrixRollingNumber