public class jdk.jshell.execution.JdiExecutionControlProvider implements jdk.jshell.spi.ExecutionControlProvider
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: jdk.jshell.execution.JdiExecutionControlProvider
  super_class: java.lang.Object
{
  public static final java.lang.String PARAM_REMOTE_AGENT;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "remoteAgent"

  public static final java.lang.String PARAM_TIMEOUT;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "timeout"

  public static final java.lang.String PARAM_HOST_NAME;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "hostname"

  public static final java.lang.String PARAM_LAUNCH;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "launch"

  private static final int DEFAULT_TIMEOUT;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 5000

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.jshell.execution.JdiExecutionControlProvider this
         0: .line 75
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 76
            return
        end local 0 // jdk.jshell.execution.JdiExecutionControlProvider this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljdk/jshell/execution/JdiExecutionControlProvider;

  public java.lang.String name();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // jdk.jshell.execution.JdiExecutionControlProvider this
         0: .line 85
            ldc "jdi"
            areturn
        end local 0 // jdk.jshell.execution.JdiExecutionControlProvider this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljdk/jshell/execution/JdiExecutionControlProvider;

  public java.util.Map<java.lang.String, java.lang.String> defaultParameters();
    descriptor: ()Ljava/util/Map;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // jdk.jshell.execution.JdiExecutionControlProvider this
         0: .line 126
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            astore 1 /* dp */
        start local 1 // java.util.Map dp
         1: .line 127
            aload 1 /* dp */
            ldc "remoteAgent"
            ldc Ljdk/jshell/execution/RemoteExecutionControl;
            invokevirtual java.lang.Class.getName:()Ljava/lang/String;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         2: .line 128
            aload 1 /* dp */
            ldc "timeout"
            ldc "5000"
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         3: .line 129
            aload 1 /* dp */
            ldc "hostname"
            ldc ""
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         4: .line 130
            aload 1 /* dp */
            ldc "launch"
            ldc "false"
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         5: .line 131
            aload 1 /* dp */
            areturn
        end local 1 // java.util.Map dp
        end local 0 // jdk.jshell.execution.JdiExecutionControlProvider this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Ljdk/jshell/execution/JdiExecutionControlProvider;
            1    6     1    dp  Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
    Signature: ()Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;

  public jdk.jshell.spi.ExecutionControl generate(jdk.jshell.spi.ExecutionEnv, java.util.Map<java.lang.String, java.lang.String>);
    descriptor: (Ljdk/jshell/spi/ExecutionEnv;Ljava/util/Map;)Ljdk/jshell/spi/ExecutionControl;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=9, args_size=3
        start local 0 // jdk.jshell.execution.JdiExecutionControlProvider this
        start local 1 // jdk.jshell.spi.ExecutionEnv env
        start local 2 // java.util.Map parameters
         0: .line 137
            aload 0 /* this */
            invokevirtual jdk.jshell.execution.JdiExecutionControlProvider.defaultParameters:()Ljava/util/Map;
            astore 3 /* dp */
        start local 3 // java.util.Map dp
         1: .line 138
            aload 2 /* parameters */
            ifnonnull 3
         2: .line 139
            aload 3 /* dp */
            astore 2 /* parameters */
         3: .line 141
      StackMap locals: java.util.Map
      StackMap stack:
            aload 2 /* parameters */
            ldc "remoteAgent"
            aload 3 /* dp */
            ldc "remoteAgent"
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            invokeinterface java.util.Map.getOrDefault:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            astore 4 /* remoteAgent */
        start local 4 // java.lang.String remoteAgent
         4: .line 143
            aload 2 /* parameters */
            ldc "timeout"
            aload 3 /* dp */
            ldc "timeout"
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            invokeinterface java.util.Map.getOrDefault:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
         5: .line 142
            invokestatic java.lang.Integer.parseUnsignedInt:(Ljava/lang/String;)I
            istore 5 /* timeout */
        start local 5 // int timeout
         6: .line 144
            aload 2 /* parameters */
            ldc "hostname"
            aload 3 /* dp */
            ldc "hostname"
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            invokeinterface java.util.Map.getOrDefault:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            astore 6 /* host */
        start local 6 // java.lang.String host
         7: .line 145
            aload 2 /* parameters */
            ldc "launch"
            aload 3 /* dp */
            ldc "launch"
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            invokeinterface java.util.Map.getOrDefault:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.lang.String
            getstatic java.util.Locale.ROOT:Ljava/util/Locale;
            invokevirtual java.lang.String.toLowerCase:(Ljava/util/Locale;)Ljava/lang/String;
            astore 7 /* sIsLaunch */
        start local 7 // java.lang.String sIsLaunch
         8: .line 146
            aload 7 /* sIsLaunch */
            invokevirtual java.lang.String.length:()I
            ifle 11
         9: .line 147
            ldc "true"
            aload 7 /* sIsLaunch */
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifne 10
            ldc "yes"
            aload 7 /* sIsLaunch */
            invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
            ifeq 11
        10: .line 146
      StackMap locals: jdk.jshell.execution.JdiExecutionControlProvider jdk.jshell.spi.ExecutionEnv java.util.Map java.util.Map java.lang.String int java.lang.String java.lang.String
      StackMap stack:
            iconst_1
            goto 12
      StackMap locals:
      StackMap stack:
        11: iconst_0
      StackMap locals:
      StackMap stack: int
        12: istore 8 /* isLaunch */
        start local 8 // boolean isLaunch
        13: .line 148
            aload 1 /* env */
            aload 4 /* remoteAgent */
            iload 8 /* isLaunch */
            aload 6 /* host */
            iload 5 /* timeout */
            invokestatic jdk.jshell.execution.JdiDefaultExecutionControl.create:(Ljdk/jshell/spi/ExecutionEnv;Ljava/lang/String;ZLjava/lang/String;I)Ljdk/jshell/spi/ExecutionControl;
            areturn
        end local 8 // boolean isLaunch
        end local 7 // java.lang.String sIsLaunch
        end local 6 // java.lang.String host
        end local 5 // int timeout
        end local 4 // java.lang.String remoteAgent
        end local 3 // java.util.Map dp
        end local 2 // java.util.Map parameters
        end local 1 // jdk.jshell.spi.ExecutionEnv env
        end local 0 // jdk.jshell.execution.JdiExecutionControlProvider this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   14     0         this  Ljdk/jshell/execution/JdiExecutionControlProvider;
            0   14     1          env  Ljdk/jshell/spi/ExecutionEnv;
            0   14     2   parameters  Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
            1   14     3           dp  Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
            4   14     4  remoteAgent  Ljava/lang/String;
            6   14     5      timeout  I
            7   14     6         host  Ljava/lang/String;
            8   14     7    sIsLaunch  Ljava/lang/String;
           13   14     8     isLaunch  Z
    Exceptions:
      throws java.io.IOException
    Signature: (Ljdk/jshell/spi/ExecutionEnv;Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;)Ljdk/jshell/spi/ExecutionControl;
    MethodParameters:
            Name  Flags
      env         
      parameters  
}
SourceFile: "JdiExecutionControlProvider.java"