public class io.vertx.core.http.WebSocketConnectOptionsConverter
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: io.vertx.core.http.WebSocketConnectOptionsConverter
  super_class: java.lang.Object
{
  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.vertx.core.http.WebSocketConnectOptionsConverter this
         0: .line 12
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // io.vertx.core.http.WebSocketConnectOptionsConverter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/core/http/WebSocketConnectOptionsConverter;

  public static void fromJson(java.lang.Iterable<java.util.Map$Entry<java.lang.String, java.lang.Object>>, io.vertx.core.http.WebSocketConnectOptions);
    descriptor: (Ljava/lang/Iterable;Lio/vertx/core/http/WebSocketConnectOptions;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=6, args_size=2
        start local 0 // java.lang.Iterable json
        start local 1 // io.vertx.core.http.WebSocketConnectOptions obj
         0: .line 15
            aload 0 /* json */
            invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
            astore 3
            goto 12
      StackMap locals: java.lang.Iterable io.vertx.core.http.WebSocketConnectOptions top java.util.Iterator
      StackMap stack:
         1: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.util.Map$Entry
            astore 2 /* member */
        start local 2 // java.util.Map$Entry member
         2: .line 16
            aload 2 /* member */
            invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
            checkcast java.lang.String
            dup
            astore 4
            invokevirtual java.lang.String.hashCode:()I
            lookupswitch { // 2
            351608024: 3
           1495903867: 4
              default: 12
          }
      StackMap locals: java.lang.Iterable io.vertx.core.http.WebSocketConnectOptions java.util.Map$Entry java.util.Iterator java.lang.String
      StackMap stack:
         3: aload 4
            ldc "version"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 10
            goto 12
      StackMap locals:
      StackMap stack:
         4: aload 4
            ldc "subProtocols"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 5
            goto 12
         5: .line 18
      StackMap locals:
      StackMap stack:
            aload 2 /* member */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            instanceof io.vertx.core.json.JsonArray
            ifeq 12
         6: .line 19
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 5 /* list */
        start local 5 // java.util.ArrayList list
         7: .line 20
            aload 2 /* member */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            checkcast java.lang.Iterable
            aload 5 /* list */
            invokedynamic accept(Ljava/util/ArrayList;)Ljava/util/function/Consumer;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)V
                  io/vertx/core/http/WebSocketConnectOptionsConverter.lambda$0(Ljava/util/ArrayList;Ljava/lang/Object;)V (6)
                  (Ljava/lang/Object;)V
            invokeinterface java.lang.Iterable.forEach:(Ljava/util/function/Consumer;)V
         8: .line 24
            aload 1 /* obj */
            aload 5 /* list */
            invokevirtual io.vertx.core.http.WebSocketConnectOptions.setSubProtocols:(Ljava/util/List;)Lio/vertx/core/http/WebSocketConnectOptions;
            pop
        end local 5 // java.util.ArrayList list
         9: .line 26
            goto 12
        10: .line 28
      StackMap locals:
      StackMap stack:
            aload 2 /* member */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            instanceof java.lang.String
            ifeq 12
        11: .line 29
            aload 1 /* obj */
            aload 2 /* member */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            checkcast java.lang.String
            invokestatic io.vertx.core.http.WebsocketVersion.valueOf:(Ljava/lang/String;)Lio/vertx/core/http/WebsocketVersion;
            invokevirtual io.vertx.core.http.WebSocketConnectOptions.setVersion:(Lio/vertx/core/http/WebsocketVersion;)Lio/vertx/core/http/WebSocketConnectOptions;
            pop
        end local 2 // java.util.Map$Entry member
        12: .line 15
      StackMap locals: java.lang.Iterable io.vertx.core.http.WebSocketConnectOptions top java.util.Iterator
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
        13: .line 34
            return
        end local 1 // io.vertx.core.http.WebSocketConnectOptions obj
        end local 0 // java.lang.Iterable json
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   14     0    json  Ljava/lang/Iterable<Ljava/util/Map$Entry<Ljava/lang/String;Ljava/lang/Object;>;>;
            0   14     1     obj  Lio/vertx/core/http/WebSocketConnectOptions;
            2   12     2  member  Ljava/util/Map$Entry<Ljava/lang/String;Ljava/lang/Object;>;
            7    9     5    list  Ljava/util/ArrayList<Ljava/lang/String;>;
    Signature: (Ljava/lang/Iterable<Ljava/util/Map$Entry<Ljava/lang/String;Ljava/lang/Object;>;>;Lio/vertx/core/http/WebSocketConnectOptions;)V
    MethodParameters:
      Name  Flags
      json  
      obj   

  public static void toJson(io.vertx.core.http.WebSocketConnectOptions, io.vertx.core.json.JsonObject);
    descriptor: (Lio/vertx/core/http/WebSocketConnectOptions;Lio/vertx/core/json/JsonObject;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.vertx.core.http.WebSocketConnectOptions obj
        start local 1 // io.vertx.core.json.JsonObject json
         0: .line 37
            aload 0 /* obj */
            aload 1 /* json */
            invokevirtual io.vertx.core.json.JsonObject.getMap:()Ljava/util/Map;
            invokestatic io.vertx.core.http.WebSocketConnectOptionsConverter.toJson:(Lio/vertx/core/http/WebSocketConnectOptions;Ljava/util/Map;)V
         1: .line 38
            return
        end local 1 // io.vertx.core.json.JsonObject json
        end local 0 // io.vertx.core.http.WebSocketConnectOptions obj
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0   obj  Lio/vertx/core/http/WebSocketConnectOptions;
            0    2     1  json  Lio/vertx/core/json/JsonObject;
    MethodParameters:
      Name  Flags
      obj   
      json  

  public static void toJson(io.vertx.core.http.WebSocketConnectOptions, java.util.Map<java.lang.String, java.lang.Object>);
    descriptor: (Lio/vertx/core/http/WebSocketConnectOptions;Ljava/util/Map;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // io.vertx.core.http.WebSocketConnectOptions obj
        start local 1 // java.util.Map json
         0: .line 41
            aload 0 /* obj */
            invokevirtual io.vertx.core.http.WebSocketConnectOptions.getSubProtocols:()Ljava/util/List;
            ifnull 4
         1: .line 42
            new io.vertx.core.json.JsonArray
            dup
            invokespecial io.vertx.core.json.JsonArray.<init>:()V
            astore 2 /* array */
        start local 2 // io.vertx.core.json.JsonArray array
         2: .line 43
            aload 0 /* obj */
            invokevirtual io.vertx.core.http.WebSocketConnectOptions.getSubProtocols:()Ljava/util/List;
            aload 2 /* array */
            invokedynamic accept(Lio/vertx/core/json/JsonArray;)Ljava/util/function/Consumer;
              Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
                Method arguments:
                  (Ljava/lang/Object;)V
                  io/vertx/core/http/WebSocketConnectOptionsConverter.lambda$1(Lio/vertx/core/json/JsonArray;Ljava/lang/String;)V (6)
                  (Ljava/lang/String;)V
            invokeinterface java.util.List.forEach:(Ljava/util/function/Consumer;)V
         3: .line 44
            aload 1 /* json */
            ldc "subProtocols"
            aload 2 /* array */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 2 // io.vertx.core.json.JsonArray array
         4: .line 46
      StackMap locals:
      StackMap stack:
            aload 0 /* obj */
            invokevirtual io.vertx.core.http.WebSocketConnectOptions.getVersion:()Lio/vertx/core/http/WebsocketVersion;
            ifnull 6
         5: .line 47
            aload 1 /* json */
            ldc "version"
            aload 0 /* obj */
            invokevirtual io.vertx.core.http.WebSocketConnectOptions.getVersion:()Lio/vertx/core/http/WebsocketVersion;
            invokevirtual io.vertx.core.http.WebsocketVersion.name:()Ljava/lang/String;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         6: .line 49
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.util.Map json
        end local 0 // io.vertx.core.http.WebSocketConnectOptions obj
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    7     0    obj  Lio/vertx/core/http/WebSocketConnectOptions;
            0    7     1   json  Ljava/util/Map<Ljava/lang/String;Ljava/lang/Object;>;
            2    4     2  array  Lio/vertx/core/json/JsonArray;
    Signature: (Lio/vertx/core/http/WebSocketConnectOptions;Ljava/util/Map<Ljava/lang/String;Ljava/lang/Object;>;)V
    MethodParameters:
      Name  Flags
      obj   
      json  

  private static void lambda$0(java.util.ArrayList, java.lang.Object);
    descriptor: (Ljava/util/ArrayList;Ljava/lang/Object;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 1 // java.lang.Object item
         0: .line 21
            aload 1 /* item */
            instanceof java.lang.String
            ifeq 2
         1: .line 22
            aload 0
            aload 1 /* item */
            checkcast java.lang.String
            invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
            pop
         2: .line 23
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.Object item
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     1  item  Ljava/lang/Object;

  private static void lambda$1(io.vertx.core.json.JsonArray, java.lang.String);
    descriptor: (Lio/vertx/core/json/JsonArray;Ljava/lang/String;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 1 // java.lang.String item
         0: .line 43
            aload 0
            aload 1 /* item */
            invokevirtual io.vertx.core.json.JsonArray.add:(Ljava/lang/String;)Lio/vertx/core/json/JsonArray;
            return
        end local 1 // java.lang.String item
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     1  item  Ljava/lang/String;
}
SourceFile: "WebSocketConnectOptionsConverter.java"
InnerClasses:
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
  public abstract Entry = java.util.Map$Entry of java.util.Map