class freemarker.debug.impl.RmiDebuggerImpl extends java.rmi.server.UnicastRemoteObject implements freemarker.debug.Debugger
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: freemarker.debug.impl.RmiDebuggerImpl
  super_class: java.rmi.server.UnicastRemoteObject
{
  private static final long serialVersionUID;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 1

  private final freemarker.debug.impl.RmiDebuggerService service;
    descriptor: Lfreemarker/debug/impl/RmiDebuggerService;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  protected void <init>(freemarker.debug.impl.RmiDebuggerService);
    descriptor: (Lfreemarker/debug/impl/RmiDebuggerService;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // freemarker.debug.impl.RmiDebuggerImpl this
        start local 1 // freemarker.debug.impl.RmiDebuggerService service
         0: .line 42
            aload 0 /* this */
            invokespecial java.rmi.server.UnicastRemoteObject.<init>:()V
         1: .line 43
            aload 0 /* this */
            aload 1 /* service */
            putfield freemarker.debug.impl.RmiDebuggerImpl.service:Lfreemarker/debug/impl/RmiDebuggerService;
         2: .line 44
            return
        end local 1 // freemarker.debug.impl.RmiDebuggerService service
        end local 0 // freemarker.debug.impl.RmiDebuggerImpl this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lfreemarker/debug/impl/RmiDebuggerImpl;
            0    3     1  service  Lfreemarker/debug/impl/RmiDebuggerService;
    Exceptions:
      throws java.rmi.RemoteException
    MethodParameters:
         Name  Flags
      service  

  public void addBreakpoint(freemarker.debug.Breakpoint);
    descriptor: (Lfreemarker/debug/Breakpoint;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // freemarker.debug.impl.RmiDebuggerImpl this
        start local 1 // freemarker.debug.Breakpoint breakpoint
         0: .line 47
            aload 0 /* this */
            getfield freemarker.debug.impl.RmiDebuggerImpl.service:Lfreemarker/debug/impl/RmiDebuggerService;
            aload 1 /* breakpoint */
            invokevirtual freemarker.debug.impl.RmiDebuggerService.addBreakpoint:(Lfreemarker/debug/Breakpoint;)V
         1: .line 48
            return
        end local 1 // freemarker.debug.Breakpoint breakpoint
        end local 0 // freemarker.debug.impl.RmiDebuggerImpl this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        this  Lfreemarker/debug/impl/RmiDebuggerImpl;
            0    2     1  breakpoint  Lfreemarker/debug/Breakpoint;
    MethodParameters:
            Name  Flags
      breakpoint  

  public java.lang.Object addDebuggerListener(freemarker.debug.DebuggerListener);
    descriptor: (Lfreemarker/debug/DebuggerListener;)Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // freemarker.debug.impl.RmiDebuggerImpl this
        start local 1 // freemarker.debug.DebuggerListener listener
         0: .line 51
            aload 0 /* this */
            getfield freemarker.debug.impl.RmiDebuggerImpl.service:Lfreemarker/debug/impl/RmiDebuggerService;
            aload 1 /* listener */
            invokevirtual freemarker.debug.impl.RmiDebuggerService.addDebuggerListener:(Lfreemarker/debug/DebuggerListener;)Ljava/lang/Object;
            areturn
        end local 1 // freemarker.debug.DebuggerListener listener
        end local 0 // freemarker.debug.impl.RmiDebuggerImpl this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lfreemarker/debug/impl/RmiDebuggerImpl;
            0    1     1  listener  Lfreemarker/debug/DebuggerListener;
    MethodParameters:
          Name  Flags
      listener  

  public java.util.List getBreakpoints();
    descriptor: ()Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // freemarker.debug.impl.RmiDebuggerImpl this
         0: .line 55
            aload 0 /* this */
            getfield freemarker.debug.impl.RmiDebuggerImpl.service:Lfreemarker/debug/impl/RmiDebuggerService;
            invokevirtual freemarker.debug.impl.RmiDebuggerService.getBreakpointsSpi:()Ljava/util/List;
            areturn
        end local 0 // freemarker.debug.impl.RmiDebuggerImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lfreemarker/debug/impl/RmiDebuggerImpl;

  public java.util.List getBreakpoints(java.lang.String);
    descriptor: (Ljava/lang/String;)Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // freemarker.debug.impl.RmiDebuggerImpl this
        start local 1 // java.lang.String templateName
         0: .line 59
            aload 0 /* this */
            getfield freemarker.debug.impl.RmiDebuggerImpl.service:Lfreemarker/debug/impl/RmiDebuggerService;
            aload 1 /* templateName */
            invokevirtual freemarker.debug.impl.RmiDebuggerService.getBreakpointsSpi:(Ljava/lang/String;)Ljava/util/List;
            areturn
        end local 1 // java.lang.String templateName
        end local 0 // freemarker.debug.impl.RmiDebuggerImpl this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    1     0          this  Lfreemarker/debug/impl/RmiDebuggerImpl;
            0    1     1  templateName  Ljava/lang/String;
    MethodParameters:
              Name  Flags
      templateName  

  public java.util.Collection getSuspendedEnvironments();
    descriptor: ()Ljava/util/Collection;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // freemarker.debug.impl.RmiDebuggerImpl this
         0: .line 63
            aload 0 /* this */
            getfield freemarker.debug.impl.RmiDebuggerImpl.service:Lfreemarker/debug/impl/RmiDebuggerService;
            invokevirtual freemarker.debug.impl.RmiDebuggerService.getSuspendedEnvironments:()Ljava/util/Collection;
            areturn
        end local 0 // freemarker.debug.impl.RmiDebuggerImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lfreemarker/debug/impl/RmiDebuggerImpl;

  public void removeBreakpoint(freemarker.debug.Breakpoint);
    descriptor: (Lfreemarker/debug/Breakpoint;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // freemarker.debug.impl.RmiDebuggerImpl this
        start local 1 // freemarker.debug.Breakpoint breakpoint
         0: .line 67
            aload 0 /* this */
            getfield freemarker.debug.impl.RmiDebuggerImpl.service:Lfreemarker/debug/impl/RmiDebuggerService;
            aload 1 /* breakpoint */
            invokevirtual freemarker.debug.impl.RmiDebuggerService.removeBreakpoint:(Lfreemarker/debug/Breakpoint;)V
         1: .line 68
            return
        end local 1 // freemarker.debug.Breakpoint breakpoint
        end local 0 // freemarker.debug.impl.RmiDebuggerImpl this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        this  Lfreemarker/debug/impl/RmiDebuggerImpl;
            0    2     1  breakpoint  Lfreemarker/debug/Breakpoint;
    MethodParameters:
            Name  Flags
      breakpoint  

  public void removeDebuggerListener(java.lang.Object);
    descriptor: (Ljava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // freemarker.debug.impl.RmiDebuggerImpl this
        start local 1 // java.lang.Object id
         0: .line 71
            aload 0 /* this */
            getfield freemarker.debug.impl.RmiDebuggerImpl.service:Lfreemarker/debug/impl/RmiDebuggerService;
            aload 1 /* id */
            invokevirtual freemarker.debug.impl.RmiDebuggerService.removeDebuggerListener:(Ljava/lang/Object;)V
         1: .line 72
            return
        end local 1 // java.lang.Object id
        end local 0 // freemarker.debug.impl.RmiDebuggerImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lfreemarker/debug/impl/RmiDebuggerImpl;
            0    2     1    id  Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      id    

  public void removeBreakpoints();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // freemarker.debug.impl.RmiDebuggerImpl this
         0: .line 75
            aload 0 /* this */
            getfield freemarker.debug.impl.RmiDebuggerImpl.service:Lfreemarker/debug/impl/RmiDebuggerService;
            invokevirtual freemarker.debug.impl.RmiDebuggerService.removeBreakpoints:()V
         1: .line 76
            return
        end local 0 // freemarker.debug.impl.RmiDebuggerImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lfreemarker/debug/impl/RmiDebuggerImpl;

  public void removeBreakpoints(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // freemarker.debug.impl.RmiDebuggerImpl this
        start local 1 // java.lang.String templateName
         0: .line 79
            aload 0 /* this */
            getfield freemarker.debug.impl.RmiDebuggerImpl.service:Lfreemarker/debug/impl/RmiDebuggerService;
            aload 1 /* templateName */
            invokevirtual freemarker.debug.impl.RmiDebuggerService.removeBreakpoints:(Ljava/lang/String;)V
         1: .line 80
            return
        end local 1 // java.lang.String templateName
        end local 0 // freemarker.debug.impl.RmiDebuggerImpl this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    2     0          this  Lfreemarker/debug/impl/RmiDebuggerImpl;
            0    2     1  templateName  Ljava/lang/String;
    MethodParameters:
              Name  Flags
      templateName  
}
SourceFile: "RmiDebuggerImpl.java"