public class io.vertx.ext.mongo.impl.codec.json.JsonObjectCodec extends io.vertx.ext.mongo.impl.codec.json.AbstractJsonCodec<io.vertx.core.json.JsonObject, io.vertx.core.json.JsonArray> implements org.bson.codecs.CollectibleCodec<io.vertx.core.json.JsonObject>
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: io.vertx.ext.mongo.impl.codec.json.JsonObjectCodec
super_class: io.vertx.ext.mongo.impl.codec.json.AbstractJsonCodec
{
public static final java.lang.String ID_FIELD;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "_id"
public static final java.lang.String DATE_FIELD;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "$date"
public static final java.lang.String BINARY_FIELD;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "$binary"
public static final java.lang.String TYPE_FIELD;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "$type"
public static final java.lang.String OID_FIELD;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "$oid"
public static final java.lang.String TIMESTAMP_FIELD;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "$timestamp"
public static final java.lang.String TIMESTAMP_TIME_FIELD;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "t"
public static final java.lang.String TIMESTAMP_INCREMENT_FIELD;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "i"
private boolean useObjectId;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
public void <init>(io.vertx.core.json.JsonObject);
descriptor: (Lio/vertx/core/json/JsonObject;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial io.vertx.ext.mongo.impl.codec.json.AbstractJsonCodec.<init>:()V
1: aload 0
iconst_0
putfield io.vertx.ext.mongo.impl.codec.json.JsonObjectCodec.useObjectId:Z
2: aload 0
aload 1
ldc "useObjectId"
iconst_0
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
invokevirtual io.vertx.core.json.JsonObject.getBoolean:(Ljava/lang/String;Ljava/lang/Boolean;)Ljava/lang/Boolean;
invokevirtual java.lang.Boolean.booleanValue:()Z
putfield io.vertx.ext.mongo.impl.codec.json.JsonObjectCodec.useObjectId:Z
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lio/vertx/ext/mongo/impl/codec/json/JsonObjectCodec;
0 4 1 config Lio/vertx/core/json/JsonObject;
MethodParameters:
Name Flags
config
public io.vertx.core.json.JsonObject generateIdIfAbsentFromDocument(io.vertx.core.json.JsonObject);
descriptor: (Lio/vertx/core/json/JsonObject;)Lio/vertx/core/json/JsonObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual io.vertx.ext.mongo.impl.codec.json.JsonObjectCodec.documentHasId:(Lio/vertx/core/json/JsonObject;)Z
ifne 4
1: invokestatic io.vertx.ext.mongo.impl.codec.json.JsonObjectCodec.generateHexObjectId:()Ljava/lang/String;
astore 2
start local 2 2: aload 0
getfield io.vertx.ext.mongo.impl.codec.json.JsonObjectCodec.useObjectId:Z
ifeq 3
aload 1
ldc "_id"
new io.vertx.core.json.JsonObject
dup
invokespecial io.vertx.core.json.JsonObject.<init>:()V
ldc "$oid"
aload 2
invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Ljava/lang/String;)Lio/vertx/core/json/JsonObject;
invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Lio/vertx/core/json/JsonObject;)Lio/vertx/core/json/JsonObject;
pop
goto 4
3: StackMap locals: java.lang.String
StackMap stack:
aload 1
ldc "_id"
aload 2
invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Ljava/lang/String;)Lio/vertx/core/json/JsonObject;
pop
end local 2 4: StackMap locals:
StackMap stack:
aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lio/vertx/ext/mongo/impl/codec/json/JsonObjectCodec;
0 5 1 json Lio/vertx/core/json/JsonObject;
2 4 2 value Ljava/lang/String;
MethodParameters:
Name Flags
json
public static java.lang.String generateHexObjectId();
descriptor: ()Ljava/lang/String;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=0
0: new org.bson.types.ObjectId
dup
invokespecial org.bson.types.ObjectId.<init>:()V
astore 0
start local 0 1: aload 0
invokevirtual org.bson.types.ObjectId.toHexString:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
1 2 0 id Lorg/bson/types/ObjectId;
public boolean documentHasId(io.vertx.core.json.JsonObject);
descriptor: (Lio/vertx/core/json/JsonObject;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
ldc "_id"
invokevirtual io.vertx.core.json.JsonObject.containsKey:(Ljava/lang/String;)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/vertx/ext/mongo/impl/codec/json/JsonObjectCodec;
0 1 1 json Lio/vertx/core/json/JsonObject;
MethodParameters:
Name Flags
json
public org.bson.BsonValue getDocumentId(io.vertx.core.json.JsonObject);
descriptor: (Lio/vertx/core/json/JsonObject;)Lorg/bson/BsonValue;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual io.vertx.ext.mongo.impl.codec.json.JsonObjectCodec.documentHasId:(Lio/vertx/core/json/JsonObject;)Z
ifne 2
1: new java.lang.IllegalStateException
dup
ldc "The document does not contain an _id"
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 1
ldc "_id"
invokevirtual io.vertx.core.json.JsonObject.getValue:(Ljava/lang/String;)Ljava/lang/Object;
astore 2
start local 2 3: aload 2
instanceof java.lang.String
ifeq 5
4: new org.bson.BsonString
dup
aload 2
checkcast java.lang.String
invokespecial org.bson.BsonString.<init>:(Ljava/lang/String;)V
areturn
5: StackMap locals: java.lang.Object
StackMap stack:
new org.bson.BsonDocument
dup
invokespecial org.bson.BsonDocument.<init>:()V
astore 3
start local 3 6: new org.bson.BsonDocumentWriter
dup
aload 3
invokespecial org.bson.BsonDocumentWriter.<init>:(Lorg/bson/BsonDocument;)V
astore 4
start local 4 7: aload 4
invokeinterface org.bson.BsonWriter.writeStartDocument:()V
8: aload 4
ldc "_id"
invokeinterface org.bson.BsonWriter.writeName:(Ljava/lang/String;)V
9: aload 0
aload 4
aconst_null
aload 2
invokestatic org.bson.codecs.EncoderContext.builder:()Lorg/bson/codecs/EncoderContext$Builder;
invokevirtual org.bson.codecs.EncoderContext$Builder.build:()Lorg/bson/codecs/EncoderContext;
invokevirtual io.vertx.ext.mongo.impl.codec.json.JsonObjectCodec.writeValue:(Lorg/bson/BsonWriter;Ljava/lang/String;Ljava/lang/Object;Lorg/bson/codecs/EncoderContext;)V
10: aload 4
invokeinterface org.bson.BsonWriter.writeEndDocument:()V
11: aload 3
ldc "_id"
invokevirtual org.bson.BsonDocument.get:(Ljava/lang/Object;)Lorg/bson/BsonValue;
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lio/vertx/ext/mongo/impl/codec/json/JsonObjectCodec;
0 12 1 json Lio/vertx/core/json/JsonObject;
3 12 2 id Ljava/lang/Object;
6 12 3 idHoldingDocument Lorg/bson/BsonDocument;
7 12 4 writer Lorg/bson/BsonWriter;
MethodParameters:
Name Flags
json
public java.lang.Class<io.vertx.core.json.JsonObject> getEncoderClass();
descriptor: ()Ljava/lang/Class;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: ldc Lio/vertx/core/json/JsonObject;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/vertx/ext/mongo/impl/codec/json/JsonObjectCodec;
Signature: ()Ljava/lang/Class<Lio/vertx/core/json/JsonObject;>;
protected boolean isObjectIdInstance(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
instanceof io.vertx.core.json.JsonObject
ifeq 2
aload 1
checkcast io.vertx.core.json.JsonObject
ldc "$oid"
invokevirtual io.vertx.core.json.JsonObject.containsKey:(Ljava/lang/String;)Z
ifeq 2
1: iconst_1
ireturn
2: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lio/vertx/ext/mongo/impl/codec/json/JsonObjectCodec;
0 3 1 instance Ljava/lang/Object;
MethodParameters:
Name Flags
instance
protected void beforeFields(io.vertx.core.json.JsonObject, java.util.function.BiConsumer<java.lang.String, java.lang.Object>);
descriptor: (Lio/vertx/core/json/JsonObject;Ljava/util/function/BiConsumer;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
ldc "_id"
invokevirtual io.vertx.core.json.JsonObject.containsKey:(Ljava/lang/String;)Z
ifeq 2
1: aload 2
ldc "_id"
aload 1
ldc "_id"
invokevirtual io.vertx.core.json.JsonObject.getValue:(Ljava/lang/String;)Ljava/lang/Object;
invokeinterface java.util.function.BiConsumer.accept:(Ljava/lang/Object;Ljava/lang/Object;)V
2: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lio/vertx/ext/mongo/impl/codec/json/JsonObjectCodec;
0 3 1 object Lio/vertx/core/json/JsonObject;
0 3 2 objectConsumer Ljava/util/function/BiConsumer<Ljava/lang/String;Ljava/lang/Object;>;
Signature: (Lio/vertx/core/json/JsonObject;Ljava/util/function/BiConsumer<Ljava/lang/String;Ljava/lang/Object;>;)V
MethodParameters:
Name Flags
object
objectConsumer
protected io.vertx.core.json.JsonObject newObject();
descriptor: ()Lio/vertx/core/json/JsonObject;
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=1, args_size=1
start local 0 0: new io.vertx.core.json.JsonObject
dup
invokespecial io.vertx.core.json.JsonObject.<init>:()V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/vertx/ext/mongo/impl/codec/json/JsonObjectCodec;
protected void add(io.vertx.core.json.JsonObject, java.lang.String, java.lang.Object);
descriptor: (Lio/vertx/core/json/JsonObject;Ljava/lang/String;Ljava/lang/Object;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
aload 2
aload 3
invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Ljava/lang/Object;)Lio/vertx/core/json/JsonObject;
pop
1: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/vertx/ext/mongo/impl/codec/json/JsonObjectCodec;
0 2 1 object Lio/vertx/core/json/JsonObject;
0 2 2 name Ljava/lang/String;
0 2 3 value Ljava/lang/Object;
MethodParameters:
Name Flags
object
name
value
protected boolean isObjectInstance(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
instanceof io.vertx.core.json.JsonObject
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/vertx/ext/mongo/impl/codec/json/JsonObjectCodec;
0 1 1 instance Ljava/lang/Object;
MethodParameters:
Name Flags
instance
protected void forEach(io.vertx.core.json.JsonObject, java.util.function.BiConsumer<java.lang.String, java.lang.Object>);
descriptor: (Lio/vertx/core/json/JsonObject;Ljava/util/function/BiConsumer;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
aload 2
invokedynamic accept(Ljava/util/function/BiConsumer;)Ljava/util/function/Consumer;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)V
io/vertx/ext/mongo/impl/codec/json/JsonObjectCodec.lambda$0(Ljava/util/function/BiConsumer;Ljava/util/Map$Entry;)V (6)
(Ljava/util/Map$Entry;)V
invokevirtual io.vertx.core.json.JsonObject.forEach:(Ljava/util/function/Consumer;)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/vertx/ext/mongo/impl/codec/json/JsonObjectCodec;
0 2 1 object Lio/vertx/core/json/JsonObject;
0 2 2 objectConsumer Ljava/util/function/BiConsumer<Ljava/lang/String;Ljava/lang/Object;>;
Signature: (Lio/vertx/core/json/JsonObject;Ljava/util/function/BiConsumer<Ljava/lang/String;Ljava/lang/Object;>;)V
MethodParameters:
Name Flags
object
objectConsumer
protected io.vertx.core.json.JsonArray newArray();
descriptor: ()Lio/vertx/core/json/JsonArray;
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=1, args_size=1
start local 0 0: new io.vertx.core.json.JsonArray
dup
invokespecial io.vertx.core.json.JsonArray.<init>:()V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/vertx/ext/mongo/impl/codec/json/JsonObjectCodec;
protected void add(io.vertx.core.json.JsonArray, java.lang.Object);
descriptor: (Lio/vertx/core/json/JsonArray;Ljava/lang/Object;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 2
ifnull 3
1: aload 1
aload 2
invokevirtual io.vertx.core.json.JsonArray.add:(Ljava/lang/Object;)Lio/vertx/core/json/JsonArray;
pop
2: goto 4
3: StackMap locals:
StackMap stack:
aload 1
invokevirtual io.vertx.core.json.JsonArray.addNull:()Lio/vertx/core/json/JsonArray;
pop
4: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lio/vertx/ext/mongo/impl/codec/json/JsonObjectCodec;
0 5 1 array Lio/vertx/core/json/JsonArray;
0 5 2 value Ljava/lang/Object;
MethodParameters:
Name Flags
array
value
protected boolean isArrayInstance(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
instanceof io.vertx.core.json.JsonArray
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/vertx/ext/mongo/impl/codec/json/JsonObjectCodec;
0 1 1 instance Ljava/lang/Object;
MethodParameters:
Name Flags
instance
protected void forEach(io.vertx.core.json.JsonArray, java.util.function.Consumer<java.lang.Object>);
descriptor: (Lio/vertx/core/json/JsonArray;Ljava/util/function/Consumer;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
aload 2
invokevirtual io.vertx.core.json.JsonArray.forEach:(Ljava/util/function/Consumer;)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/vertx/ext/mongo/impl/codec/json/JsonObjectCodec;
0 2 1 array Lio/vertx/core/json/JsonArray;
0 2 2 arrayConsumer Ljava/util/function/Consumer<Ljava/lang/Object;>;
Signature: (Lio/vertx/core/json/JsonArray;Ljava/util/function/Consumer<Ljava/lang/Object;>;)V
MethodParameters:
Name Flags
array
arrayConsumer
protected org.bson.BsonType getBsonType(java.lang.Object);
descriptor: (Ljava/lang/Object;)Lorg/bson/BsonType;
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=4, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokespecial io.vertx.ext.mongo.impl.codec.json.AbstractJsonCodec.getBsonType:(Ljava/lang/Object;)Lorg/bson/BsonType;
astore 2
start local 2 1: aload 2
getstatic org.bson.BsonType.DOCUMENT:Lorg/bson/BsonType;
if_acmpne 11
2: aload 1
checkcast io.vertx.core.json.JsonObject
astore 3
start local 3 3: aload 3
ldc "$date"
invokevirtual io.vertx.core.json.JsonObject.containsKey:(Ljava/lang/String;)Z
ifeq 5
4: getstatic org.bson.BsonType.DATE_TIME:Lorg/bson/BsonType;
areturn
5: StackMap locals: org.bson.BsonType io.vertx.core.json.JsonObject
StackMap stack:
aload 3
ldc "$oid"
invokevirtual io.vertx.core.json.JsonObject.containsKey:(Ljava/lang/String;)Z
ifeq 7
6: getstatic org.bson.BsonType.OBJECT_ID:Lorg/bson/BsonType;
areturn
7: StackMap locals:
StackMap stack:
aload 3
ldc "$binary"
invokevirtual io.vertx.core.json.JsonObject.containsKey:(Ljava/lang/String;)Z
ifeq 9
8: getstatic org.bson.BsonType.BINARY:Lorg/bson/BsonType;
areturn
9: StackMap locals:
StackMap stack:
aload 3
ldc "$timestamp"
invokevirtual io.vertx.core.json.JsonObject.containsKey:(Ljava/lang/String;)Z
ifeq 11
10: getstatic org.bson.BsonType.TIMESTAMP:Lorg/bson/BsonType;
areturn
end local 3 11: StackMap locals:
StackMap stack:
aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lio/vertx/ext/mongo/impl/codec/json/JsonObjectCodec;
0 12 1 value Ljava/lang/Object;
1 12 2 type Lorg/bson/BsonType;
3 11 3 obj Lio/vertx/core/json/JsonObject;
MethodParameters:
Name Flags
value
protected java.lang.Object readObjectId(org.bson.BsonReader, org.bson.codecs.DecoderContext);
descriptor: (Lorg/bson/BsonReader;Lorg/bson/codecs/DecoderContext;)Ljava/lang/Object;
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: new io.vertx.core.json.JsonObject
dup
invokespecial io.vertx.core.json.JsonObject.<init>:()V
ldc "$oid"
aload 1
invokeinterface org.bson.BsonReader.readObjectId:()Lorg/bson/types/ObjectId;
invokevirtual org.bson.types.ObjectId.toHexString:()Ljava/lang/String;
invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Ljava/lang/String;)Lio/vertx/core/json/JsonObject;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/vertx/ext/mongo/impl/codec/json/JsonObjectCodec;
0 1 1 reader Lorg/bson/BsonReader;
0 1 2 ctx Lorg/bson/codecs/DecoderContext;
MethodParameters:
Name Flags
reader
ctx
protected void writeObjectId(org.bson.BsonWriter, java.lang.String, java.lang.Object, org.bson.codecs.EncoderContext);
descriptor: (Lorg/bson/BsonWriter;Ljava/lang/String;Ljava/lang/Object;Lorg/bson/codecs/EncoderContext;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=7, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 3
checkcast io.vertx.core.json.JsonObject
astore 5
start local 5 1: new org.bson.types.ObjectId
dup
aload 5
ldc "$oid"
invokevirtual io.vertx.core.json.JsonObject.getString:(Ljava/lang/String;)Ljava/lang/String;
invokespecial org.bson.types.ObjectId.<init>:(Ljava/lang/String;)V
astore 6
start local 6 2: aload 1
aload 6
invokeinterface org.bson.BsonWriter.writeObjectId:(Lorg/bson/types/ObjectId;)V
3: return
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lio/vertx/ext/mongo/impl/codec/json/JsonObjectCodec;
0 4 1 writer Lorg/bson/BsonWriter;
0 4 2 name Ljava/lang/String;
0 4 3 value Ljava/lang/Object;
0 4 4 ctx Lorg/bson/codecs/EncoderContext;
1 4 5 json Lio/vertx/core/json/JsonObject;
2 4 6 objectId Lorg/bson/types/ObjectId;
MethodParameters:
Name Flags
writer
name
value
ctx
protected java.lang.Object readDateTime(org.bson.BsonReader, org.bson.codecs.DecoderContext);
descriptor: (Lorg/bson/BsonReader;Lorg/bson/codecs/DecoderContext;)Ljava/lang/Object;
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=4, args_size=3
start local 0 start local 1 start local 2 0: new io.vertx.core.json.JsonObject
dup
invokespecial io.vertx.core.json.JsonObject.<init>:()V
astore 3
start local 3 1: aload 3
ldc "$date"
2: aload 1
invokeinterface org.bson.BsonReader.readDateTime:()J
invokestatic java.time.Instant.ofEpochMilli:(J)Ljava/time/Instant;
getstatic java.time.ZoneOffset.UTC:Ljava/time/ZoneOffset;
invokestatic java.time.OffsetDateTime.ofInstant:(Ljava/time/Instant;Ljava/time/ZoneId;)Ljava/time/OffsetDateTime;
getstatic java.time.format.DateTimeFormatter.ISO_OFFSET_DATE_TIME:Ljava/time/format/DateTimeFormatter;
invokevirtual java.time.OffsetDateTime.format:(Ljava/time/format/DateTimeFormatter;)Ljava/lang/String;
3: invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Ljava/lang/String;)Lio/vertx/core/json/JsonObject;
pop
4: aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lio/vertx/ext/mongo/impl/codec/json/JsonObjectCodec;
0 5 1 reader Lorg/bson/BsonReader;
0 5 2 ctx Lorg/bson/codecs/DecoderContext;
1 5 3 result Lio/vertx/core/json/JsonObject;
MethodParameters:
Name Flags
reader
ctx
protected void writeDateTime(org.bson.BsonWriter, java.lang.String, java.lang.Object, org.bson.codecs.EncoderContext);
descriptor: (Lorg/bson/BsonWriter;Ljava/lang/String;Ljava/lang/Object;Lorg/bson/codecs/EncoderContext;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 1
aload 3
checkcast io.vertx.core.json.JsonObject
ldc "$date"
invokevirtual io.vertx.core.json.JsonObject.getString:(Ljava/lang/String;)Ljava/lang/String;
invokestatic java.time.OffsetDateTime.parse:(Ljava/lang/CharSequence;)Ljava/time/OffsetDateTime;
invokevirtual java.time.OffsetDateTime.toInstant:()Ljava/time/Instant;
invokevirtual java.time.Instant.toEpochMilli:()J
invokeinterface org.bson.BsonWriter.writeDateTime:(J)V
1: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/vertx/ext/mongo/impl/codec/json/JsonObjectCodec;
0 2 1 writer Lorg/bson/BsonWriter;
0 2 2 name Ljava/lang/String;
0 2 3 value Ljava/lang/Object;
0 2 4 ctx Lorg/bson/codecs/EncoderContext;
MethodParameters:
Name Flags
writer
name
value
ctx
protected java.lang.Object readBinary(org.bson.BsonReader, org.bson.codecs.DecoderContext);
descriptor: (Lorg/bson/BsonReader;Lorg/bson/codecs/DecoderContext;)Ljava/lang/Object;
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=5, args_size=3
start local 0 start local 1 start local 2 0: new io.vertx.core.json.JsonObject
dup
invokespecial io.vertx.core.json.JsonObject.<init>:()V
astore 3
start local 3 1: aload 1
invokeinterface org.bson.BsonReader.readBinaryData:()Lorg/bson/BsonBinary;
astore 4
start local 4 2: aload 3
ldc "$binary"
aload 4
invokevirtual org.bson.BsonBinary.getData:()[B
invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;[B)Lio/vertx/core/json/JsonObject;
3: ldc "$type"
aload 4
invokevirtual org.bson.BsonBinary.getType:()B
invokestatic java.lang.Byte.valueOf:(B)Ljava/lang/Byte;
invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Ljava/lang/Object;)Lio/vertx/core/json/JsonObject;
pop
4: aload 3
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lio/vertx/ext/mongo/impl/codec/json/JsonObjectCodec;
0 5 1 reader Lorg/bson/BsonReader;
0 5 2 ctx Lorg/bson/codecs/DecoderContext;
1 5 3 result Lio/vertx/core/json/JsonObject;
2 5 4 bsonBinary Lorg/bson/BsonBinary;
MethodParameters:
Name Flags
reader
ctx
protected void writeBinary(org.bson.BsonWriter, java.lang.String, java.lang.Object, org.bson.codecs.EncoderContext);
descriptor: (Lorg/bson/BsonWriter;Ljava/lang/String;Ljava/lang/Object;Lorg/bson/codecs/EncoderContext;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=8, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 3
checkcast io.vertx.core.json.JsonObject
astore 5
start local 5 1: aload 5
ldc "$type"
invokevirtual io.vertx.core.json.JsonObject.getInteger:(Ljava/lang/String;)Ljava/lang/Integer;
invokestatic java.util.Optional.ofNullable:(Ljava/lang/Object;)Ljava/util/Optional;
2: 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;
java/lang/Integer.byteValue()B (5)
(Ljava/lang/Integer;)Ljava/lang/Byte;
invokevirtual java.util.Optional.map:(Ljava/util/function/Function;)Ljava/util/Optional;
3: getstatic org.bson.BsonBinarySubType.BINARY:Lorg/bson/BsonBinarySubType;
invokevirtual org.bson.BsonBinarySubType.getValue:()B
invokestatic java.lang.Byte.valueOf:(B)Ljava/lang/Byte;
invokevirtual java.util.Optional.orElse:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Byte
invokevirtual java.lang.Byte.byteValue:()B
4: istore 6
start local 6 5: new org.bson.BsonBinary
dup
iload 6
aload 5
ldc "$binary"
invokevirtual io.vertx.core.json.JsonObject.getBinary:(Ljava/lang/String;)[B
invokespecial org.bson.BsonBinary.<init>:(B[B)V
astore 7
start local 7 6: aload 1
aload 7
invokeinterface org.bson.BsonWriter.writeBinaryData:(Lorg/bson/BsonBinary;)V
7: return
end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lio/vertx/ext/mongo/impl/codec/json/JsonObjectCodec;
0 8 1 writer Lorg/bson/BsonWriter;
0 8 2 name Ljava/lang/String;
0 8 3 value Ljava/lang/Object;
0 8 4 ctx Lorg/bson/codecs/EncoderContext;
1 8 5 binaryJsonObject Lio/vertx/core/json/JsonObject;
5 8 6 type B
6 8 7 bson Lorg/bson/BsonBinary;
MethodParameters:
Name Flags
writer
name
value
ctx
protected java.lang.Object readTimeStamp(org.bson.BsonReader, org.bson.codecs.DecoderContext);
descriptor: (Lorg/bson/BsonReader;Lorg/bson/codecs/DecoderContext;)Ljava/lang/Object;
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=6, args_size=3
start local 0 start local 1 start local 2 0: new io.vertx.core.json.JsonObject
dup
invokespecial io.vertx.core.json.JsonObject.<init>:()V
astore 3
start local 3 1: new io.vertx.core.json.JsonObject
dup
invokespecial io.vertx.core.json.JsonObject.<init>:()V
astore 4
start local 4 2: aload 1
invokeinterface org.bson.BsonReader.readTimestamp:()Lorg/bson/BsonTimestamp;
astore 5
start local 5 3: aload 4
ldc "t"
aload 5
invokevirtual org.bson.BsonTimestamp.getTime:()I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Ljava/lang/Integer;)Lio/vertx/core/json/JsonObject;
pop
4: aload 4
ldc "i"
aload 5
invokevirtual org.bson.BsonTimestamp.getInc:()I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Ljava/lang/Integer;)Lio/vertx/core/json/JsonObject;
pop
5: aload 3
ldc "$timestamp"
aload 4
invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Lio/vertx/core/json/JsonObject;)Lio/vertx/core/json/JsonObject;
pop
6: aload 3
areturn
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lio/vertx/ext/mongo/impl/codec/json/JsonObjectCodec;
0 7 1 reader Lorg/bson/BsonReader;
0 7 2 ctx Lorg/bson/codecs/DecoderContext;
1 7 3 result Lio/vertx/core/json/JsonObject;
2 7 4 timeStampComponent Lio/vertx/core/json/JsonObject;
3 7 5 bson Lorg/bson/BsonTimestamp;
MethodParameters:
Name Flags
reader
ctx
protected void writeTimeStamp(org.bson.BsonWriter, java.lang.String, java.lang.Object, org.bson.codecs.EncoderContext);
descriptor: (Lorg/bson/BsonWriter;Ljava/lang/String;Ljava/lang/Object;Lorg/bson/codecs/EncoderContext;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=7, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 3
checkcast io.vertx.core.json.JsonObject
ldc "$timestamp"
invokevirtual io.vertx.core.json.JsonObject.getJsonObject:(Ljava/lang/String;)Lio/vertx/core/json/JsonObject;
astore 5
start local 5 1: new org.bson.BsonTimestamp
dup
aload 5
ldc "t"
invokevirtual io.vertx.core.json.JsonObject.getInteger:(Ljava/lang/String;)Ljava/lang/Integer;
invokevirtual java.lang.Integer.intValue:()I
2: aload 5
ldc "i"
invokevirtual io.vertx.core.json.JsonObject.getInteger:(Ljava/lang/String;)Ljava/lang/Integer;
invokevirtual java.lang.Integer.intValue:()I
3: invokespecial org.bson.BsonTimestamp.<init>:(II)V
astore 6
start local 6 4: aload 1
aload 6
invokeinterface org.bson.BsonWriter.writeTimestamp:(Lorg/bson/BsonTimestamp;)V
5: return
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lio/vertx/ext/mongo/impl/codec/json/JsonObjectCodec;
0 6 1 writer Lorg/bson/BsonWriter;
0 6 2 name Ljava/lang/String;
0 6 3 value Ljava/lang/Object;
0 6 4 ctx Lorg/bson/codecs/EncoderContext;
1 6 5 timeStamp Lio/vertx/core/json/JsonObject;
4 6 6 bson Lorg/bson/BsonTimestamp;
MethodParameters:
Name Flags
writer
name
value
ctx
public java.lang.Object generateIdIfAbsentFromDocument(java.lang.Object);
descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
checkcast io.vertx.core.json.JsonObject
invokevirtual io.vertx.ext.mongo.impl.codec.json.JsonObjectCodec.generateIdIfAbsentFromDocument:(Lio/vertx/core/json/JsonObject;)Lio/vertx/core/json/JsonObject;
areturn
LocalVariableTable:
Start End Slot Name Signature
protected java.lang.Object newArray();
descriptor: ()Ljava/lang/Object;
flags: (0x1044) ACC_PROTECTED, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
0: aload 0
invokevirtual io.vertx.ext.mongo.impl.codec.json.JsonObjectCodec.newArray:()Lio/vertx/core/json/JsonArray;
areturn
LocalVariableTable:
Start End Slot Name Signature
public org.bson.BsonValue getDocumentId(java.lang.Object);
descriptor: (Ljava/lang/Object;)Lorg/bson/BsonValue;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
checkcast io.vertx.core.json.JsonObject
invokevirtual io.vertx.ext.mongo.impl.codec.json.JsonObjectCodec.getDocumentId:(Lio/vertx/core/json/JsonObject;)Lorg/bson/BsonValue;
areturn
LocalVariableTable:
Start End Slot Name Signature
public boolean documentHasId(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
checkcast io.vertx.core.json.JsonObject
invokevirtual io.vertx.ext.mongo.impl.codec.json.JsonObjectCodec.documentHasId:(Lio/vertx/core/json/JsonObject;)Z
ireturn
LocalVariableTable:
Start End Slot Name Signature
protected void add(java.lang.Object, java.lang.Object);
descriptor: (Ljava/lang/Object;Ljava/lang/Object;)V
flags: (0x1044) ACC_PROTECTED, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=3, locals=3, args_size=3
0: aload 0
aload 1
checkcast io.vertx.core.json.JsonArray
aload 2
invokevirtual io.vertx.ext.mongo.impl.codec.json.JsonObjectCodec.add:(Lio/vertx/core/json/JsonArray;Ljava/lang/Object;)V
return
LocalVariableTable:
Start End Slot Name Signature
protected void add(java.lang.Object, java.lang.String, java.lang.Object);
descriptor: (Ljava/lang/Object;Ljava/lang/String;Ljava/lang/Object;)V
flags: (0x1044) ACC_PROTECTED, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=4, locals=4, args_size=4
0: aload 0
aload 1
checkcast io.vertx.core.json.JsonObject
aload 2
aload 3
invokevirtual io.vertx.ext.mongo.impl.codec.json.JsonObjectCodec.add:(Lio/vertx/core/json/JsonObject;Ljava/lang/String;Ljava/lang/Object;)V
return
LocalVariableTable:
Start End Slot Name Signature
protected void beforeFields(java.lang.Object, java.util.function.BiConsumer);
descriptor: (Ljava/lang/Object;Ljava/util/function/BiConsumer;)V
flags: (0x1044) ACC_PROTECTED, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=3, locals=3, args_size=3
0: aload 0
aload 1
checkcast io.vertx.core.json.JsonObject
aload 2
invokevirtual io.vertx.ext.mongo.impl.codec.json.JsonObjectCodec.beforeFields:(Lio/vertx/core/json/JsonObject;Ljava/util/function/BiConsumer;)V
return
LocalVariableTable:
Start End Slot Name Signature
protected java.lang.Object newObject();
descriptor: ()Ljava/lang/Object;
flags: (0x1044) ACC_PROTECTED, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
0: aload 0
invokevirtual io.vertx.ext.mongo.impl.codec.json.JsonObjectCodec.newObject:()Lio/vertx/core/json/JsonObject;
areturn
LocalVariableTable:
Start End Slot Name Signature
protected void forEach(java.lang.Object, java.util.function.Consumer);
descriptor: (Ljava/lang/Object;Ljava/util/function/Consumer;)V
flags: (0x1044) ACC_PROTECTED, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=3, locals=3, args_size=3
0: aload 0
aload 1
checkcast io.vertx.core.json.JsonArray
aload 2
invokevirtual io.vertx.ext.mongo.impl.codec.json.JsonObjectCodec.forEach:(Lio/vertx/core/json/JsonArray;Ljava/util/function/Consumer;)V
return
LocalVariableTable:
Start End Slot Name Signature
protected void forEach(java.lang.Object, java.util.function.BiConsumer);
descriptor: (Ljava/lang/Object;Ljava/util/function/BiConsumer;)V
flags: (0x1044) ACC_PROTECTED, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=3, locals=3, args_size=3
0: aload 0
aload 1
checkcast io.vertx.core.json.JsonObject
aload 2
invokevirtual io.vertx.ext.mongo.impl.codec.json.JsonObjectCodec.forEach:(Lio/vertx/core/json/JsonObject;Ljava/util/function/BiConsumer;)V
return
LocalVariableTable:
Start End Slot Name Signature
private static void lambda$0(java.util.function.BiConsumer, java.util.Map$Entry);
descriptor: (Ljava/util/function/BiConsumer;Ljava/util/Map$Entry;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=2, args_size=2
start local 1 0: aload 0
aload 1
invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
checkcast java.lang.String
aload 1
invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
invokeinterface java.util.function.BiConsumer.accept:(Ljava/lang/Object;Ljava/lang/Object;)V
1: return
end local 1 LocalVariableTable:
Start End Slot Name Signature
0 2 1 entry Ljava/util/Map$Entry<Ljava/lang/String;Ljava/lang/Object;>;
}
Signature: Lio/vertx/ext/mongo/impl/codec/json/AbstractJsonCodec<Lio/vertx/core/json/JsonObject;Lio/vertx/core/json/JsonArray;>;Lorg/bson/codecs/CollectibleCodec<Lio/vertx/core/json/JsonObject;>;
SourceFile: "JsonObjectCodec.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
public final Builder = org.bson.codecs.EncoderContext$Builder of org.bson.codecs.EncoderContext