class io.vertx.ext.mongo.impl.Utils
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: io.vertx.ext.mongo.impl.Utils
  super_class: java.lang.Object
{
  static final java.lang.String ID_FIELD;
    descriptor: Ljava/lang/String;
    flags: (0x0018) ACC_STATIC, ACC_FINAL
    ConstantValue: "_id"

  static io.vertx.ext.mongo.MongoClientDeleteResult toMongoClientDeleteResult(com.mongodb.client.result.DeleteResult);
    descriptor: (Lcom/mongodb/client/result/DeleteResult;)Lio/vertx/ext/mongo/MongoClientDeleteResult;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // com.mongodb.client.result.DeleteResult deleteResult
         0: .line 42
            aload 0 /* deleteResult */
            invokevirtual com.mongodb.client.result.DeleteResult.wasAcknowledged:()Z
            ifeq 1
            new io.vertx.ext.mongo.MongoClientDeleteResult
            dup
            aload 0 /* deleteResult */
            invokevirtual com.mongodb.client.result.DeleteResult.getDeletedCount:()J
            invokespecial io.vertx.ext.mongo.MongoClientDeleteResult.<init>:(J)V
            goto 2
      StackMap locals:
      StackMap stack:
         1: aconst_null
      StackMap locals:
      StackMap stack: io.vertx.ext.mongo.MongoClientDeleteResult
         2: areturn
        end local 0 // com.mongodb.client.result.DeleteResult deleteResult
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    3     0  deleteResult  Lcom/mongodb/client/result/DeleteResult;
    MethodParameters:
              Name  Flags
      deleteResult  

  static io.vertx.ext.mongo.MongoClientUpdateResult toMongoClientUpdateResult(com.mongodb.client.result.UpdateResult);
    descriptor: (Lcom/mongodb/client/result/UpdateResult;)Lio/vertx/ext/mongo/MongoClientUpdateResult;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=7, locals=1, args_size=1
        start local 0 // com.mongodb.client.result.UpdateResult updateResult
         0: .line 46
            aload 0 /* updateResult */
            invokevirtual com.mongodb.client.result.UpdateResult.wasAcknowledged:()Z
            ifeq 1
            new io.vertx.ext.mongo.MongoClientUpdateResult
            dup
            aload 0 /* updateResult */
            invokevirtual com.mongodb.client.result.UpdateResult.getMatchedCount:()J
            aload 0 /* updateResult */
            invokevirtual com.mongodb.client.result.UpdateResult.getUpsertedId:()Lorg/bson/BsonValue;
            invokestatic io.vertx.ext.mongo.impl.Utils.convertUpsertId:(Lorg/bson/BsonValue;)Lio/vertx/core/json/JsonObject;
            aload 0 /* updateResult */
            invokevirtual com.mongodb.client.result.UpdateResult.getModifiedCount:()J
            invokespecial io.vertx.ext.mongo.MongoClientUpdateResult.<init>:(JLio/vertx/core/json/JsonObject;J)V
            goto 2
      StackMap locals:
      StackMap stack:
         1: aconst_null
      StackMap locals:
      StackMap stack: io.vertx.ext.mongo.MongoClientUpdateResult
         2: areturn
        end local 0 // com.mongodb.client.result.UpdateResult updateResult
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    3     0  updateResult  Lcom/mongodb/client/result/UpdateResult;
    MethodParameters:
              Name  Flags
      updateResult  

  static io.vertx.ext.mongo.MongoClientBulkWriteResult toMongoClientBulkWriteResult(com.mongodb.bulk.BulkWriteResult);
    descriptor: (Lcom/mongodb/bulk/BulkWriteResult;)Lio/vertx/ext/mongo/MongoClientBulkWriteResult;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=11, locals=2, args_size=1
        start local 0 // com.mongodb.bulk.BulkWriteResult bulkWriteResult
         0: .line 50
            aload 0 /* bulkWriteResult */
            invokevirtual com.mongodb.bulk.BulkWriteResult.wasAcknowledged:()Z
            ifne 2
         1: .line 51
            aconst_null
            areturn
         2: .line 54
      StackMap locals:
      StackMap stack:
            aload 0 /* bulkWriteResult */
            invokevirtual com.mongodb.bulk.BulkWriteResult.getUpserts:()Ljava/util/List;
            invokeinterface java.util.List.stream:()Ljava/util/stream/Stream;
            invokedynamic apply()Ljava/util/function/Function;
              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;
                  io/vertx/ext/mongo/impl/Utils.lambda$0(Lcom/mongodb/bulk/BulkWriteUpsert;)Lio/vertx/core/json/JsonObject; (6)
                  (Lcom/mongodb/bulk/BulkWriteUpsert;)Lio/vertx/core/json/JsonObject;
            invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
         3: .line 58
            invokestatic java.util.stream.Collectors.toList:()Ljava/util/stream/Collector;
            invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
            checkcast java.util.List
         4: .line 54
            astore 1 /* upsertResult */
        start local 1 // java.util.List upsertResult
         5: .line 60
            new io.vertx.ext.mongo.MongoClientBulkWriteResult
            dup
         6: .line 61
            aload 0 /* bulkWriteResult */
            invokevirtual com.mongodb.bulk.BulkWriteResult.getInsertedCount:()I
            i2l
         7: .line 62
            aload 0 /* bulkWriteResult */
            invokevirtual com.mongodb.bulk.BulkWriteResult.getMatchedCount:()I
            i2l
         8: .line 63
            aload 0 /* bulkWriteResult */
            invokevirtual com.mongodb.bulk.BulkWriteResult.getDeletedCount:()I
            i2l
         9: .line 64
            aload 0 /* bulkWriteResult */
            invokevirtual com.mongodb.bulk.BulkWriteResult.getModifiedCount:()I
            i2l
        10: .line 65
            aload 1 /* upsertResult */
        11: .line 60
            invokespecial io.vertx.ext.mongo.MongoClientBulkWriteResult.<init>:(JJJJLjava/util/List;)V
            areturn
        end local 1 // java.util.List upsertResult
        end local 0 // com.mongodb.bulk.BulkWriteResult bulkWriteResult
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   12     0  bulkWriteResult  Lcom/mongodb/bulk/BulkWriteResult;
            5   12     1     upsertResult  Ljava/util/List<Lio/vertx/core/json/JsonObject;>;
    MethodParameters:
                 Name  Flags
      bulkWriteResult  

  private static io.vertx.core.json.JsonObject convertUpsertId(org.bson.BsonValue);
    descriptor: (Lorg/bson/BsonValue;)Lio/vertx/core/json/JsonObject;
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=5, args_size=1
        start local 0 // org.bson.BsonValue upsertId
         0: .line 71
            aload 0 /* upsertId */
            ifnull 7
         1: .line 72
            new io.vertx.ext.mongo.impl.codec.json.JsonObjectCodec
            dup
            new io.vertx.core.json.JsonObject
            dup
            invokespecial io.vertx.core.json.JsonObject.<init>:()V
            invokespecial io.vertx.ext.mongo.impl.codec.json.JsonObjectCodec.<init>:(Lio/vertx/core/json/JsonObject;)V
            astore 2 /* jsonObjectCodec */
        start local 2 // io.vertx.ext.mongo.impl.codec.json.JsonObjectCodec jsonObjectCodec
         2: .line 74
            new org.bson.BsonDocument
            dup
            invokespecial org.bson.BsonDocument.<init>:()V
            astore 3 /* upsertIdDocument */
        start local 3 // org.bson.BsonDocument upsertIdDocument
         3: .line 75
            aload 3 /* upsertIdDocument */
            ldc "_id"
            aload 0 /* upsertId */
            invokevirtual org.bson.BsonDocument.append:(Ljava/lang/String;Lorg/bson/BsonValue;)Lorg/bson/BsonDocument;
            pop
         4: .line 77
            new org.bson.BsonDocumentReader
            dup
            aload 3 /* upsertIdDocument */
            invokespecial org.bson.BsonDocumentReader.<init>:(Lorg/bson/BsonDocument;)V
            astore 4 /* bsonDocumentReader */
        start local 4 // org.bson.BsonDocumentReader bsonDocumentReader
         5: .line 78
            aload 2 /* jsonObjectCodec */
            aload 4 /* bsonDocumentReader */
            invokestatic org.bson.codecs.DecoderContext.builder:()Lorg/bson/codecs/DecoderContext$Builder;
            invokevirtual org.bson.codecs.DecoderContext$Builder.build:()Lorg/bson/codecs/DecoderContext;
            invokevirtual io.vertx.ext.mongo.impl.codec.json.JsonObjectCodec.decode:(Lorg/bson/BsonReader;Lorg/bson/codecs/DecoderContext;)Ljava/lang/Object;
            checkcast io.vertx.core.json.JsonObject
            astore 1 /* jsonUpsertId */
        end local 4 // org.bson.BsonDocumentReader bsonDocumentReader
        end local 3 // org.bson.BsonDocument upsertIdDocument
        end local 2 // io.vertx.ext.mongo.impl.codec.json.JsonObjectCodec jsonObjectCodec
        start local 1 // io.vertx.core.json.JsonObject jsonUpsertId
         6: .line 79
            goto 8
        end local 1 // io.vertx.core.json.JsonObject jsonUpsertId
         7: .line 80
      StackMap locals:
      StackMap stack:
            aconst_null
            astore 1 /* jsonUpsertId */
        start local 1 // io.vertx.core.json.JsonObject jsonUpsertId
         8: .line 82
      StackMap locals: io.vertx.core.json.JsonObject
      StackMap stack:
            aload 1 /* jsonUpsertId */
            areturn
        end local 1 // io.vertx.core.json.JsonObject jsonUpsertId
        end local 0 // org.bson.BsonValue upsertId
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0    9     0            upsertId  Lorg/bson/BsonValue;
            6    7     1        jsonUpsertId  Lio/vertx/core/json/JsonObject;
            8    9     1        jsonUpsertId  Lio/vertx/core/json/JsonObject;
            2    6     2     jsonObjectCodec  Lio/vertx/ext/mongo/impl/codec/json/JsonObjectCodec;
            3    6     3    upsertIdDocument  Lorg/bson/BsonDocument;
            5    6     4  bsonDocumentReader  Lorg/bson/BsonDocumentReader;
    MethodParameters:
          Name  Flags
      upsertId  

  static <T> void setHandler(io.vertx.core.Future<T>, io.vertx.core.Handler<io.vertx.core.AsyncResult<T>>);
    descriptor: (Lio/vertx/core/Future;Lio/vertx/core/Handler;)V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.vertx.core.Future future
        start local 1 // io.vertx.core.Handler handler
         0: .line 89
            aload 0 /* future */
            ldc "future must not be null"
            invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
            pop
         1: .line 90
            aload 1 /* handler */
            ifnull 3
         2: .line 91
            aload 0 /* future */
            aload 1 /* handler */
            invokeinterface io.vertx.core.Future.onComplete:(Lio/vertx/core/Handler;)Lio/vertx/core/Future;
            pop
         3: .line 93
      StackMap locals:
      StackMap stack:
            return
        end local 1 // io.vertx.core.Handler handler
        end local 0 // io.vertx.core.Future future
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0   future  Lio/vertx/core/Future<TT;>;
            0    4     1  handler  Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<TT;>;>;
    Signature: <T:Ljava/lang/Object;>(Lio/vertx/core/Future<TT;>;Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<TT;>;>;)V
    MethodParameters:
         Name  Flags
      future   
      handler  

  private void <init>();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.vertx.ext.mongo.impl.Utils this
         0: .line 95
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 97
            return
        end local 0 // io.vertx.ext.mongo.impl.Utils this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lio/vertx/ext/mongo/impl/Utils;

  private static io.vertx.core.json.JsonObject lambda$0(com.mongodb.bulk.BulkWriteUpsert);
    descriptor: (Lcom/mongodb/bulk/BulkWriteUpsert;)Lio/vertx/core/json/JsonObject;
    flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // com.mongodb.bulk.BulkWriteUpsert upsert
         0: .line 55
            aload 0 /* upsert */
            invokevirtual com.mongodb.bulk.BulkWriteUpsert.getId:()Lorg/bson/BsonValue;
            invokestatic io.vertx.ext.mongo.impl.Utils.convertUpsertId:(Lorg/bson/BsonValue;)Lio/vertx/core/json/JsonObject;
            astore 1 /* upsertValue */
        start local 1 // io.vertx.core.json.JsonObject upsertValue
         1: .line 56
            aload 1 /* upsertValue */
            ldc "index"
            aload 0 /* upsert */
            invokevirtual com.mongodb.bulk.BulkWriteUpsert.getIndex:()I
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Ljava/lang/Object;)Lio/vertx/core/json/JsonObject;
            pop
         2: .line 57
            aload 1 /* upsertValue */
            areturn
        end local 1 // io.vertx.core.json.JsonObject upsertValue
        end local 0 // com.mongodb.bulk.BulkWriteUpsert upsert
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    3     0       upsert  Lcom/mongodb/bulk/BulkWriteUpsert;
            1    3     1  upsertValue  Lio/vertx/core/json/JsonObject;
}
SourceFile: "Utils.java"
InnerClasses:
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
  public final Builder = org.bson.codecs.DecoderContext$Builder of org.bson.codecs.DecoderContext