public class io.vertx.ext.stomp.FrameConverter
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: io.vertx.ext.stomp.FrameConverter
  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.ext.stomp.FrameConverter this
         0: .line 13
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // io.vertx.ext.stomp.FrameConverter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/ext/stomp/FrameConverter;

  public static void fromJson(java.lang.Iterable<java.util.Map$Entry<java.lang.String, java.lang.Object>>, io.vertx.ext.stomp.Frame);
    descriptor: (Ljava/lang/Iterable;Lio/vertx/ext/stomp/Frame;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=5, args_size=2
        start local 0 // java.lang.Iterable json
        start local 1 // io.vertx.ext.stomp.Frame obj
         0: .line 17
            aload 0 /* json */
            invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
            astore 3
            goto 29
      StackMap locals: java.lang.Iterable io.vertx.ext.stomp.Frame 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 18
            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 { // 9
          -1429847026: 3
          -1173961051: 4
                 3355: 5
                96393: 6
              3029410: 7
            795307910: 8
            950394699: 9
           1082290744: 10
           2141246174: 11
              default: 29
          }
      StackMap locals: java.lang.Iterable io.vertx.ext.stomp.Frame java.util.Map$Entry java.util.Iterator java.lang.String
      StackMap stack:
         3: aload 4
            ldc "destination"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 18
            goto 29
      StackMap locals:
      StackMap stack:
         4: aload 4
            ldc "bodyAsString"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 29
            goto 29
      StackMap locals:
      StackMap stack:
         5: aload 4
            ldc "id"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 24
            goto 29
      StackMap locals:
      StackMap stack:
         6: aload 4
            ldc "ack"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 29
            goto 29
      StackMap locals:
      StackMap stack:
         7: aload 4
            ldc "body"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 12
            goto 29
      StackMap locals:
      StackMap stack:
         8: aload 4
            ldc "headers"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 21
            goto 29
      StackMap locals:
      StackMap stack:
         9: aload 4
            ldc "command"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 15
            goto 29
      StackMap locals:
      StackMap stack:
        10: aload 4
            ldc "receipt"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 29
            goto 29
      StackMap locals:
      StackMap stack:
        11: aload 4
            ldc "transaction"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifne 27
            goto 29
        12: .line 22
      StackMap locals:
      StackMap stack:
            aload 2 /* member */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            instanceof java.lang.String
            ifeq 29
        13: .line 23
            aload 1 /* obj */
            getstatic io.vertx.core.json.impl.JsonUtil.BASE64_DECODER:Ljava/util/Base64$Decoder;
            aload 2 /* member */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            checkcast java.lang.String
            invokevirtual java.util.Base64$Decoder.decode:(Ljava/lang/String;)[B
            invokestatic io.vertx.core.buffer.Buffer.buffer:([B)Lio/vertx/core/buffer/Buffer;
            invokevirtual io.vertx.ext.stomp.Frame.setBody:(Lio/vertx/core/buffer/Buffer;)Lio/vertx/ext/stomp/Frame;
            pop
        14: .line 25
            goto 29
        15: .line 29
      StackMap locals:
      StackMap stack:
            aload 2 /* member */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            instanceof java.lang.String
            ifeq 29
        16: .line 30
            aload 1 /* obj */
            aload 2 /* member */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            checkcast java.lang.String
            invokestatic io.vertx.ext.stomp.Frame$Command.valueOf:(Ljava/lang/String;)Lio/vertx/ext/stomp/Frame$Command;
            invokevirtual io.vertx.ext.stomp.Frame.setCommand:(Lio/vertx/ext/stomp/Frame$Command;)Lio/vertx/ext/stomp/Frame;
            pop
        17: .line 32
            goto 29
        18: .line 34
      StackMap locals:
      StackMap stack:
            aload 2 /* member */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            instanceof java.lang.String
            ifeq 29
        19: .line 35
            aload 1 /* obj */
            aload 2 /* member */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            checkcast java.lang.String
            invokevirtual io.vertx.ext.stomp.Frame.setDestination:(Ljava/lang/String;)Lio/vertx/ext/stomp/Frame;
            pop
        20: .line 37
            goto 29
        21: .line 39
      StackMap locals:
      StackMap stack:
            aload 2 /* member */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            instanceof io.vertx.core.json.JsonObject
            ifeq 29
        22: .line 40
            aload 2 /* member */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            checkcast java.lang.Iterable
            aload 1 /* obj */
            invokedynamic accept(Lio/vertx/ext/stomp/Frame;)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/ext/stomp/FrameConverter.lambda$0(Lio/vertx/ext/stomp/Frame;Ljava/util/Map$Entry;)V (6)
                  (Ljava/util/Map$Entry;)V
            invokeinterface java.lang.Iterable.forEach:(Ljava/util/function/Consumer;)V
        23: .line 45
            goto 29
        24: .line 47
      StackMap locals:
      StackMap stack:
            aload 2 /* member */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            instanceof java.lang.String
            ifeq 29
        25: .line 48
            aload 1 /* obj */
            aload 2 /* member */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            checkcast java.lang.String
            invokevirtual io.vertx.ext.stomp.Frame.setId:(Ljava/lang/String;)Lio/vertx/ext/stomp/Frame;
            pop
        26: .line 50
            goto 29
        27: .line 54
      StackMap locals:
      StackMap stack:
            aload 2 /* member */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            instanceof java.lang.String
            ifeq 29
        28: .line 55
            aload 1 /* obj */
            aload 2 /* member */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            checkcast java.lang.String
            invokevirtual io.vertx.ext.stomp.Frame.setTransaction:(Ljava/lang/String;)Lio/vertx/ext/stomp/Frame;
            pop
        end local 2 // java.util.Map$Entry member
        29: .line 17
      StackMap locals: java.lang.Iterable io.vertx.ext.stomp.Frame top java.util.Iterator
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
        30: .line 60
            return
        end local 1 // io.vertx.ext.stomp.Frame obj
        end local 0 // java.lang.Iterable json
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   31     0    json  Ljava/lang/Iterable<Ljava/util/Map$Entry<Ljava/lang/String;Ljava/lang/Object;>;>;
            0   31     1     obj  Lio/vertx/ext/stomp/Frame;
            2   29     2  member  Ljava/util/Map$Entry<Ljava/lang/String;Ljava/lang/Object;>;
    Signature: (Ljava/lang/Iterable<Ljava/util/Map$Entry<Ljava/lang/String;Ljava/lang/Object;>;>;Lio/vertx/ext/stomp/Frame;)V
    MethodParameters:
      Name  Flags
      json  
      obj   

  public static void toJson(io.vertx.ext.stomp.Frame, io.vertx.core.json.JsonObject);
    descriptor: (Lio/vertx/ext/stomp/Frame;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.ext.stomp.Frame obj
        start local 1 // io.vertx.core.json.JsonObject json
         0: .line 63
            aload 0 /* obj */
            aload 1 /* json */
            invokevirtual io.vertx.core.json.JsonObject.getMap:()Ljava/util/Map;
            invokestatic io.vertx.ext.stomp.FrameConverter.toJson:(Lio/vertx/ext/stomp/Frame;Ljava/util/Map;)V
         1: .line 64
            return
        end local 1 // io.vertx.core.json.JsonObject json
        end local 0 // io.vertx.ext.stomp.Frame obj
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0   obj  Lio/vertx/ext/stomp/Frame;
            0    2     1  json  Lio/vertx/core/json/JsonObject;
    MethodParameters:
      Name  Flags
      obj   
      json  

  public static void toJson(io.vertx.ext.stomp.Frame, java.util.Map<java.lang.String, java.lang.Object>);
    descriptor: (Lio/vertx/ext/stomp/Frame;Ljava/util/Map;)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // io.vertx.ext.stomp.Frame obj
        start local 1 // java.util.Map json
         0: .line 67
            aload 0 /* obj */
            invokevirtual io.vertx.ext.stomp.Frame.getAck:()Ljava/lang/String;
            ifnull 2
         1: .line 68
            aload 1 /* json */
            ldc "ack"
            aload 0 /* obj */
            invokevirtual io.vertx.ext.stomp.Frame.getAck:()Ljava/lang/String;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         2: .line 70
      StackMap locals:
      StackMap stack:
            aload 0 /* obj */
            invokevirtual io.vertx.ext.stomp.Frame.getBody:()Lio/vertx/core/buffer/Buffer;
            ifnull 4
         3: .line 71
            aload 1 /* json */
            ldc "body"
            getstatic io.vertx.core.json.impl.JsonUtil.BASE64_ENCODER:Ljava/util/Base64$Encoder;
            aload 0 /* obj */
            invokevirtual io.vertx.ext.stomp.Frame.getBody:()Lio/vertx/core/buffer/Buffer;
            invokeinterface io.vertx.core.buffer.Buffer.getBytes:()[B
            invokevirtual java.util.Base64$Encoder.encodeToString:([B)Ljava/lang/String;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         4: .line 73
      StackMap locals:
      StackMap stack:
            aload 0 /* obj */
            invokevirtual io.vertx.ext.stomp.Frame.getBodyAsString:()Ljava/lang/String;
            ifnull 6
         5: .line 74
            aload 1 /* json */
            ldc "bodyAsString"
            aload 0 /* obj */
            invokevirtual io.vertx.ext.stomp.Frame.getBodyAsString:()Ljava/lang/String;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         6: .line 76
      StackMap locals:
      StackMap stack:
            aload 0 /* obj */
            invokevirtual io.vertx.ext.stomp.Frame.getCommand:()Lio/vertx/ext/stomp/Frame$Command;
            ifnull 8
         7: .line 77
            aload 1 /* json */
            ldc "command"
            aload 0 /* obj */
            invokevirtual io.vertx.ext.stomp.Frame.getCommand:()Lio/vertx/ext/stomp/Frame$Command;
            invokevirtual io.vertx.ext.stomp.Frame$Command.name:()Ljava/lang/String;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         8: .line 79
      StackMap locals:
      StackMap stack:
            aload 0 /* obj */
            invokevirtual io.vertx.ext.stomp.Frame.getDestination:()Ljava/lang/String;
            ifnull 10
         9: .line 80
            aload 1 /* json */
            ldc "destination"
            aload 0 /* obj */
            invokevirtual io.vertx.ext.stomp.Frame.getDestination:()Ljava/lang/String;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        10: .line 82
      StackMap locals:
      StackMap stack:
            aload 0 /* obj */
            invokevirtual io.vertx.ext.stomp.Frame.getHeaders:()Ljava/util/Map;
            ifnull 14
        11: .line 83
            new io.vertx.core.json.JsonObject
            dup
            invokespecial io.vertx.core.json.JsonObject.<init>:()V
            astore 2 /* map */
        start local 2 // io.vertx.core.json.JsonObject map
        12: .line 84
            aload 0 /* obj */
            invokevirtual io.vertx.ext.stomp.Frame.getHeaders:()Ljava/util/Map;
            aload 2 /* map */
            invokedynamic accept(Lio/vertx/core/json/JsonObject;)Ljava/util/function/BiConsumer;
              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;Ljava/lang/Object;)V
                  io/vertx/ext/stomp/FrameConverter.lambda$1(Lio/vertx/core/json/JsonObject;Ljava/lang/String;Ljava/lang/String;)V (6)
                  (Ljava/lang/String;Ljava/lang/String;)V
            invokeinterface java.util.Map.forEach:(Ljava/util/function/BiConsumer;)V
        13: .line 85
            aload 1 /* json */
            ldc "headers"
            aload 2 /* map */
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 2 // io.vertx.core.json.JsonObject map
        14: .line 87
      StackMap locals:
      StackMap stack:
            aload 0 /* obj */
            invokevirtual io.vertx.ext.stomp.Frame.getId:()Ljava/lang/String;
            ifnull 16
        15: .line 88
            aload 1 /* json */
            ldc "id"
            aload 0 /* obj */
            invokevirtual io.vertx.ext.stomp.Frame.getId:()Ljava/lang/String;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        16: .line 90
      StackMap locals:
      StackMap stack:
            aload 0 /* obj */
            invokevirtual io.vertx.ext.stomp.Frame.getReceipt:()Ljava/lang/String;
            ifnull 18
        17: .line 91
            aload 1 /* json */
            ldc "receipt"
            aload 0 /* obj */
            invokevirtual io.vertx.ext.stomp.Frame.getReceipt:()Ljava/lang/String;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        18: .line 93
      StackMap locals:
      StackMap stack:
            aload 0 /* obj */
            invokevirtual io.vertx.ext.stomp.Frame.getTransaction:()Ljava/lang/String;
            ifnull 20
        19: .line 94
            aload 1 /* json */
            ldc "transaction"
            aload 0 /* obj */
            invokevirtual io.vertx.ext.stomp.Frame.getTransaction:()Ljava/lang/String;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        20: .line 96
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.util.Map json
        end local 0 // io.vertx.ext.stomp.Frame obj
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   21     0   obj  Lio/vertx/ext/stomp/Frame;
            0   21     1  json  Ljava/util/Map<Ljava/lang/String;Ljava/lang/Object;>;
           12   14     2   map  Lio/vertx/core/json/JsonObject;
    Signature: (Lio/vertx/ext/stomp/Frame;Ljava/util/Map<Ljava/lang/String;Ljava/lang/Object;>;)V
    MethodParameters:
      Name  Flags
      obj   
      json  

  private static void lambda$0(io.vertx.ext.stomp.Frame, java.util.Map$Entry);
    descriptor: (Lio/vertx/ext/stomp/Frame;Ljava/util/Map$Entry;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=2, args_size=2
        start local 1 // java.util.Map$Entry entry
         0: .line 41
            aload 1 /* entry */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            instanceof java.lang.String
            ifeq 2
         1: .line 42
            aload 0
            aload 1 /* entry */
            invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
            checkcast java.lang.String
            aload 1 /* entry */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            checkcast java.lang.String
            invokevirtual io.vertx.ext.stomp.Frame.addHeader:(Ljava/lang/String;Ljava/lang/String;)Lio/vertx/ext/stomp/Frame;
            pop
         2: .line 43
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.util.Map$Entry entry
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     1  entry  Ljava/util/Map$Entry<Ljava/lang/String;Ljava/lang/Object;>;

  private static void lambda$1(io.vertx.core.json.JsonObject, java.lang.String, java.lang.String);
    descriptor: (Lio/vertx/core/json/JsonObject;Ljava/lang/String;Ljava/lang/String;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=3, args_size=3
        start local 1 // java.lang.String key
        start local 2 // java.lang.String value
         0: .line 84
            aload 0
            aload 1 /* key */
            aload 2 /* value */
            invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Ljava/lang/Object;)Lio/vertx/core/json/JsonObject;
            return
        end local 2 // java.lang.String value
        end local 1 // java.lang.String key
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     1    key  Ljava/lang/String;
            0    1     2  value  Ljava/lang/String;
}
SourceFile: "FrameConverter.java"
InnerClasses:
  public final Command = io.vertx.ext.stomp.Frame$Command of io.vertx.ext.stomp.Frame
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
  public Decoder = java.util.Base64$Decoder of java.util.Base64
  public Encoder = java.util.Base64$Encoder of java.util.Base64
  public abstract Entry = java.util.Map$Entry of java.util.Map