class com.netflix.hystrix.util.HystrixRollingNumber$Bucket
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: com.netflix.hystrix.util.HystrixRollingNumber$Bucket
super_class: java.lang.Object
{
final long windowStart;
descriptor: J
flags: (0x0010) ACC_FINAL
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>(long);
descriptor: (J)V
flags: (0x0000)
Code:
stack=4, locals=7, args_size=2
start local 0 // com.netflix.hystrix.util.HystrixRollingNumber$Bucket this
start local 1 // long startTime
0: .line 371
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
1: .line 372
aload 0 /* this */
lload 1 /* startTime */
putfield com.netflix.hystrix.util.HystrixRollingNumber$Bucket.windowStart:J
2: .line 382
aload 0 /* this */
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$Bucket.adderForCounterType:[Lcom/netflix/hystrix/util/LongAdder;
3: .line 383
invokestatic com.netflix.hystrix.util.HystrixRollingNumberEvent.values:()[Lcom/netflix/hystrix/util/HystrixRollingNumberEvent;
dup
astore 6
arraylength
istore 5
iconst_0
istore 4
goto 8
StackMap locals: com.netflix.hystrix.util.HystrixRollingNumber$Bucket long top int int com.netflix.hystrix.util.HystrixRollingNumberEvent[]
StackMap stack:
4: aload 6
iload 4
aaload
astore 3 /* type */
start local 3 // com.netflix.hystrix.util.HystrixRollingNumberEvent type
5: .line 384
aload 3 /* type */
invokevirtual com.netflix.hystrix.util.HystrixRollingNumberEvent.isCounter:()Z
ifeq 7
6: .line 385
aload 0 /* this */
getfield com.netflix.hystrix.util.HystrixRollingNumber$Bucket.adderForCounterType:[Lcom/netflix/hystrix/util/LongAdder;
aload 3 /* type */
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 3 // com.netflix.hystrix.util.HystrixRollingNumberEvent type
7: .line 383
StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
8: iload 4
iload 5
if_icmplt 4
9: .line 389
aload 0 /* this */
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$Bucket.updaterForCounterType:[Lcom/netflix/hystrix/util/LongMaxUpdater;
10: .line 390
invokestatic com.netflix.hystrix.util.HystrixRollingNumberEvent.values:()[Lcom/netflix/hystrix/util/HystrixRollingNumberEvent;
dup
astore 6
arraylength
istore 5
iconst_0
istore 4
goto 16
StackMap locals:
StackMap stack:
11: aload 6
iload 4
aaload
astore 3 /* type */
start local 3 // com.netflix.hystrix.util.HystrixRollingNumberEvent type
12: .line 391
aload 3 /* type */
invokevirtual com.netflix.hystrix.util.HystrixRollingNumberEvent.isMaxUpdater:()Z
ifeq 15
13: .line 392
aload 0 /* this */
getfield com.netflix.hystrix.util.HystrixRollingNumber$Bucket.updaterForCounterType:[Lcom/netflix/hystrix/util/LongMaxUpdater;
aload 3 /* type */
invokevirtual com.netflix.hystrix.util.HystrixRollingNumberEvent.ordinal:()I
new com.netflix.hystrix.util.LongMaxUpdater
dup
invokespecial com.netflix.hystrix.util.LongMaxUpdater.<init>:()V
aastore
14: .line 394
aload 0 /* this */
getfield com.netflix.hystrix.util.HystrixRollingNumber$Bucket.updaterForCounterType:[Lcom/netflix/hystrix/util/LongMaxUpdater;
aload 3 /* type */
invokevirtual com.netflix.hystrix.util.HystrixRollingNumberEvent.ordinal:()I
aaload
lconst_0
invokevirtual com.netflix.hystrix.util.LongMaxUpdater.update:(J)V
end local 3 // com.netflix.hystrix.util.HystrixRollingNumberEvent type
15: .line 390
StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
16: iload 4
iload 5
if_icmplt 11
17: .line 397
return
end local 1 // long startTime
end local 0 // com.netflix.hystrix.util.HystrixRollingNumber$Bucket this
LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Lcom/netflix/hystrix/util/HystrixRollingNumber$Bucket;
0 18 1 startTime J
5 7 3 type Lcom/netflix/hystrix/util/HystrixRollingNumberEvent;
12 15 3 type Lcom/netflix/hystrix/util/HystrixRollingNumberEvent;
MethodParameters:
Name Flags
startTime
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 // com.netflix.hystrix.util.HystrixRollingNumber$Bucket this
start local 1 // com.netflix.hystrix.util.HystrixRollingNumberEvent type
0: .line 400
aload 1 /* type */
invokevirtual com.netflix.hystrix.util.HystrixRollingNumberEvent.isCounter:()Z
ifeq 2
1: .line 401
aload 0 /* this */
getfield com.netflix.hystrix.util.HystrixRollingNumber$Bucket.adderForCounterType:[Lcom/netflix/hystrix/util/LongAdder;
aload 1 /* type */
invokevirtual com.netflix.hystrix.util.HystrixRollingNumberEvent.ordinal:()I
aaload
invokevirtual com.netflix.hystrix.util.LongAdder.sum:()J
lreturn
2: .line 403
StackMap locals:
StackMap stack:
aload 1 /* type */
invokevirtual com.netflix.hystrix.util.HystrixRollingNumberEvent.isMaxUpdater:()Z
ifeq 4
3: .line 404
aload 0 /* this */
getfield com.netflix.hystrix.util.HystrixRollingNumber$Bucket.updaterForCounterType:[Lcom/netflix/hystrix/util/LongMaxUpdater;
aload 1 /* type */
invokevirtual com.netflix.hystrix.util.HystrixRollingNumberEvent.ordinal:()I
aaload
invokevirtual com.netflix.hystrix.util.LongMaxUpdater.max:()J
lreturn
4: .line 406
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 /* type */
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 // com.netflix.hystrix.util.HystrixRollingNumberEvent type
end local 0 // com.netflix.hystrix.util.HystrixRollingNumber$Bucket this
LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/netflix/hystrix/util/HystrixRollingNumber$Bucket;
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 // com.netflix.hystrix.util.HystrixRollingNumber$Bucket this
start local 1 // com.netflix.hystrix.util.HystrixRollingNumberEvent type
0: .line 410
aload 1 /* type */
invokevirtual com.netflix.hystrix.util.HystrixRollingNumberEvent.isCounter:()Z
ifne 2
1: .line 411
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 /* type */
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: .line 413
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield com.netflix.hystrix.util.HystrixRollingNumber$Bucket.adderForCounterType:[Lcom/netflix/hystrix/util/LongAdder;
aload 1 /* type */
invokevirtual com.netflix.hystrix.util.HystrixRollingNumberEvent.ordinal:()I
aaload
areturn
end local 1 // com.netflix.hystrix.util.HystrixRollingNumberEvent type
end local 0 // com.netflix.hystrix.util.HystrixRollingNumber$Bucket this
LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/netflix/hystrix/util/HystrixRollingNumber$Bucket;
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 // com.netflix.hystrix.util.HystrixRollingNumber$Bucket this
start local 1 // com.netflix.hystrix.util.HystrixRollingNumberEvent type
0: .line 417
aload 1 /* type */
invokevirtual com.netflix.hystrix.util.HystrixRollingNumberEvent.isMaxUpdater:()Z
ifne 2
1: .line 418
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 /* type */
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: .line 420
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield com.netflix.hystrix.util.HystrixRollingNumber$Bucket.updaterForCounterType:[Lcom/netflix/hystrix/util/LongMaxUpdater;
aload 1 /* type */
invokevirtual com.netflix.hystrix.util.HystrixRollingNumberEvent.ordinal:()I
aaload
areturn
end local 1 // com.netflix.hystrix.util.HystrixRollingNumberEvent type
end local 0 // com.netflix.hystrix.util.HystrixRollingNumber$Bucket this
LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/netflix/hystrix/util/HystrixRollingNumber$Bucket;
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