public class io.micronaut.health.HeartbeatTask implements io.micronaut.context.event.ApplicationEventListener<io.micronaut.discovery.event.ServiceReadyEvent>
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: io.micronaut.health.HeartbeatTask
super_class: java.lang.Object
{
private final java.util.Set<io.micronaut.discovery.ServiceInstance> eventsReference;
descriptor: Ljava/util/Set;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/Set<Lio/micronaut/discovery/ServiceInstance;>;
private final io.micronaut.context.event.ApplicationEventPublisher eventPublisher;
descriptor: Lio/micronaut/context/event/ApplicationEventPublisher;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final io.micronaut.health.CurrentHealthStatus currentHealthStatus;
descriptor: Lio/micronaut/health/CurrentHealthStatus;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
public void <init>(io.micronaut.context.event.ApplicationEventPublisher, io.micronaut.health.HeartbeatConfiguration, io.micronaut.health.CurrentHealthStatus);
descriptor: (Lio/micronaut/context/event/ApplicationEventPublisher;Lio/micronaut/health/HeartbeatConfiguration;Lio/micronaut/health/CurrentHealthStatus;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
invokestatic java.util.concurrent.ConcurrentHashMap.newKeySet:()Ljava/util/concurrent/ConcurrentHashMap$KeySetView;
putfield io.micronaut.health.HeartbeatTask.eventsReference:Ljava/util/Set;
2: aload 0
aload 1
putfield io.micronaut.health.HeartbeatTask.eventPublisher:Lio/micronaut/context/event/ApplicationEventPublisher;
3: aload 0
aload 3
putfield io.micronaut.health.HeartbeatTask.currentHealthStatus:Lio/micronaut/health/CurrentHealthStatus;
4: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lio/micronaut/health/HeartbeatTask;
0 5 1 eventPublisher Lio/micronaut/context/event/ApplicationEventPublisher;
0 5 2 configuration Lio/micronaut/health/HeartbeatConfiguration;
0 5 3 currentHealthStatus Lio/micronaut/health/CurrentHealthStatus;
MethodParameters:
Name Flags
eventPublisher
configuration
currentHealthStatus
public void pulsate();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=1
start local 0 0: aload 0
getfield io.micronaut.health.HeartbeatTask.eventsReference:Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 2
goto 3
StackMap locals: io.micronaut.health.HeartbeatTask top java.util.Iterator
StackMap stack:
1: aload 2
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast io.micronaut.discovery.ServiceInstance
astore 1
start local 1 2: aload 0
getfield io.micronaut.health.HeartbeatTask.eventPublisher:Lio/micronaut/context/event/ApplicationEventPublisher;
new io.micronaut.health.HeartbeatEvent
dup
aload 1
aload 0
getfield io.micronaut.health.HeartbeatTask.currentHealthStatus:Lio/micronaut/health/CurrentHealthStatus;
invokeinterface io.micronaut.health.CurrentHealthStatus.current:()Lio/micronaut/health/HealthStatus;
invokespecial io.micronaut.health.HeartbeatEvent.<init>:(Lio/micronaut/discovery/ServiceInstance;Lio/micronaut/health/HealthStatus;)V
invokeinterface io.micronaut.context.event.ApplicationEventPublisher.publishEvent:(Ljava/lang/Object;)V
end local 1 3: StackMap locals:
StackMap stack:
aload 2
invokeinterface java.util.Iterator.hasNext:()Z
ifne 1
4: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lio/micronaut/health/HeartbeatTask;
2 3 1 instance Lio/micronaut/discovery/ServiceInstance;
RuntimeVisibleAnnotations:
io.micronaut.scheduling.annotation.Scheduled(fixedDelay = "${micronaut.heartbeat.interval:15s}", initialDelay = "${micronaut.heartbeat.initial-delay:5s}")
public void onApplicationEvent(io.micronaut.discovery.event.ServiceReadyEvent);
descriptor: (Lio/micronaut/discovery/event/ServiceReadyEvent;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield io.micronaut.health.HeartbeatTask.eventsReference:Ljava/util/Set;
aload 1
invokevirtual io.micronaut.discovery.event.ServiceReadyEvent.getSource:()Lio/micronaut/discovery/ServiceInstance;
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/micronaut/health/HeartbeatTask;
0 2 1 event Lio/micronaut/discovery/event/ServiceReadyEvent;
MethodParameters:
Name Flags
event
public void onApplicationEvent(java.lang.Object);
descriptor: (Ljava/lang/Object;)V
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
checkcast io.micronaut.discovery.event.ServiceReadyEvent
invokevirtual io.micronaut.health.HeartbeatTask.onApplicationEvent:(Lio/micronaut/discovery/event/ServiceReadyEvent;)V
return
LocalVariableTable:
Start End Slot Name Signature
}
Signature: Ljava/lang/Object;Lio/micronaut/context/event/ApplicationEventListener<Lio/micronaut/discovery/event/ServiceReadyEvent;>;
SourceFile: "HeartbeatTask.java"
InnerClasses:
public KeySetView = java.util.concurrent.ConcurrentHashMap$KeySetView of java.util.concurrent.ConcurrentHashMap
RuntimeVisibleAnnotations:
javax.inject.Singleton()
io.micronaut.health.HeartbeatEnabled()