class com.netflix.hystrix.AbstractCommand$10 implements rx.functions.Action1<R>
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: com.netflix.hystrix.AbstractCommand$10
super_class: java.lang.Object
{
final com.netflix.hystrix.AbstractCommand this$0;
descriptor: Lcom/netflix/hystrix/AbstractCommand;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
void <init>(com.netflix.hystrix.AbstractCommand);
descriptor: (Lcom/netflix/hystrix/AbstractCommand;)V
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 // com.netflix.hystrix.AbstractCommand$10 this
0: .line 571
aload 0 /* this */
aload 1
putfield com.netflix.hystrix.AbstractCommand$10.this$0:Lcom/netflix/hystrix/AbstractCommand;
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
return
end local 0 // com.netflix.hystrix.AbstractCommand$10 this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/netflix/hystrix/AbstractCommand$10;
MethodParameters:
Name Flags
this$0 final
public void call();
descriptor: (Ljava/lang/Object;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=2
start local 0 // com.netflix.hystrix.AbstractCommand$10 this
start local 1 // java.lang.Object r
0: .line 574
aload 0 /* this */
getfield com.netflix.hystrix.AbstractCommand$10.this$0:Lcom/netflix/hystrix/AbstractCommand;
invokevirtual com.netflix.hystrix.AbstractCommand.shouldOutputOnNextEvents:()Z
ifeq 3
1: .line 575
aload 0 /* this */
getfield com.netflix.hystrix.AbstractCommand$10.this$0:Lcom/netflix/hystrix/AbstractCommand;
aload 0 /* this */
getfield com.netflix.hystrix.AbstractCommand$10.this$0:Lcom/netflix/hystrix/AbstractCommand;
getfield com.netflix.hystrix.AbstractCommand.executionResult:Lcom/netflix/hystrix/ExecutionResult;
getstatic com.netflix.hystrix.HystrixEventType.EMIT:Lcom/netflix/hystrix/HystrixEventType;
invokevirtual com.netflix.hystrix.ExecutionResult.addEvent:(Lcom/netflix/hystrix/HystrixEventType;)Lcom/netflix/hystrix/ExecutionResult;
putfield com.netflix.hystrix.AbstractCommand.executionResult:Lcom/netflix/hystrix/ExecutionResult;
2: .line 576
aload 0 /* this */
getfield com.netflix.hystrix.AbstractCommand$10.this$0:Lcom/netflix/hystrix/AbstractCommand;
getfield com.netflix.hystrix.AbstractCommand.eventNotifier:Lcom/netflix/hystrix/strategy/eventnotifier/HystrixEventNotifier;
getstatic com.netflix.hystrix.HystrixEventType.EMIT:Lcom/netflix/hystrix/HystrixEventType;
aload 0 /* this */
getfield com.netflix.hystrix.AbstractCommand$10.this$0:Lcom/netflix/hystrix/AbstractCommand;
getfield com.netflix.hystrix.AbstractCommand.commandKey:Lcom/netflix/hystrix/HystrixCommandKey;
invokevirtual com.netflix.hystrix.strategy.eventnotifier.HystrixEventNotifier.markEvent:(Lcom/netflix/hystrix/HystrixEventType;Lcom/netflix/hystrix/HystrixCommandKey;)V
3: .line 578
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield com.netflix.hystrix.AbstractCommand$10.this$0:Lcom/netflix/hystrix/AbstractCommand;
invokevirtual com.netflix.hystrix.AbstractCommand.commandIsScalar:()Z
ifeq 9
4: .line 579
invokestatic java.lang.System.currentTimeMillis:()J
aload 0 /* this */
getfield com.netflix.hystrix.AbstractCommand$10.this$0:Lcom/netflix/hystrix/AbstractCommand;
getfield com.netflix.hystrix.AbstractCommand.executionResult:Lcom/netflix/hystrix/ExecutionResult;
invokevirtual com.netflix.hystrix.ExecutionResult.getStartTimestamp:()J
lsub
lstore 2 /* latency */
start local 2 // long latency
5: .line 580
aload 0 /* this */
getfield com.netflix.hystrix.AbstractCommand$10.this$0:Lcom/netflix/hystrix/AbstractCommand;
getfield com.netflix.hystrix.AbstractCommand.eventNotifier:Lcom/netflix/hystrix/strategy/eventnotifier/HystrixEventNotifier;
aload 0 /* this */
getfield com.netflix.hystrix.AbstractCommand$10.this$0:Lcom/netflix/hystrix/AbstractCommand;
invokevirtual com.netflix.hystrix.AbstractCommand.getCommandKey:()Lcom/netflix/hystrix/HystrixCommandKey;
aload 0 /* this */
getfield com.netflix.hystrix.AbstractCommand$10.this$0:Lcom/netflix/hystrix/AbstractCommand;
getfield com.netflix.hystrix.AbstractCommand.properties:Lcom/netflix/hystrix/HystrixCommandProperties;
invokevirtual com.netflix.hystrix.HystrixCommandProperties.executionIsolationStrategy:()Lcom/netflix/hystrix/strategy/properties/HystrixProperty;
invokeinterface com.netflix.hystrix.strategy.properties.HystrixProperty.get:()Ljava/lang/Object;
checkcast com.netflix.hystrix.HystrixCommandProperties$ExecutionIsolationStrategy
lload 2 /* latency */
l2i
aload 0 /* this */
getfield com.netflix.hystrix.AbstractCommand$10.this$0:Lcom/netflix/hystrix/AbstractCommand;
getfield com.netflix.hystrix.AbstractCommand.executionResult:Lcom/netflix/hystrix/ExecutionResult;
invokevirtual com.netflix.hystrix.ExecutionResult.getOrderedList:()Ljava/util/List;
invokevirtual com.netflix.hystrix.strategy.eventnotifier.HystrixEventNotifier.markCommandExecution:(Lcom/netflix/hystrix/HystrixCommandKey;Lcom/netflix/hystrix/HystrixCommandProperties$ExecutionIsolationStrategy;ILjava/util/List;)V
6: .line 581
aload 0 /* this */
getfield com.netflix.hystrix.AbstractCommand$10.this$0:Lcom/netflix/hystrix/AbstractCommand;
getfield com.netflix.hystrix.AbstractCommand.eventNotifier:Lcom/netflix/hystrix/strategy/eventnotifier/HystrixEventNotifier;
getstatic com.netflix.hystrix.HystrixEventType.SUCCESS:Lcom/netflix/hystrix/HystrixEventType;
aload 0 /* this */
getfield com.netflix.hystrix.AbstractCommand$10.this$0:Lcom/netflix/hystrix/AbstractCommand;
getfield com.netflix.hystrix.AbstractCommand.commandKey:Lcom/netflix/hystrix/HystrixCommandKey;
invokevirtual com.netflix.hystrix.strategy.eventnotifier.HystrixEventNotifier.markEvent:(Lcom/netflix/hystrix/HystrixEventType;Lcom/netflix/hystrix/HystrixCommandKey;)V
7: .line 582
aload 0 /* this */
getfield com.netflix.hystrix.AbstractCommand$10.this$0:Lcom/netflix/hystrix/AbstractCommand;
aload 0 /* this */
getfield com.netflix.hystrix.AbstractCommand$10.this$0:Lcom/netflix/hystrix/AbstractCommand;
getfield com.netflix.hystrix.AbstractCommand.executionResult:Lcom/netflix/hystrix/ExecutionResult;
lload 2 /* latency */
l2i
getstatic com.netflix.hystrix.HystrixEventType.SUCCESS:Lcom/netflix/hystrix/HystrixEventType;
invokevirtual com.netflix.hystrix.ExecutionResult.addEvent:(ILcom/netflix/hystrix/HystrixEventType;)Lcom/netflix/hystrix/ExecutionResult;
putfield com.netflix.hystrix.AbstractCommand.executionResult:Lcom/netflix/hystrix/ExecutionResult;
8: .line 583
aload 0 /* this */
getfield com.netflix.hystrix.AbstractCommand$10.this$0:Lcom/netflix/hystrix/AbstractCommand;
getfield com.netflix.hystrix.AbstractCommand.circuitBreaker:Lcom/netflix/hystrix/HystrixCircuitBreaker;
invokeinterface com.netflix.hystrix.HystrixCircuitBreaker.markSuccess:()V
end local 2 // long latency
9: .line 585
StackMap locals:
StackMap stack:
return
end local 1 // java.lang.Object r
end local 0 // com.netflix.hystrix.AbstractCommand$10 this
LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lcom/netflix/hystrix/AbstractCommand$10;
0 10 1 r TR;
5 9 2 latency J
Signature: (TR;)V
MethodParameters:
Name Flags
r
}
Signature: Ljava/lang/Object;Lrx/functions/Action1<TR;>;
SourceFile: "AbstractCommand.java"
EnclosingMethod: com.netflix.hystrix.AbstractCommand.executeCommandAndObserve:(Lcom/netflix/hystrix/AbstractCommand;)Lrx/Observable;
NestHost: com.netflix.hystrix.AbstractCommand
InnerClasses:
com.netflix.hystrix.AbstractCommand$10
public final ExecutionIsolationStrategy = com.netflix.hystrix.HystrixCommandProperties$ExecutionIsolationStrategy of com.netflix.hystrix.HystrixCommandProperties