class io.vertx.core.eventbus.impl.clustered.Serializer$SerializerQueue
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: io.vertx.core.eventbus.impl.clustered.Serializer$SerializerQueue
  super_class: java.lang.Object
{
  private final java.util.Queue<io.vertx.core.eventbus.impl.clustered.Serializer$SerializerQueue$SerializedTask<?>> tasks;
    descriptor: Ljava/util/Queue;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/Queue<Lio/vertx/core/eventbus/impl/clustered/Serializer$SerializerQueue$SerializedTask<*>;>;

  private final java.lang.String address;
    descriptor: Ljava/lang/String;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private boolean running;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private boolean closed;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  final io.vertx.core.eventbus.impl.clustered.Serializer this$0;
    descriptor: Lio/vertx/core/eventbus/impl/clustered/Serializer;
    flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC

  void <init>(io.vertx.core.eventbus.impl.clustered.Serializer, java.lang.String);
    descriptor: (Lio/vertx/core/eventbus/impl/clustered/Serializer;Ljava/lang/String;)V
    flags: (0x0000) 
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // io.vertx.core.eventbus.impl.clustered.Serializer$SerializerQueue this
        start local 2 // java.lang.String address
         0: .line 83
            aload 0 /* this */
            aload 1
            putfield io.vertx.core.eventbus.impl.clustered.Serializer$SerializerQueue.this$0:Lio/vertx/core/eventbus/impl/clustered/Serializer;
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 84
            aload 0 /* this */
            aload 2 /* address */
            putfield io.vertx.core.eventbus.impl.clustered.Serializer$SerializerQueue.address:Ljava/lang/String;
         2: .line 85
            aload 0 /* this */
            new java.util.LinkedList
            dup
            invokespecial java.util.LinkedList.<init>:()V
            putfield io.vertx.core.eventbus.impl.clustered.Serializer$SerializerQueue.tasks:Ljava/util/Queue;
         3: .line 86
            return
        end local 2 // java.lang.String address
        end local 0 // io.vertx.core.eventbus.impl.clustered.Serializer$SerializerQueue this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lio/vertx/core/eventbus/impl/clustered/Serializer$SerializerQueue;
            0    4     2  address  Ljava/lang/String;
    MethodParameters:
         Name  Flags
      this$0   final
      address  

  void checkPending();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // io.vertx.core.eventbus.impl.clustered.Serializer$SerializerQueue this
         0: .line 89
            aload 0 /* this */
            getfield io.vertx.core.eventbus.impl.clustered.Serializer$SerializerQueue.running:Z
            ifne 9
         1: .line 90
            aload 0 /* this */
            iconst_1
            putfield io.vertx.core.eventbus.impl.clustered.Serializer$SerializerQueue.running:Z
         2: .line 92
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.vertx.core.eventbus.impl.clustered.Serializer$SerializerQueue.tasks:Ljava/util/Queue;
            invokeinterface java.util.Queue.peek:()Ljava/lang/Object;
            checkcast io.vertx.core.eventbus.impl.clustered.Serializer$SerializerQueue$SerializedTask
            astore 1 /* task */
        start local 1 // io.vertx.core.eventbus.impl.clustered.Serializer$SerializerQueue$SerializedTask task
         3: .line 93
            aload 1 /* task */
            ifnull 7
         4: .line 94
            aload 1 /* task */
            invokevirtual io.vertx.core.eventbus.impl.clustered.Serializer$SerializerQueue$SerializedTask.process:()V
         5: .line 95
            aload 0 /* this */
            getfield io.vertx.core.eventbus.impl.clustered.Serializer$SerializerQueue.tasks:Ljava/util/Queue;
            invokeinterface java.util.Queue.peek:()Ljava/lang/Object;
            aload 1 /* task */
            if_acmpne 2
         6: .line 97
            goto 8
         7: .line 100
      StackMap locals: io.vertx.core.eventbus.impl.clustered.Serializer$SerializerQueue$SerializedTask
      StackMap stack:
            aload 0 /* this */
            getfield io.vertx.core.eventbus.impl.clustered.Serializer$SerializerQueue.this$0:Lio/vertx/core/eventbus/impl/clustered/Serializer;
            getfield io.vertx.core.eventbus.impl.clustered.Serializer.queues:Ljava/util/Map;
            aload 0 /* this */
            getfield io.vertx.core.eventbus.impl.clustered.Serializer$SerializerQueue.address:Ljava/lang/String;
            invokeinterface java.util.Map.remove:(Ljava/lang/Object;)Ljava/lang/Object;
            pop
        end local 1 // io.vertx.core.eventbus.impl.clustered.Serializer$SerializerQueue$SerializedTask task
         8: .line 104
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_0
            putfield io.vertx.core.eventbus.impl.clustered.Serializer$SerializerQueue.running:Z
         9: .line 106
      StackMap locals:
      StackMap stack:
            return
        end local 0 // io.vertx.core.eventbus.impl.clustered.Serializer$SerializerQueue this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   10     0  this  Lio/vertx/core/eventbus/impl/clustered/Serializer$SerializerQueue;
            3    8     1  task  Lio/vertx/core/eventbus/impl/clustered/Serializer$SerializerQueue$SerializedTask<*>;

  <U> void add(io.vertx.core.eventbus.Message<?>, java.util.function.BiConsumer<io.vertx.core.eventbus.Message<?>, io.vertx.core.Promise<U>>, io.vertx.core.Promise<U>);
    descriptor: (Lio/vertx/core/eventbus/Message;Ljava/util/function/BiConsumer;Lio/vertx/core/Promise;)V
    flags: (0x0000) 
    Code:
      stack=6, locals=6, args_size=4
        start local 0 // io.vertx.core.eventbus.impl.clustered.Serializer$SerializerQueue this
        start local 1 // io.vertx.core.eventbus.Message msg
        start local 2 // java.util.function.BiConsumer selectHandler
        start local 3 // io.vertx.core.Promise promise
         0: .line 109
            new io.vertx.core.eventbus.impl.clustered.Serializer$SerializerQueue$SerializedTask
            dup
            aload 0 /* this */
            aload 0 /* this */
            getfield io.vertx.core.eventbus.impl.clustered.Serializer$SerializerQueue.this$0:Lio/vertx/core/eventbus/impl/clustered/Serializer;
            getfield io.vertx.core.eventbus.impl.clustered.Serializer.context:Lio/vertx/core/impl/ContextInternal;
            aload 1 /* msg */
            aload 2 /* selectHandler */
            invokespecial io.vertx.core.eventbus.impl.clustered.Serializer$SerializerQueue$SerializedTask.<init>:(Lio/vertx/core/eventbus/impl/clustered/Serializer$SerializerQueue;Lio/vertx/core/impl/ContextInternal;Lio/vertx/core/eventbus/Message;Ljava/util/function/BiConsumer;)V
            astore 4 /* serializedTask */
        start local 4 // io.vertx.core.eventbus.impl.clustered.Serializer$SerializerQueue$SerializedTask serializedTask
         1: .line 110
            aload 4 /* serializedTask */
            getfield io.vertx.core.eventbus.impl.clustered.Serializer$SerializerQueue$SerializedTask.internalPromise:Lio/vertx/core/Promise;
            invokeinterface io.vertx.core.Promise.future:()Lio/vertx/core/Future;
            astore 5 /* fut */
        start local 5 // io.vertx.core.Future fut
         2: .line 111
            aload 5 /* fut */
            aload 3 /* promise */
            invokeinterface io.vertx.core.Future.onComplete:(Lio/vertx/core/Handler;)Lio/vertx/core/Future;
            pop
         3: .line 112
            aload 5 /* fut */
            aload 4 /* serializedTask */
            invokeinterface io.vertx.core.Future.onComplete:(Lio/vertx/core/Handler;)Lio/vertx/core/Future;
            pop
         4: .line 113
            aload 0 /* this */
            getfield io.vertx.core.eventbus.impl.clustered.Serializer$SerializerQueue.tasks:Ljava/util/Queue;
            aload 4 /* serializedTask */
            invokeinterface java.util.Queue.add:(Ljava/lang/Object;)Z
            pop
         5: .line 114
            aload 0 /* this */
            invokevirtual io.vertx.core.eventbus.impl.clustered.Serializer$SerializerQueue.checkPending:()V
         6: .line 115
            return
        end local 5 // io.vertx.core.Future fut
        end local 4 // io.vertx.core.eventbus.impl.clustered.Serializer$SerializerQueue$SerializedTask serializedTask
        end local 3 // io.vertx.core.Promise promise
        end local 2 // java.util.function.BiConsumer selectHandler
        end local 1 // io.vertx.core.eventbus.Message msg
        end local 0 // io.vertx.core.eventbus.impl.clustered.Serializer$SerializerQueue this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    7     0            this  Lio/vertx/core/eventbus/impl/clustered/Serializer$SerializerQueue;
            0    7     1             msg  Lio/vertx/core/eventbus/Message<*>;
            0    7     2   selectHandler  Ljava/util/function/BiConsumer<Lio/vertx/core/eventbus/Message<*>;Lio/vertx/core/Promise<TU;>;>;
            0    7     3         promise  Lio/vertx/core/Promise<TU;>;
            1    7     4  serializedTask  Lio/vertx/core/eventbus/impl/clustered/Serializer$SerializerQueue$SerializedTask<TU;>;
            2    7     5             fut  Lio/vertx/core/Future<TU;>;
    Signature: <U:Ljava/lang/Object;>(Lio/vertx/core/eventbus/Message<*>;Ljava/util/function/BiConsumer<Lio/vertx/core/eventbus/Message<*>;Lio/vertx/core/Promise<TU;>;>;Lio/vertx/core/Promise<TU;>;)V
    MethodParameters:
               Name  Flags
      msg            
      selectHandler  
      promise        

  void processed();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.vertx.core.eventbus.impl.clustered.Serializer$SerializerQueue this
         0: .line 118
            aload 0 /* this */
            getfield io.vertx.core.eventbus.impl.clustered.Serializer$SerializerQueue.closed:Z
            ifne 3
         1: .line 119
            aload 0 /* this */
            getfield io.vertx.core.eventbus.impl.clustered.Serializer$SerializerQueue.tasks:Ljava/util/Queue;
            invokeinterface java.util.Queue.poll:()Ljava/lang/Object;
            pop
         2: .line 120
            aload 0 /* this */
            invokevirtual io.vertx.core.eventbus.impl.clustered.Serializer$SerializerQueue.checkPending:()V
         3: .line 122
      StackMap locals:
      StackMap stack:
            return
        end local 0 // io.vertx.core.eventbus.impl.clustered.Serializer$SerializerQueue this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lio/vertx/core/eventbus/impl/clustered/Serializer$SerializerQueue;

  void close();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // io.vertx.core.eventbus.impl.clustered.Serializer$SerializerQueue this
         0: .line 125
            aload 0 /* this */
            iconst_1
            putfield io.vertx.core.eventbus.impl.clustered.Serializer$SerializerQueue.closed:Z
         1: .line 126
            goto 3
         2: .line 127
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.vertx.core.eventbus.impl.clustered.Serializer$SerializerQueue.tasks:Ljava/util/Queue;
            invokeinterface java.util.Queue.remove:()Ljava/lang/Object;
            checkcast io.vertx.core.eventbus.impl.clustered.Serializer$SerializerQueue$SerializedTask
            getfield io.vertx.core.eventbus.impl.clustered.Serializer$SerializerQueue$SerializedTask.internalPromise:Lio/vertx/core/Promise;
            ldc "Context is closing"
            invokeinterface io.vertx.core.Promise.tryFail:(Ljava/lang/String;)Z
            pop
         3: .line 126
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.vertx.core.eventbus.impl.clustered.Serializer$SerializerQueue.tasks:Ljava/util/Queue;
            invokeinterface java.util.Queue.isEmpty:()Z
            ifeq 2
         4: .line 129
            return
        end local 0 // io.vertx.core.eventbus.impl.clustered.Serializer$SerializerQueue this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lio/vertx/core/eventbus/impl/clustered/Serializer$SerializerQueue;
}
SourceFile: "Serializer.java"
NestHost: io.vertx.core.eventbus.impl.clustered.Serializer
InnerClasses:
  private SerializerQueue = io.vertx.core.eventbus.impl.clustered.Serializer$SerializerQueue of io.vertx.core.eventbus.impl.clustered.Serializer
  private SerializedTask = io.vertx.core.eventbus.impl.clustered.Serializer$SerializerQueue$SerializedTask of io.vertx.core.eventbus.impl.clustered.Serializer$SerializerQueue