public class io.vertx.redis.impl.RedisSentinelClientImpl implements io.vertx.redis.sentinel.RedisSentinel
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: io.vertx.redis.impl.RedisSentinelClientImpl
  super_class: java.lang.Object
{
  private final io.vertx.core.Vertx vertx;
    descriptor: Lio/vertx/core/Vertx;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final io.vertx.redis.RedisOptions options;
    descriptor: Lio/vertx/redis/RedisOptions;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.util.concurrent.atomic.AtomicReference<java.util.concurrent.CompletableFuture<io.vertx.redis.client.Redis>> redis;
    descriptor: Ljava/util/concurrent/atomic/AtomicReference;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/concurrent/atomic/AtomicReference<Ljava/util/concurrent/CompletableFuture<Lio/vertx/redis/client/Redis;>;>;

  private static volatile int[] $SWITCH_TABLE$io$vertx$redis$client$ResponseType;
    descriptor: [I
    flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC

  public void <init>(io.vertx.core.Vertx, io.vertx.redis.RedisOptions);
    descriptor: (Lio/vertx/core/Vertx;Lio/vertx/redis/RedisOptions;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // io.vertx.redis.impl.RedisSentinelClientImpl this
        start local 1 // io.vertx.core.Vertx vertx
        start local 2 // io.vertx.redis.RedisOptions options
         0: .line 43
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 29
            aload 0 /* this */
            new java.util.concurrent.atomic.AtomicReference
            dup
            invokespecial java.util.concurrent.atomic.AtomicReference.<init>:()V
            putfield io.vertx.redis.impl.RedisSentinelClientImpl.redis:Ljava/util/concurrent/atomic/AtomicReference;
         2: .line 44
            aload 0 /* this */
            aload 1 /* vertx */
            putfield io.vertx.redis.impl.RedisSentinelClientImpl.vertx:Lio/vertx/core/Vertx;
         3: .line 45
            aload 0 /* this */
            aload 2 /* options */
            putfield io.vertx.redis.impl.RedisSentinelClientImpl.options:Lio/vertx/redis/RedisOptions;
         4: .line 46
            return
        end local 2 // io.vertx.redis.RedisOptions options
        end local 1 // io.vertx.core.Vertx vertx
        end local 0 // io.vertx.redis.impl.RedisSentinelClientImpl this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Lio/vertx/redis/impl/RedisSentinelClientImpl;
            0    5     1    vertx  Lio/vertx/core/Vertx;
            0    5     2  options  Lio/vertx/redis/RedisOptions;
    MethodParameters:
         Name  Flags
      vertx    
      options  

  private static java.util.List<?> toPayload([]);
    descriptor: ([Ljava/lang/Object;)Ljava/util/List;
    flags: (0x008a) ACC_PRIVATE, ACC_STATIC, ACC_VARARGS
    Code:
      stack=3, locals=9, args_size=1
        start local 0 // java.lang.Object[] parameters
         0: .line 58
            new java.util.ArrayList
            dup
            aload 0 /* parameters */
            arraylength
            invokespecial java.util.ArrayList.<init>:(I)V
            astore 1 /* result */
        start local 1 // java.util.List result
         1: .line 60
            aload 0 /* parameters */
            dup
            astore 5
            arraylength
            istore 4
            iconst_0
            istore 3
            goto 26
      StackMap locals: java.lang.Object[] java.util.List top int int java.lang.Object[]
      StackMap stack:
         2: aload 5
            iload 3
            aaload
            astore 2 /* param */
        start local 2 // java.lang.Object param
         3: .line 62
            aload 2 /* param */
            instanceof io.vertx.core.json.JsonArray
            ifeq 5
         4: .line 63
            aload 2 /* param */
            checkcast io.vertx.core.json.JsonArray
            invokevirtual io.vertx.core.json.JsonArray.getList:()Ljava/util/List;
            astore 2 /* param */
         5: .line 66
      StackMap locals: java.lang.Object[] java.util.List java.lang.Object int int java.lang.Object[]
      StackMap stack:
            aload 2 /* param */
            instanceof io.vertx.core.json.JsonObject
            ifeq 7
         6: .line 67
            aload 2 /* param */
            checkcast io.vertx.core.json.JsonObject
            invokevirtual io.vertx.core.json.JsonObject.getMap:()Ljava/util/Map;
            astore 2 /* param */
         7: .line 70
      StackMap locals:
      StackMap stack:
            aload 2 /* param */
            instanceof java.util.Collection
            ifeq 10
         8: .line 71
            aload 2 /* param */
            checkcast java.util.Collection
            invokeinterface java.util.Collection.stream:()Ljava/util/stream/Stream;
            invokedynamic test()Ljava/util/function/Predicate;
              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;)Z
                  java/util/Objects.nonNull(Ljava/lang/Object;)Z (6)
                  (Ljava/lang/Object;)Z
            invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
            aload 1 /* result */
            dup
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            pop
            invokedynamic accept(Ljava/util/List;)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
                  java/util/List.add(Ljava/lang/Object;)Z (9 itf)
                  (Ljava/lang/Object;)V
            invokeinterface java.util.stream.Stream.forEach:(Ljava/util/function/Consumer;)V
         9: .line 72
            goto 25
      StackMap locals:
      StackMap stack:
        10: aload 2 /* param */
            instanceof java.util.Map
            ifeq 17
        11: .line 73
            aload 2 /* param */
            checkcast java.util.Map
            invokeinterface java.util.Map.entrySet:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 8
            goto 15
      StackMap locals: java.lang.Object[] java.util.List java.lang.Object int int java.lang.Object[] top top java.util.Iterator
      StackMap stack:
        12: aload 8
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.util.Map$Entry
            astore 7 /* pair */
        start local 7 // java.util.Map$Entry pair
        13: .line 74
            aload 1 /* result */
            aload 7 /* pair */
            invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        14: .line 75
            aload 1 /* result */
            aload 7 /* pair */
            invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 7 // java.util.Map$Entry pair
        15: .line 73
      StackMap locals:
      StackMap stack:
            aload 8
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 12
        16: .line 77
            goto 25
      StackMap locals: java.lang.Object[] java.util.List java.lang.Object int int java.lang.Object[]
      StackMap stack:
        17: aload 2 /* param */
            instanceof java.util.stream.Stream
            ifeq 20
        18: .line 78
            aload 2 /* param */
            checkcast java.util.stream.Stream
            aload 1 /* result */
            invokedynamic accept(Ljava/util/List;)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/redis/impl/RedisSentinelClientImpl.lambda$2(Ljava/util/List;Ljava/lang/Object;)V (6)
                  (Ljava/lang/Object;)V
            invokeinterface java.util.stream.Stream.forEach:(Ljava/util/function/Consumer;)V
        19: .line 85
            goto 25
      StackMap locals:
      StackMap stack:
        20: aload 2 /* param */
            instanceof io.vertx.core.buffer.Buffer
            ifeq 23
        21: .line 86
            aload 1 /* result */
            aload 2 /* param */
            checkcast io.vertx.core.buffer.Buffer
            invokeinterface io.vertx.core.buffer.Buffer.getBytes:()[B
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        22: .line 87
            goto 25
      StackMap locals:
      StackMap stack:
        23: aload 2 /* param */
            ifnull 25
        24: .line 88
            aload 1 /* result */
            aload 2 /* param */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 2 // java.lang.Object param
        25: .line 60
      StackMap locals: java.lang.Object[] java.util.List top int int java.lang.Object[]
      StackMap stack:
            iinc 3 1
      StackMap locals:
      StackMap stack:
        26: iload 3
            iload 4
            if_icmplt 2
        27: .line 91
            aload 1 /* result */
            areturn
        end local 1 // java.util.List result
        end local 0 // java.lang.Object[] parameters
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   28     0  parameters  [Ljava/lang/Object;
            1   28     1      result  Ljava/util/List<Ljava/lang/Object;>;
            3   25     2       param  Ljava/lang/Object;
           13   15     7        pair  Ljava/util/Map$Entry<**>;
    Signature: ([Ljava/lang/Object;)Ljava/util/List<*>;
    MethodParameters:
            Name  Flags
      parameters  

  private void send(io.vertx.redis.client.Command, java.util.List, io.vertx.core.Handler<io.vertx.core.AsyncResult<io.vertx.redis.client.Response>>);
    descriptor: (Lio/vertx/redis/client/Command;Ljava/util/List;Lio/vertx/core/Handler;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=7, args_size=4
        start local 0 // io.vertx.redis.impl.RedisSentinelClientImpl this
        start local 1 // io.vertx.redis.client.Command command
        start local 2 // java.util.List arguments
        start local 3 // io.vertx.core.Handler handler
         0: .line 95
            aload 1 /* command */
            invokestatic io.vertx.redis.client.Request.cmd:(Lio/vertx/redis/client/Command;)Lio/vertx/redis/client/Request;
            astore 4 /* req */
        start local 4 // io.vertx.redis.client.Request req
         1: .line 97
            aload 2 /* arguments */
            ifnull 9
         2: .line 98
            aload 2 /* arguments */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 6
            goto 8
      StackMap locals: io.vertx.redis.impl.RedisSentinelClientImpl io.vertx.redis.client.Command java.util.List io.vertx.core.Handler io.vertx.redis.client.Request top java.util.Iterator
      StackMap stack:
         3: aload 6
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            astore 5 /* o */
        start local 5 // java.lang.Object o
         4: .line 99
            aload 5 /* o */
            ifnonnull 7
         5: .line 100
            aload 4 /* req */
            invokeinterface io.vertx.redis.client.Request.nullArg:()Lio/vertx/redis/client/Request;
            pop
         6: .line 101
            goto 8
         7: .line 102
      StackMap locals: io.vertx.redis.impl.RedisSentinelClientImpl io.vertx.redis.client.Command java.util.List io.vertx.core.Handler io.vertx.redis.client.Request java.lang.Object java.util.Iterator
      StackMap stack:
            aload 4 /* req */
            aload 5 /* o */
            invokevirtual java.lang.Object.toString:()Ljava/lang/String;
            invokeinterface io.vertx.redis.client.Request.arg:(Ljava/lang/String;)Lio/vertx/redis/client/Request;
            pop
        end local 5 // java.lang.Object o
         8: .line 98
      StackMap locals: io.vertx.redis.impl.RedisSentinelClientImpl io.vertx.redis.client.Command java.util.List io.vertx.core.Handler io.vertx.redis.client.Request top java.util.Iterator
      StackMap stack:
            aload 6
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
         9: .line 107
      StackMap locals: io.vertx.redis.impl.RedisSentinelClientImpl io.vertx.redis.client.Command java.util.List io.vertx.core.Handler io.vertx.redis.client.Request
      StackMap stack:
            aload 0 /* this */
            getfield io.vertx.redis.impl.RedisSentinelClientImpl.redis:Ljava/util/concurrent/atomic/AtomicReference;
            invokevirtual java.util.concurrent.atomic.AtomicReference.get:()Ljava/lang/Object;
            checkcast java.util.concurrent.CompletableFuture
            astore 5 /* fut */
        start local 5 // java.util.concurrent.CompletableFuture fut
        10: .line 108
            aload 5 /* fut */
            ifnonnull 25
        11: .line 109
            new java.util.concurrent.CompletableFuture
            dup
            invokespecial java.util.concurrent.CompletableFuture.<init>:()V
            astore 6 /* f */
        start local 6 // java.util.concurrent.CompletableFuture f
        12: .line 110
            aload 0 /* this */
            getfield io.vertx.redis.impl.RedisSentinelClientImpl.redis:Ljava/util/concurrent/atomic/AtomicReference;
            aconst_null
            aload 6 /* f */
            invokevirtual java.util.concurrent.atomic.AtomicReference.compareAndSet:(Ljava/lang/Object;Ljava/lang/Object;)Z
            ifeq 24
        13: .line 111
            aload 6 /* f */
            astore 5 /* fut */
        14: .line 112
            aload 0 /* this */
            getfield io.vertx.redis.impl.RedisSentinelClientImpl.vertx:Lio/vertx/core/Vertx;
            new io.vertx.redis.client.RedisOptions
            dup
            invokespecial io.vertx.redis.client.RedisOptions.<init>:()V
        15: .line 113
            aload 0 /* this */
            getfield io.vertx.redis.impl.RedisSentinelClientImpl.options:Lio/vertx/redis/RedisOptions;
            invokevirtual io.vertx.redis.client.RedisOptions.setNetClientOptions:(Lio/vertx/core/net/NetClientOptions;)Lio/vertx/redis/client/RedisOptions;
        16: .line 114
            aload 0 /* this */
            getfield io.vertx.redis.impl.RedisSentinelClientImpl.options:Lio/vertx/redis/RedisOptions;
            invokevirtual io.vertx.redis.RedisOptions.isDomainSocket:()Z
            ifeq 17
            aload 0 /* this */
            getfield io.vertx.redis.impl.RedisSentinelClientImpl.options:Lio/vertx/redis/RedisOptions;
            invokevirtual io.vertx.redis.RedisOptions.getDomainSocketAddress:()Ljava/lang/String;
            invokestatic io.vertx.core.net.SocketAddress.domainSocketAddress:(Ljava/lang/String;)Lio/vertx/core/net/SocketAddress;
            goto 18
      StackMap locals: io.vertx.redis.impl.RedisSentinelClientImpl io.vertx.redis.client.Command java.util.List io.vertx.core.Handler io.vertx.redis.client.Request java.util.concurrent.CompletableFuture java.util.concurrent.CompletableFuture
      StackMap stack: io.vertx.core.Vertx io.vertx.redis.client.RedisOptions
        17: aload 0 /* this */
            getfield io.vertx.redis.impl.RedisSentinelClientImpl.options:Lio/vertx/redis/RedisOptions;
            invokevirtual io.vertx.redis.RedisOptions.getPort:()I
            aload 0 /* this */
            getfield io.vertx.redis.impl.RedisSentinelClientImpl.options:Lio/vertx/redis/RedisOptions;
            invokevirtual io.vertx.redis.RedisOptions.getHost:()Ljava/lang/String;
            invokestatic io.vertx.core.net.SocketAddress.inetSocketAddress:(ILjava/lang/String;)Lio/vertx/core/net/SocketAddress;
      StackMap locals: io.vertx.redis.impl.RedisSentinelClientImpl io.vertx.redis.client.Command java.util.List io.vertx.core.Handler io.vertx.redis.client.Request java.util.concurrent.CompletableFuture java.util.concurrent.CompletableFuture
      StackMap stack: io.vertx.core.Vertx io.vertx.redis.client.RedisOptions io.vertx.core.net.SocketAddress
        18: invokevirtual io.vertx.redis.client.RedisOptions.setEndpoint:(Lio/vertx/core/net/SocketAddress;)Lio/vertx/redis/client/RedisOptions;
        19: .line 115
            aload 0 /* this */
            getfield io.vertx.redis.impl.RedisSentinelClientImpl.options:Lio/vertx/redis/RedisOptions;
            invokevirtual io.vertx.redis.RedisOptions.getAuth:()Ljava/lang/String;
            invokevirtual io.vertx.redis.client.RedisOptions.setPassword:(Ljava/lang/String;)Lio/vertx/redis/client/RedisOptions;
        20: .line 116
            aload 0 /* this */
            getfield io.vertx.redis.impl.RedisSentinelClientImpl.options:Lio/vertx/redis/RedisOptions;
            invokevirtual io.vertx.redis.RedisOptions.getSelect:()Ljava/lang/Integer;
            invokevirtual io.vertx.redis.client.RedisOptions.setSelect:(Ljava/lang/Integer;)Lio/vertx/redis/client/RedisOptions;
        21: .line 112
            invokestatic io.vertx.redis.client.Redis.createClient:(Lio/vertx/core/Vertx;Lio/vertx/redis/client/RedisOptions;)Lio/vertx/redis/client/Redis;
        22: .line 116
            aload 6 /* f */
            invokedynamic handle(Ljava/util/concurrent/CompletableFuture;)Lio/vertx/core/Handler;
              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/redis/impl/RedisSentinelClientImpl.lambda$3(Ljava/util/concurrent/CompletableFuture;Lio/vertx/core/AsyncResult;)V (6)
                  (Lio/vertx/core/AsyncResult;)V
            invokeinterface io.vertx.redis.client.Redis.connect:(Lio/vertx/core/Handler;)Lio/vertx/redis/client/Redis;
            pop
        23: .line 123
            goto 25
        24: .line 124
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.vertx.redis.impl.RedisSentinelClientImpl.redis:Ljava/util/concurrent/atomic/AtomicReference;
            invokevirtual java.util.concurrent.atomic.AtomicReference.get:()Ljava/lang/Object;
            checkcast java.util.concurrent.CompletableFuture
            astore 5 /* fut */
        end local 6 // java.util.concurrent.CompletableFuture f
        25: .line 128
      StackMap locals:
      StackMap stack:
            aload 5 /* fut */
            aload 4 /* req */
            aload 3 /* handler */
            invokedynamic accept(Lio/vertx/redis/client/Request;Lio/vertx/core/Handler;)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/redis/impl/RedisSentinelClientImpl.lambda$4(Lio/vertx/redis/client/Request;Lio/vertx/core/Handler;Lio/vertx/redis/client/Redis;Ljava/lang/Throwable;)V (6)
                  (Lio/vertx/redis/client/Redis;Ljava/lang/Throwable;)V
            invokevirtual java.util.concurrent.CompletableFuture.whenComplete:(Ljava/util/function/BiConsumer;)Ljava/util/concurrent/CompletableFuture;
            pop
        26: .line 135
            return
        end local 5 // java.util.concurrent.CompletableFuture fut
        end local 4 // io.vertx.redis.client.Request req
        end local 3 // io.vertx.core.Handler handler
        end local 2 // java.util.List arguments
        end local 1 // io.vertx.redis.client.Command command
        end local 0 // io.vertx.redis.impl.RedisSentinelClientImpl this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   27     0       this  Lio/vertx/redis/impl/RedisSentinelClientImpl;
            0   27     1    command  Lio/vertx/redis/client/Command;
            0   27     2  arguments  Ljava/util/List;
            0   27     3    handler  Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Lio/vertx/redis/client/Response;>;>;
            1   27     4        req  Lio/vertx/redis/client/Request;
            4    8     5          o  Ljava/lang/Object;
           10   27     5        fut  Ljava/util/concurrent/CompletableFuture<Lio/vertx/redis/client/Redis;>;
           12   25     6          f  Ljava/util/concurrent/CompletableFuture;
    Signature: (Lio/vertx/redis/client/Command;Ljava/util/List;Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Lio/vertx/redis/client/Response;>;>;)V
    MethodParameters:
           Name  Flags
      command    
      arguments  
      handler    

  private void sendString(io.vertx.redis.client.Command, java.util.List, io.vertx.core.Handler<io.vertx.core.AsyncResult<java.lang.String>>);
    descriptor: (Lio/vertx/redis/client/Command;Ljava/util/List;Lio/vertx/core/Handler;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // io.vertx.redis.impl.RedisSentinelClientImpl this
        start local 1 // io.vertx.redis.client.Command command
        start local 2 // java.util.List arguments
        start local 3 // io.vertx.core.Handler handler
         0: .line 138
            aload 0 /* this */
            aload 1 /* command */
            aload 2 /* arguments */
            aload 3 /* handler */
            invokedynamic handle(Lio/vertx/core/Handler;)Lio/vertx/core/Handler;
              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/redis/impl/RedisSentinelClientImpl.lambda$5(Lio/vertx/core/Handler;Lio/vertx/core/AsyncResult;)V (6)
                  (Lio/vertx/core/AsyncResult;)V
            invokevirtual io.vertx.redis.impl.RedisSentinelClientImpl.send:(Lio/vertx/redis/client/Command;Ljava/util/List;Lio/vertx/core/Handler;)V
         1: .line 145
            return
        end local 3 // io.vertx.core.Handler handler
        end local 2 // java.util.List arguments
        end local 1 // io.vertx.redis.client.Command command
        end local 0 // io.vertx.redis.impl.RedisSentinelClientImpl this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lio/vertx/redis/impl/RedisSentinelClientImpl;
            0    2     1    command  Lio/vertx/redis/client/Command;
            0    2     2  arguments  Ljava/util/List;
            0    2     3    handler  Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Ljava/lang/String;>;>;
    Signature: (Lio/vertx/redis/client/Command;Ljava/util/List;Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Ljava/lang/String;>;>;)V
    MethodParameters:
           Name  Flags
      command    
      arguments  
      handler    

  private static io.vertx.core.json.JsonArray toJsonArray(io.vertx.redis.client.Response);
    descriptor: (Lio/vertx/redis/client/Response;)Lio/vertx/core/json/JsonArray;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=4, args_size=1
        start local 0 // io.vertx.redis.client.Response response
         0: .line 148
            new io.vertx.core.json.JsonArray
            dup
            invokespecial io.vertx.core.json.JsonArray.<init>:()V
            astore 1 /* json */
        start local 1 // io.vertx.core.json.JsonArray json
         1: .line 149
            aload 0 /* response */
            invokeinterface io.vertx.redis.client.Response.iterator:()Ljava/util/Iterator;
            astore 3
            goto 9
      StackMap locals: io.vertx.redis.client.Response io.vertx.core.json.JsonArray top java.util.Iterator
      StackMap stack:
         2: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast io.vertx.redis.client.Response
            astore 2 /* r */
        start local 2 // io.vertx.redis.client.Response r
         3: .line 150
            invokestatic io.vertx.redis.impl.RedisSentinelClientImpl.$SWITCH_TABLE$io$vertx$redis$client$ResponseType:()[I
            aload 2 /* r */
            invokeinterface io.vertx.redis.client.Response.type:()Lio/vertx/redis/client/ResponseType;
            invokevirtual io.vertx.redis.client.ResponseType.ordinal:()I
            iaload
            tableswitch { // 1 - 5
                    1: 6
                    2: 9
                    3: 4
                    4: 6
                    5: 8
              default: 9
          }
         4: .line 152
      StackMap locals: io.vertx.redis.client.Response io.vertx.core.json.JsonArray io.vertx.redis.client.Response java.util.Iterator
      StackMap stack:
            aload 1 /* json */
            aload 2 /* r */
            invokeinterface io.vertx.redis.client.Response.toLong:()Ljava/lang/Long;
            invokevirtual io.vertx.core.json.JsonArray.add:(Ljava/lang/Long;)Lio/vertx/core/json/JsonArray;
            pop
         5: .line 153
            goto 9
         6: .line 156
      StackMap locals:
      StackMap stack:
            aload 1 /* json */
            aload 2 /* r */
            invokeinterface io.vertx.redis.client.Response.toString:()Ljava/lang/String;
            invokevirtual io.vertx.core.json.JsonArray.add:(Ljava/lang/String;)Lio/vertx/core/json/JsonArray;
            pop
         7: .line 157
            goto 9
         8: .line 159
      StackMap locals:
      StackMap stack:
            aload 1 /* json */
            aload 2 /* r */
            invokestatic io.vertx.redis.impl.RedisSentinelClientImpl.toJsonArray:(Lio/vertx/redis/client/Response;)Lio/vertx/core/json/JsonArray;
            invokevirtual io.vertx.core.json.JsonArray.add:(Lio/vertx/core/json/JsonArray;)Lio/vertx/core/json/JsonArray;
            pop
        end local 2 // io.vertx.redis.client.Response r
         9: .line 149
      StackMap locals: io.vertx.redis.client.Response io.vertx.core.json.JsonArray top java.util.Iterator
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
        10: .line 164
            aload 1 /* json */
            areturn
        end local 1 // io.vertx.core.json.JsonArray json
        end local 0 // io.vertx.redis.client.Response response
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   11     0  response  Lio/vertx/redis/client/Response;
            1   11     1      json  Lio/vertx/core/json/JsonArray;
            3    9     2         r  Lio/vertx/redis/client/Response;
    MethodParameters:
          Name  Flags
      response  

  private void sendJsonArray(io.vertx.redis.client.Command, java.util.List, io.vertx.core.Handler<io.vertx.core.AsyncResult<io.vertx.core.json.JsonArray>>);
    descriptor: (Lio/vertx/redis/client/Command;Ljava/util/List;Lio/vertx/core/Handler;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // io.vertx.redis.impl.RedisSentinelClientImpl this
        start local 1 // io.vertx.redis.client.Command command
        start local 2 // java.util.List arguments
        start local 3 // io.vertx.core.Handler handler
         0: .line 168
            aload 0 /* this */
            aload 1 /* command */
            aload 2 /* arguments */
            aload 3 /* handler */
            invokedynamic handle(Lio/vertx/core/Handler;)Lio/vertx/core/Handler;
              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/redis/impl/RedisSentinelClientImpl.lambda$6(Lio/vertx/core/Handler;Lio/vertx/core/AsyncResult;)V (6)
                  (Lio/vertx/core/AsyncResult;)V
            invokevirtual io.vertx.redis.impl.RedisSentinelClientImpl.send:(Lio/vertx/redis/client/Command;Ljava/util/List;Lio/vertx/core/Handler;)V
         1: .line 175
            return
        end local 3 // io.vertx.core.Handler handler
        end local 2 // java.util.List arguments
        end local 1 // io.vertx.redis.client.Command command
        end local 0 // io.vertx.redis.impl.RedisSentinelClientImpl this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lio/vertx/redis/impl/RedisSentinelClientImpl;
            0    2     1    command  Lio/vertx/redis/client/Command;
            0    2     2  arguments  Ljava/util/List;
            0    2     3    handler  Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Lio/vertx/core/json/JsonArray;>;>;
    Signature: (Lio/vertx/redis/client/Command;Ljava/util/List;Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Lio/vertx/core/json/JsonArray;>;>;)V
    MethodParameters:
           Name  Flags
      command    
      arguments  
      handler    

  private void sendVoid(io.vertx.redis.client.Command, java.util.List, io.vertx.core.Handler<io.vertx.core.AsyncResult<java.lang.Void>>);
    descriptor: (Lio/vertx/redis/client/Command;Ljava/util/List;Lio/vertx/core/Handler;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // io.vertx.redis.impl.RedisSentinelClientImpl this
        start local 1 // io.vertx.redis.client.Command command
        start local 2 // java.util.List arguments
        start local 3 // io.vertx.core.Handler handler
         0: .line 178
            aload 0 /* this */
            aload 1 /* command */
            aload 2 /* arguments */
            aload 3 /* handler */
            invokedynamic handle(Lio/vertx/core/Handler;)Lio/vertx/core/Handler;
              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/redis/impl/RedisSentinelClientImpl.lambda$7(Lio/vertx/core/Handler;Lio/vertx/core/AsyncResult;)V (6)
                  (Lio/vertx/core/AsyncResult;)V
            invokevirtual io.vertx.redis.impl.RedisSentinelClientImpl.send:(Lio/vertx/redis/client/Command;Ljava/util/List;Lio/vertx/core/Handler;)V
         1: .line 185
            return
        end local 3 // io.vertx.core.Handler handler
        end local 2 // java.util.List arguments
        end local 1 // io.vertx.redis.client.Command command
        end local 0 // io.vertx.redis.impl.RedisSentinelClientImpl this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0       this  Lio/vertx/redis/impl/RedisSentinelClientImpl;
            0    2     1    command  Lio/vertx/redis/client/Command;
            0    2     2  arguments  Ljava/util/List;
            0    2     3    handler  Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Ljava/lang/Void;>;>;
    Signature: (Lio/vertx/redis/client/Command;Ljava/util/List;Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Ljava/lang/Void;>;>;)V
    MethodParameters:
           Name  Flags
      command    
      arguments  
      handler    

  public void close(io.vertx.core.Handler<io.vertx.core.AsyncResult<java.lang.Void>>);
    descriptor: (Lio/vertx/core/Handler;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // io.vertx.redis.impl.RedisSentinelClientImpl this
        start local 1 // io.vertx.core.Handler handler
         0: .line 189
            aload 0 /* this */
            getfield io.vertx.redis.impl.RedisSentinelClientImpl.redis:Ljava/util/concurrent/atomic/AtomicReference;
            aconst_null
            invokevirtual java.util.concurrent.atomic.AtomicReference.getAndSet:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast java.util.concurrent.CompletableFuture
            astore 2 /* prev */
        start local 2 // java.util.concurrent.CompletableFuture prev
         1: .line 190
            aload 2 /* prev */
            ifnull 3
         2: .line 191
            aload 2 /* prev */
            aload 1 /* handler */
            invokedynamic accept(Lio/vertx/core/Handler;)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/redis/impl/RedisSentinelClientImpl.lambda$8(Lio/vertx/core/Handler;Lio/vertx/redis/client/Redis;Ljava/lang/Throwable;)V (6)
                  (Lio/vertx/redis/client/Redis;Ljava/lang/Throwable;)V
            invokevirtual java.util.concurrent.CompletableFuture.whenComplete:(Ljava/util/function/BiConsumer;)Ljava/util/concurrent/CompletableFuture;
            pop
         3: .line 204
      StackMap locals: java.util.concurrent.CompletableFuture
      StackMap stack:
            return
        end local 2 // java.util.concurrent.CompletableFuture prev
        end local 1 // io.vertx.core.Handler handler
        end local 0 // io.vertx.redis.impl.RedisSentinelClientImpl this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lio/vertx/redis/impl/RedisSentinelClientImpl;
            0    4     1  handler  Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Ljava/lang/Void;>;>;
            1    4     2     prev  Ljava/util/concurrent/CompletableFuture<Lio/vertx/redis/client/Redis;>;
    Signature: (Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Ljava/lang/Void;>;>;)V
    MethodParameters:
         Name  Flags
      handler  

  public io.vertx.redis.sentinel.RedisSentinel masters(io.vertx.core.Handler<io.vertx.core.AsyncResult<io.vertx.core.json.JsonArray>>);
    descriptor: (Lio/vertx/core/Handler;)Lio/vertx/redis/sentinel/RedisSentinel;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // io.vertx.redis.impl.RedisSentinelClientImpl this
        start local 1 // io.vertx.core.Handler handler
         0: .line 208
            aload 0 /* this */
            getstatic io.vertx.redis.client.Command.SENTINEL:Lio/vertx/redis/client/Command;
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            ldc "MASTERS"
            aastore
            invokestatic io.vertx.redis.impl.RedisSentinelClientImpl.toPayload:([Ljava/lang/Object;)Ljava/util/List;
            aload 1 /* handler */
            invokevirtual io.vertx.redis.impl.RedisSentinelClientImpl.sendJsonArray:(Lio/vertx/redis/client/Command;Ljava/util/List;Lio/vertx/core/Handler;)V
         1: .line 209
            aload 0 /* this */
            areturn
        end local 1 // io.vertx.core.Handler handler
        end local 0 // io.vertx.redis.impl.RedisSentinelClientImpl this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lio/vertx/redis/impl/RedisSentinelClientImpl;
            0    2     1  handler  Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Lio/vertx/core/json/JsonArray;>;>;
    Signature: (Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Lio/vertx/core/json/JsonArray;>;>;)Lio/vertx/redis/sentinel/RedisSentinel;
    MethodParameters:
         Name  Flags
      handler  

  public io.vertx.redis.sentinel.RedisSentinel master(java.lang.String, io.vertx.core.Handler<io.vertx.core.AsyncResult<io.vertx.core.json.JsonArray>>);
    descriptor: (Ljava/lang/String;Lio/vertx/core/Handler;)Lio/vertx/redis/sentinel/RedisSentinel;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // io.vertx.redis.impl.RedisSentinelClientImpl this
        start local 1 // java.lang.String name
        start local 2 // io.vertx.core.Handler handler
         0: .line 214
            aload 0 /* this */
            getstatic io.vertx.redis.client.Command.SENTINEL:Lio/vertx/redis/client/Command;
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            ldc "MASTER"
            aastore
            dup
            iconst_1
            aload 1 /* name */
            aastore
            invokestatic io.vertx.redis.impl.RedisSentinelClientImpl.toPayload:([Ljava/lang/Object;)Ljava/util/List;
            aload 2 /* handler */
            invokevirtual io.vertx.redis.impl.RedisSentinelClientImpl.sendJsonArray:(Lio/vertx/redis/client/Command;Ljava/util/List;Lio/vertx/core/Handler;)V
         1: .line 215
            aload 0 /* this */
            areturn
        end local 2 // io.vertx.core.Handler handler
        end local 1 // java.lang.String name
        end local 0 // io.vertx.redis.impl.RedisSentinelClientImpl this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lio/vertx/redis/impl/RedisSentinelClientImpl;
            0    2     1     name  Ljava/lang/String;
            0    2     2  handler  Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Lio/vertx/core/json/JsonArray;>;>;
    Signature: (Ljava/lang/String;Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Lio/vertx/core/json/JsonArray;>;>;)Lio/vertx/redis/sentinel/RedisSentinel;
    MethodParameters:
         Name  Flags
      name     
      handler  

  public io.vertx.redis.sentinel.RedisSentinel slaves(java.lang.String, io.vertx.core.Handler<io.vertx.core.AsyncResult<io.vertx.core.json.JsonArray>>);
    descriptor: (Ljava/lang/String;Lio/vertx/core/Handler;)Lio/vertx/redis/sentinel/RedisSentinel;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // io.vertx.redis.impl.RedisSentinelClientImpl this
        start local 1 // java.lang.String name
        start local 2 // io.vertx.core.Handler handler
         0: .line 220
            aload 0 /* this */
            getstatic io.vertx.redis.client.Command.SENTINEL:Lio/vertx/redis/client/Command;
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            ldc "SLAVES"
            aastore
            dup
            iconst_1
            aload 1 /* name */
            aastore
            invokestatic io.vertx.redis.impl.RedisSentinelClientImpl.toPayload:([Ljava/lang/Object;)Ljava/util/List;
            aload 2 /* handler */
            invokevirtual io.vertx.redis.impl.RedisSentinelClientImpl.sendJsonArray:(Lio/vertx/redis/client/Command;Ljava/util/List;Lio/vertx/core/Handler;)V
         1: .line 221
            aload 0 /* this */
            areturn
        end local 2 // io.vertx.core.Handler handler
        end local 1 // java.lang.String name
        end local 0 // io.vertx.redis.impl.RedisSentinelClientImpl this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lio/vertx/redis/impl/RedisSentinelClientImpl;
            0    2     1     name  Ljava/lang/String;
            0    2     2  handler  Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Lio/vertx/core/json/JsonArray;>;>;
    Signature: (Ljava/lang/String;Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Lio/vertx/core/json/JsonArray;>;>;)Lio/vertx/redis/sentinel/RedisSentinel;
    MethodParameters:
         Name  Flags
      name     
      handler  

  public io.vertx.redis.sentinel.RedisSentinel sentinels(java.lang.String, io.vertx.core.Handler<io.vertx.core.AsyncResult<io.vertx.core.json.JsonArray>>);
    descriptor: (Ljava/lang/String;Lio/vertx/core/Handler;)Lio/vertx/redis/sentinel/RedisSentinel;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // io.vertx.redis.impl.RedisSentinelClientImpl this
        start local 1 // java.lang.String name
        start local 2 // io.vertx.core.Handler handler
         0: .line 226
            aload 0 /* this */
            getstatic io.vertx.redis.client.Command.SENTINEL:Lio/vertx/redis/client/Command;
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            ldc "SENTINELS"
            aastore
            dup
            iconst_1
            aload 1 /* name */
            aastore
            invokestatic io.vertx.redis.impl.RedisSentinelClientImpl.toPayload:([Ljava/lang/Object;)Ljava/util/List;
            aload 2 /* handler */
            invokevirtual io.vertx.redis.impl.RedisSentinelClientImpl.sendJsonArray:(Lio/vertx/redis/client/Command;Ljava/util/List;Lio/vertx/core/Handler;)V
         1: .line 227
            aload 0 /* this */
            areturn
        end local 2 // io.vertx.core.Handler handler
        end local 1 // java.lang.String name
        end local 0 // io.vertx.redis.impl.RedisSentinelClientImpl this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lio/vertx/redis/impl/RedisSentinelClientImpl;
            0    2     1     name  Ljava/lang/String;
            0    2     2  handler  Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Lio/vertx/core/json/JsonArray;>;>;
    Signature: (Ljava/lang/String;Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Lio/vertx/core/json/JsonArray;>;>;)Lio/vertx/redis/sentinel/RedisSentinel;
    MethodParameters:
         Name  Flags
      name     
      handler  

  public io.vertx.redis.sentinel.RedisSentinel getMasterAddrByName(java.lang.String, io.vertx.core.Handler<io.vertx.core.AsyncResult<io.vertx.core.json.JsonArray>>);
    descriptor: (Ljava/lang/String;Lio/vertx/core/Handler;)Lio/vertx/redis/sentinel/RedisSentinel;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // io.vertx.redis.impl.RedisSentinelClientImpl this
        start local 1 // java.lang.String name
        start local 2 // io.vertx.core.Handler handler
         0: .line 232
            aload 0 /* this */
            getstatic io.vertx.redis.client.Command.SENTINEL:Lio/vertx/redis/client/Command;
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            ldc "GET-MASTER-ADDR-BY-NAME"
            aastore
            dup
            iconst_1
            aload 1 /* name */
            aastore
            invokestatic io.vertx.redis.impl.RedisSentinelClientImpl.toPayload:([Ljava/lang/Object;)Ljava/util/List;
            aload 2 /* handler */
            invokevirtual io.vertx.redis.impl.RedisSentinelClientImpl.sendJsonArray:(Lio/vertx/redis/client/Command;Ljava/util/List;Lio/vertx/core/Handler;)V
         1: .line 233
            aload 0 /* this */
            areturn
        end local 2 // io.vertx.core.Handler handler
        end local 1 // java.lang.String name
        end local 0 // io.vertx.redis.impl.RedisSentinelClientImpl this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lio/vertx/redis/impl/RedisSentinelClientImpl;
            0    2     1     name  Ljava/lang/String;
            0    2     2  handler  Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Lio/vertx/core/json/JsonArray;>;>;
    Signature: (Ljava/lang/String;Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Lio/vertx/core/json/JsonArray;>;>;)Lio/vertx/redis/sentinel/RedisSentinel;
    MethodParameters:
         Name  Flags
      name     
      handler  

  public io.vertx.redis.sentinel.RedisSentinel reset(java.lang.String, io.vertx.core.Handler<io.vertx.core.AsyncResult<java.lang.Void>>);
    descriptor: (Ljava/lang/String;Lio/vertx/core/Handler;)Lio/vertx/redis/sentinel/RedisSentinel;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // io.vertx.redis.impl.RedisSentinelClientImpl this
        start local 1 // java.lang.String pattern
        start local 2 // io.vertx.core.Handler handler
         0: .line 238
            aload 0 /* this */
            getstatic io.vertx.redis.client.Command.SENTINEL:Lio/vertx/redis/client/Command;
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            ldc "RESET"
            aastore
            dup
            iconst_1
            aload 1 /* pattern */
            aastore
            invokestatic io.vertx.redis.impl.RedisSentinelClientImpl.toPayload:([Ljava/lang/Object;)Ljava/util/List;
            aload 2 /* handler */
            invokevirtual io.vertx.redis.impl.RedisSentinelClientImpl.sendVoid:(Lio/vertx/redis/client/Command;Ljava/util/List;Lio/vertx/core/Handler;)V
         1: .line 239
            aload 0 /* this */
            areturn
        end local 2 // io.vertx.core.Handler handler
        end local 1 // java.lang.String pattern
        end local 0 // io.vertx.redis.impl.RedisSentinelClientImpl this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lio/vertx/redis/impl/RedisSentinelClientImpl;
            0    2     1  pattern  Ljava/lang/String;
            0    2     2  handler  Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Ljava/lang/Void;>;>;
    Signature: (Ljava/lang/String;Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Ljava/lang/Void;>;>;)Lio/vertx/redis/sentinel/RedisSentinel;
    MethodParameters:
         Name  Flags
      pattern  
      handler  

  public io.vertx.redis.sentinel.RedisSentinel failover(java.lang.String, io.vertx.core.Handler<io.vertx.core.AsyncResult<java.lang.String>>);
    descriptor: (Ljava/lang/String;Lio/vertx/core/Handler;)Lio/vertx/redis/sentinel/RedisSentinel;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // io.vertx.redis.impl.RedisSentinelClientImpl this
        start local 1 // java.lang.String name
        start local 2 // io.vertx.core.Handler handler
         0: .line 244
            aload 0 /* this */
            getstatic io.vertx.redis.client.Command.SENTINEL:Lio/vertx/redis/client/Command;
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            ldc "FAILOVER"
            aastore
            dup
            iconst_1
            aload 1 /* name */
            aastore
            invokestatic io.vertx.redis.impl.RedisSentinelClientImpl.toPayload:([Ljava/lang/Object;)Ljava/util/List;
            aload 2 /* handler */
            invokevirtual io.vertx.redis.impl.RedisSentinelClientImpl.sendString:(Lio/vertx/redis/client/Command;Ljava/util/List;Lio/vertx/core/Handler;)V
         1: .line 245
            aload 0 /* this */
            areturn
        end local 2 // io.vertx.core.Handler handler
        end local 1 // java.lang.String name
        end local 0 // io.vertx.redis.impl.RedisSentinelClientImpl this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lio/vertx/redis/impl/RedisSentinelClientImpl;
            0    2     1     name  Ljava/lang/String;
            0    2     2  handler  Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Ljava/lang/String;>;>;
    Signature: (Ljava/lang/String;Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Ljava/lang/String;>;>;)Lio/vertx/redis/sentinel/RedisSentinel;
    MethodParameters:
         Name  Flags
      name     
      handler  

  public io.vertx.redis.sentinel.RedisSentinel ckquorum(java.lang.String, io.vertx.core.Handler<io.vertx.core.AsyncResult<java.lang.String>>);
    descriptor: (Ljava/lang/String;Lio/vertx/core/Handler;)Lio/vertx/redis/sentinel/RedisSentinel;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=3
        start local 0 // io.vertx.redis.impl.RedisSentinelClientImpl this
        start local 1 // java.lang.String name
        start local 2 // io.vertx.core.Handler handler
         0: .line 250
            aload 0 /* this */
            getstatic io.vertx.redis.client.Command.SENTINEL:Lio/vertx/redis/client/Command;
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            ldc "CKQUORUM"
            aastore
            dup
            iconst_1
            aload 1 /* name */
            aastore
            invokestatic io.vertx.redis.impl.RedisSentinelClientImpl.toPayload:([Ljava/lang/Object;)Ljava/util/List;
            aload 2 /* handler */
            invokevirtual io.vertx.redis.impl.RedisSentinelClientImpl.sendString:(Lio/vertx/redis/client/Command;Ljava/util/List;Lio/vertx/core/Handler;)V
         1: .line 251
            aload 0 /* this */
            areturn
        end local 2 // io.vertx.core.Handler handler
        end local 1 // java.lang.String name
        end local 0 // io.vertx.redis.impl.RedisSentinelClientImpl this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lio/vertx/redis/impl/RedisSentinelClientImpl;
            0    2     1     name  Ljava/lang/String;
            0    2     2  handler  Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Ljava/lang/String;>;>;
    Signature: (Ljava/lang/String;Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Ljava/lang/String;>;>;)Lio/vertx/redis/sentinel/RedisSentinel;
    MethodParameters:
         Name  Flags
      name     
      handler  

  public io.vertx.redis.sentinel.RedisSentinel flushConfig(io.vertx.core.Handler<io.vertx.core.AsyncResult<java.lang.Void>>);
    descriptor: (Lio/vertx/core/Handler;)Lio/vertx/redis/sentinel/RedisSentinel;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // io.vertx.redis.impl.RedisSentinelClientImpl this
        start local 1 // io.vertx.core.Handler handler
         0: .line 256
            aload 0 /* this */
            getstatic io.vertx.redis.client.Command.SENTINEL:Lio/vertx/redis/client/Command;
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            ldc "FLUSHCONFIG"
            aastore
            invokestatic io.vertx.redis.impl.RedisSentinelClientImpl.toPayload:([Ljava/lang/Object;)Ljava/util/List;
            aload 1 /* handler */
            invokevirtual io.vertx.redis.impl.RedisSentinelClientImpl.sendVoid:(Lio/vertx/redis/client/Command;Ljava/util/List;Lio/vertx/core/Handler;)V
         1: .line 257
            aload 0 /* this */
            areturn
        end local 1 // io.vertx.core.Handler handler
        end local 0 // io.vertx.redis.impl.RedisSentinelClientImpl this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lio/vertx/redis/impl/RedisSentinelClientImpl;
            0    2     1  handler  Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Ljava/lang/Void;>;>;
    Signature: (Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Ljava/lang/Void;>;>;)Lio/vertx/redis/sentinel/RedisSentinel;
    MethodParameters:
         Name  Flags
      handler  

  static int[] $SWITCH_TABLE$io$vertx$redis$client$ResponseType();
    descriptor: ()[I
    flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=0
         0: .line 25
            getstatic io.vertx.redis.impl.RedisSentinelClientImpl.$SWITCH_TABLE$io$vertx$redis$client$ResponseType:[I
            dup
            ifnull 1
            areturn
      StackMap locals:
      StackMap stack: int[]
         1: pop
            invokestatic io.vertx.redis.client.ResponseType.values:()[Lio/vertx/redis/client/ResponseType;
            arraylength
            newarray 10
            astore 0
         2: aload 0
            getstatic io.vertx.redis.client.ResponseType.BULK:Lio/vertx/redis/client/ResponseType;
            invokevirtual io.vertx.redis.client.ResponseType.ordinal:()I
            iconst_4
            iastore
         3: goto 5
      StackMap locals: int[]
      StackMap stack: java.lang.NoSuchFieldError
         4: pop
      StackMap locals:
      StackMap stack:
         5: aload 0
            getstatic io.vertx.redis.client.ResponseType.ERROR:Lio/vertx/redis/client/ResponseType;
            invokevirtual io.vertx.redis.client.ResponseType.ordinal:()I
            iconst_2
            iastore
         6: goto 8
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
         7: pop
      StackMap locals:
      StackMap stack:
         8: aload 0
            getstatic io.vertx.redis.client.ResponseType.INTEGER:Lio/vertx/redis/client/ResponseType;
            invokevirtual io.vertx.redis.client.ResponseType.ordinal:()I
            iconst_3
            iastore
         9: goto 11
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        10: pop
      StackMap locals:
      StackMap stack:
        11: aload 0
            getstatic io.vertx.redis.client.ResponseType.MULTI:Lio/vertx/redis/client/ResponseType;
            invokevirtual io.vertx.redis.client.ResponseType.ordinal:()I
            iconst_5
            iastore
        12: goto 14
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        13: pop
      StackMap locals:
      StackMap stack:
        14: aload 0
            getstatic io.vertx.redis.client.ResponseType.SIMPLE:Lio/vertx/redis/client/ResponseType;
            invokevirtual io.vertx.redis.client.ResponseType.ordinal:()I
            iconst_1
            iastore
        15: goto 17
      StackMap locals:
      StackMap stack: java.lang.NoSuchFieldError
        16: pop
      StackMap locals:
      StackMap stack:
        17: aload 0
            dup
            putstatic io.vertx.redis.impl.RedisSentinelClientImpl.$SWITCH_TABLE$io$vertx$redis$client$ResponseType:[I
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature
      Exception table:
        from    to  target  type
           2     3       4  Class java.lang.NoSuchFieldError
           5     6       7  Class java.lang.NoSuchFieldError
           8     9      10  Class java.lang.NoSuchFieldError
          11    12      13  Class java.lang.NoSuchFieldError
          14    15      16  Class java.lang.NoSuchFieldError

  private static void lambda$2(java.util.List, java.lang.Object);
    descriptor: (Ljava/util/List;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 e
         0: .line 79
            aload 1 /* e */
            instanceof java.lang.Object[]
            ifeq 3
         1: .line 80
            aload 0
            aload 1 /* e */
            checkcast java.lang.Object[]
            invokestatic java.util.Collections.addAll:(Ljava/util/Collection;[Ljava/lang/Object;)Z
            pop
         2: .line 81
            goto 4
         3: .line 82
      StackMap locals:
      StackMap stack:
            aload 0
            aload 1 /* e */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         4: .line 84
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.Object e
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     1     e  Ljava/lang/Object;

  private static void lambda$3(java.util.concurrent.CompletableFuture, io.vertx.core.AsyncResult);
    descriptor: (Ljava/util/concurrent/CompletableFuture;Lio/vertx/core/AsyncResult;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 1 // io.vertx.core.AsyncResult onReady
         0: .line 117
            aload 1 /* onReady */
            invokeinterface io.vertx.core.AsyncResult.succeeded:()Z
            ifeq 3
         1: .line 118
            aload 0
            aload 1 /* onReady */
            invokeinterface io.vertx.core.AsyncResult.result:()Ljava/lang/Object;
            invokevirtual java.util.concurrent.CompletableFuture.complete:(Ljava/lang/Object;)Z
            pop
         2: .line 119
            goto 4
         3: .line 120
      StackMap locals:
      StackMap stack:
            aload 0
            aload 1 /* onReady */
            invokeinterface io.vertx.core.AsyncResult.cause:()Ljava/lang/Throwable;
            invokevirtual java.util.concurrent.CompletableFuture.completeExceptionally:(Ljava/lang/Throwable;)Z
            pop
         4: .line 122
      StackMap locals:
      StackMap stack:
            return
        end local 1 // io.vertx.core.AsyncResult onReady
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     1  onReady  Lio/vertx/core/AsyncResult<Lio/vertx/redis/client/Redis;>;

  private static void lambda$4(io.vertx.redis.client.Request, io.vertx.core.Handler, io.vertx.redis.client.Redis, java.lang.Throwable);
    descriptor: (Lio/vertx/redis/client/Request;Lio/vertx/core/Handler;Lio/vertx/redis/client/Redis;Ljava/lang/Throwable;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=4, args_size=4
        start local 2 // io.vertx.redis.client.Redis client
        start local 3 // java.lang.Throwable err
         0: .line 129
            aload 3 /* err */
            ifnonnull 3
         1: .line 130
            aload 2 /* client */
            aload 0
            aload 1
            invokeinterface io.vertx.redis.client.Redis.send:(Lio/vertx/redis/client/Request;Lio/vertx/core/Handler;)Lio/vertx/redis/client/Redis;
            pop
         2: .line 131
            goto 4
         3: .line 132
      StackMap locals:
      StackMap stack:
            aload 1
            aload 3 /* err */
            invokestatic io.vertx.core.Future.failedFuture:(Ljava/lang/Throwable;)Lio/vertx/core/Future;
            invokeinterface io.vertx.core.Handler.handle:(Ljava/lang/Object;)V
         4: .line 134
      StackMap locals:
      StackMap stack:
            return
        end local 3 // java.lang.Throwable err
        end local 2 // io.vertx.redis.client.Redis client
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    5     2  client  Lio/vertx/redis/client/Redis;
            0    5     3     err  Ljava/lang/Throwable;

  private static void lambda$5(io.vertx.core.Handler, io.vertx.core.AsyncResult);
    descriptor: (Lio/vertx/core/Handler;Lio/vertx/core/AsyncResult;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 1 // io.vertx.core.AsyncResult ar
         0: .line 139
            aload 1 /* ar */
            invokeinterface io.vertx.core.AsyncResult.failed:()Z
            ifeq 3
         1: .line 140
            aload 0
            aload 1 /* ar */
            invokeinterface io.vertx.core.AsyncResult.cause:()Ljava/lang/Throwable;
            invokestatic io.vertx.core.Future.failedFuture:(Ljava/lang/Throwable;)Lio/vertx/core/Future;
            invokeinterface io.vertx.core.Handler.handle:(Ljava/lang/Object;)V
         2: .line 141
            goto 4
         3: .line 142
      StackMap locals:
      StackMap stack:
            aload 0
            aload 1 /* ar */
            invokeinterface io.vertx.core.AsyncResult.result:()Ljava/lang/Object;
            checkcast io.vertx.redis.client.Response
            invokeinterface io.vertx.redis.client.Response.toString:()Ljava/lang/String;
            invokestatic io.vertx.core.Future.succeededFuture:(Ljava/lang/Object;)Lio/vertx/core/Future;
            invokeinterface io.vertx.core.Handler.handle:(Ljava/lang/Object;)V
         4: .line 144
      StackMap locals:
      StackMap stack:
            return
        end local 1 // io.vertx.core.AsyncResult ar
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     1    ar  Lio/vertx/core/AsyncResult<Lio/vertx/redis/client/Response;>;

  private static void lambda$6(io.vertx.core.Handler, io.vertx.core.AsyncResult);
    descriptor: (Lio/vertx/core/Handler;Lio/vertx/core/AsyncResult;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 1 // io.vertx.core.AsyncResult ar
         0: .line 169
            aload 1 /* ar */
            invokeinterface io.vertx.core.AsyncResult.failed:()Z
            ifeq 3
         1: .line 170
            aload 0
            aload 1 /* ar */
            invokeinterface io.vertx.core.AsyncResult.cause:()Ljava/lang/Throwable;
            invokestatic io.vertx.core.Future.failedFuture:(Ljava/lang/Throwable;)Lio/vertx/core/Future;
            invokeinterface io.vertx.core.Handler.handle:(Ljava/lang/Object;)V
         2: .line 171
            goto 4
         3: .line 172
      StackMap locals:
      StackMap stack:
            aload 0
            aload 1 /* ar */
            invokeinterface io.vertx.core.AsyncResult.result:()Ljava/lang/Object;
            checkcast io.vertx.redis.client.Response
            invokestatic io.vertx.redis.impl.RedisSentinelClientImpl.toJsonArray:(Lio/vertx/redis/client/Response;)Lio/vertx/core/json/JsonArray;
            invokestatic io.vertx.core.Future.succeededFuture:(Ljava/lang/Object;)Lio/vertx/core/Future;
            invokeinterface io.vertx.core.Handler.handle:(Ljava/lang/Object;)V
         4: .line 174
      StackMap locals:
      StackMap stack:
            return
        end local 1 // io.vertx.core.AsyncResult ar
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     1    ar  Lio/vertx/core/AsyncResult<Lio/vertx/redis/client/Response;>;

  private static void lambda$7(io.vertx.core.Handler, io.vertx.core.AsyncResult);
    descriptor: (Lio/vertx/core/Handler;Lio/vertx/core/AsyncResult;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=2, args_size=2
        start local 1 // io.vertx.core.AsyncResult ar
         0: .line 179
            aload 1 /* ar */
            invokeinterface io.vertx.core.AsyncResult.failed:()Z
            ifeq 3
         1: .line 180
            aload 0
            aload 1 /* ar */
            invokeinterface io.vertx.core.AsyncResult.cause:()Ljava/lang/Throwable;
            invokestatic io.vertx.core.Future.failedFuture:(Ljava/lang/Throwable;)Lio/vertx/core/Future;
            invokeinterface io.vertx.core.Handler.handle:(Ljava/lang/Object;)V
         2: .line 181
            goto 4
         3: .line 182
      StackMap locals:
      StackMap stack:
            aload 0
            invokestatic io.vertx.core.Future.succeededFuture:()Lio/vertx/core/Future;
            invokeinterface io.vertx.core.Handler.handle:(Ljava/lang/Object;)V
         4: .line 184
      StackMap locals:
      StackMap stack:
            return
        end local 1 // io.vertx.core.AsyncResult ar
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     1    ar  Lio/vertx/core/AsyncResult<Lio/vertx/redis/client/Response;>;

  private static void lambda$8(io.vertx.core.Handler, io.vertx.redis.client.Redis, java.lang.Throwable);
    descriptor: (Lio/vertx/core/Handler;Lio/vertx/redis/client/Redis;Ljava/lang/Throwable;)V
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=2, locals=3, args_size=3
        start local 1 // io.vertx.redis.client.Redis client
        start local 2 // java.lang.Throwable err
         0: .line 192
            aload 2 /* err */
            ifnonnull 5
         1: .line 193
            aload 1 /* client */
            invokeinterface io.vertx.redis.client.Redis.close:()V
         2: .line 194
            aload 0
            ifnull 7
         3: .line 195
            aload 0
            invokestatic io.vertx.core.Future.succeededFuture:()Lio/vertx/core/Future;
            invokeinterface io.vertx.core.Handler.handle:(Ljava/lang/Object;)V
         4: .line 197
            goto 7
         5: .line 198
      StackMap locals:
      StackMap stack:
            aload 0
            ifnull 7
         6: .line 199
            aload 0
            aload 2 /* err */
            invokevirtual java.lang.Throwable.getCause:()Ljava/lang/Throwable;
            invokestatic io.vertx.core.Future.failedFuture:(Ljava/lang/Throwable;)Lio/vertx/core/Future;
            invokeinterface io.vertx.core.Handler.handle:(Ljava/lang/Object;)V
         7: .line 202
      StackMap locals:
      StackMap stack:
            return
        end local 2 // java.lang.Throwable err
        end local 1 // io.vertx.redis.client.Redis client
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    8     1  client  Lio/vertx/redis/client/Redis;
            0    8     2     err  Ljava/lang/Throwable;
}
SourceFile: "RedisSentinelClientImpl.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