class javax.management.timer.TimerAlarmClock extends java.util.TimerTask
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: javax.management.timer.TimerAlarmClock
  super_class: java.util.TimerTask
{
  javax.management.timer.Timer listener;
    descriptor: Ljavax/management/timer/Timer;
    flags: (0x0000) 

  long timeout;
    descriptor: J
    flags: (0x0000) 

  java.util.Date next;
    descriptor: Ljava/util/Date;
    flags: (0x0000) 

  public void <init>(javax.management.timer.Timer, long);
    descriptor: (Ljavax/management/timer/Timer;J)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=3
        start local 0 // javax.management.timer.TimerAlarmClock this
        start local 1 // javax.management.timer.Timer listener
        start local 2 // long timeout
         0: .line 50
            aload 0 /* this */
            invokespecial java.util.TimerTask.<init>:()V
         1: .line 40
            aload 0 /* this */
            aconst_null
            putfield javax.management.timer.TimerAlarmClock.listener:Ljavax/management/timer/Timer;
         2: .line 41
            aload 0 /* this */
            ldc 10000
            putfield javax.management.timer.TimerAlarmClock.timeout:J
         3: .line 42
            aload 0 /* this */
            aconst_null
            putfield javax.management.timer.TimerAlarmClock.next:Ljava/util/Date;
         4: .line 51
            aload 0 /* this */
            aload 1 /* listener */
            putfield javax.management.timer.TimerAlarmClock.listener:Ljavax/management/timer/Timer;
         5: .line 52
            aload 0 /* this */
            lconst_0
            lload 2 /* timeout */
            invokestatic java.lang.Math.max:(JJ)J
            putfield javax.management.timer.TimerAlarmClock.timeout:J
         6: .line 53
            return
        end local 2 // long timeout
        end local 1 // javax.management.timer.Timer listener
        end local 0 // javax.management.timer.TimerAlarmClock this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    7     0      this  Ljavax/management/timer/TimerAlarmClock;
            0    7     1  listener  Ljavax/management/timer/Timer;
            0    7     2   timeout  J
    MethodParameters:
          Name  Flags
      listener  
      timeout   

  public void <init>(javax.management.timer.Timer, java.util.Date);
    descriptor: (Ljavax/management/timer/Timer;Ljava/util/Date;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // javax.management.timer.TimerAlarmClock this
        start local 1 // javax.management.timer.Timer listener
        start local 2 // java.util.Date next
         0: .line 55
            aload 0 /* this */
            invokespecial java.util.TimerTask.<init>:()V
         1: .line 40
            aload 0 /* this */
            aconst_null
            putfield javax.management.timer.TimerAlarmClock.listener:Ljavax/management/timer/Timer;
         2: .line 41
            aload 0 /* this */
            ldc 10000
            putfield javax.management.timer.TimerAlarmClock.timeout:J
         3: .line 42
            aload 0 /* this */
            aconst_null
            putfield javax.management.timer.TimerAlarmClock.next:Ljava/util/Date;
         4: .line 56
            aload 0 /* this */
            aload 1 /* listener */
            putfield javax.management.timer.TimerAlarmClock.listener:Ljavax/management/timer/Timer;
         5: .line 57
            aload 0 /* this */
            aload 2 /* next */
            putfield javax.management.timer.TimerAlarmClock.next:Ljava/util/Date;
         6: .line 58
            return
        end local 2 // java.util.Date next
        end local 1 // javax.management.timer.Timer listener
        end local 0 // javax.management.timer.TimerAlarmClock this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    7     0      this  Ljavax/management/timer/TimerAlarmClock;
            0    7     1  listener  Ljavax/management/timer/Timer;
            0    7     2      next  Ljava/util/Date;
    MethodParameters:
          Name  Flags
      listener  
      next      

  public void run();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=2, args_size=1
        start local 0 // javax.management.timer.TimerAlarmClock this
         0: .line 73
            new javax.management.timer.TimerAlarmClockNotification
            dup
            aload 0 /* this */
            invokespecial javax.management.timer.TimerAlarmClockNotification.<init>:(Ljavax/management/timer/TimerAlarmClock;)V
            astore 1 /* notif */
        start local 1 // javax.management.timer.TimerAlarmClockNotification notif
         1: .line 74
            aload 0 /* this */
            getfield javax.management.timer.TimerAlarmClock.listener:Ljavax/management/timer/Timer;
            aload 1 /* notif */
            invokevirtual javax.management.timer.Timer.notifyAlarmClock:(Ljavax/management/timer/TimerAlarmClockNotification;)V
        end local 1 // javax.management.timer.TimerAlarmClockNotification notif
         2: .line 75
            goto 7
      StackMap locals:
      StackMap stack: java.lang.Exception
         3: astore 1 /* e */
        start local 1 // java.lang.Exception e
         4: .line 76
            getstatic com.sun.jmx.defaults.JmxProperties.TIMER_LOGGER:Ljava/util/logging/Logger;
            getstatic java.util.logging.Level.FINEST:Ljava/util/logging/Level;
            ldc Ljavax/management/timer/Timer;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            ldc "run"
         5: .line 77
            ldc "Got unexpected exception when sending a notification"
            aload 1 /* e */
         6: .line 76
            invokevirtual java.util.logging.Logger.logp:(Ljava/util/logging/Level;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)V
        end local 1 // java.lang.Exception e
         7: .line 79
      StackMap locals:
      StackMap stack:
            return
        end local 0 // javax.management.timer.TimerAlarmClock this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    8     0   this  Ljavax/management/timer/TimerAlarmClock;
            1    2     1  notif  Ljavax/management/timer/TimerAlarmClockNotification;
            4    7     1      e  Ljava/lang/Exception;
      Exception table:
        from    to  target  type
           0     2       3  Class java.lang.Exception
}
SourceFile: "TimerAlarmClock.java"