public final class com.mongodb.client.gridfs.codecs.GridFSFileCodec implements org.bson.codecs.Codec<com.mongodb.client.gridfs.model.GridFSFile>
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: com.mongodb.client.gridfs.codecs.GridFSFileCodec
super_class: java.lang.Object
{
private static final java.util.List<java.lang.String> VALID_FIELDS;
descriptor: Ljava/util/List;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Signature: Ljava/util/List<Ljava/lang/String;>;
private final org.bson.codecs.Codec<org.bson.Document> documentCodec;
descriptor: Lorg/bson/codecs/Codec;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Lorg/bson/codecs/Codec<Lorg/bson/Document;>;
private final org.bson.codecs.Codec<org.bson.BsonDocument> bsonDocumentCodec;
descriptor: Lorg/bson/codecs/Codec;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Lorg/bson/codecs/Codec<Lorg/bson/BsonDocument;>;
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=0, args_size=0
0: bipush 7
anewarray java.lang.String
dup
iconst_0
ldc "_id"
aastore
dup
iconst_1
ldc "filename"
aastore
dup
iconst_2
ldc "length"
aastore
dup
iconst_3
ldc "chunkSize"
aastore
dup
iconst_4
ldc "uploadDate"
aastore
dup
iconst_5
ldc "md5"
aastore
dup
bipush 6
ldc "metadata"
aastore
invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
putstatic com.mongodb.client.gridfs.codecs.GridFSFileCodec.VALID_FIELDS:Ljava/util/List;
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>(org.bson.codecs.configuration.CodecRegistry);
descriptor: (Lorg/bson/codecs/configuration/CodecRegistry;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
ldc "DocumentCodec"
ldc "registry"
aload 1
invokestatic com.mongodb.assertions.Assertions.notNull:(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.bson.codecs.configuration.CodecRegistry
ldc Lorg/bson/Document;
invokeinterface org.bson.codecs.configuration.CodecRegistry.get:(Ljava/lang/Class;)Lorg/bson/codecs/Codec;
invokestatic com.mongodb.assertions.Assertions.notNull:(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.bson.codecs.Codec
putfield com.mongodb.client.gridfs.codecs.GridFSFileCodec.documentCodec:Lorg/bson/codecs/Codec;
2: aload 0
ldc "BsonDocumentCodec"
aload 1
ldc Lorg/bson/BsonDocument;
invokeinterface org.bson.codecs.configuration.CodecRegistry.get:(Ljava/lang/Class;)Lorg/bson/codecs/Codec;
invokestatic com.mongodb.assertions.Assertions.notNull:(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.bson.codecs.Codec
putfield com.mongodb.client.gridfs.codecs.GridFSFileCodec.bsonDocumentCodec:Lorg/bson/codecs/Codec;
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/mongodb/client/gridfs/codecs/GridFSFileCodec;
0 4 1 registry Lorg/bson/codecs/configuration/CodecRegistry;
MethodParameters:
Name Flags
registry final
public com.mongodb.client.gridfs.model.GridFSFile decode(org.bson.BsonReader, org.bson.codecs.DecoderContext);
descriptor: (Lorg/bson/BsonReader;Lorg/bson/codecs/DecoderContext;)Lcom/mongodb/client/gridfs/model/GridFSFile;
flags: (0x0001) ACC_PUBLIC
Code:
stack=11, locals=15, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield com.mongodb.client.gridfs.codecs.GridFSFileCodec.bsonDocumentCodec:Lorg/bson/codecs/Codec;
aload 1
aload 2
invokeinterface org.bson.codecs.Codec.decode:(Lorg/bson/BsonReader;Lorg/bson/codecs/DecoderContext;)Ljava/lang/Object;
checkcast org.bson.BsonDocument
astore 3
start local 3 1: aload 3
ldc "_id"
invokevirtual org.bson.BsonDocument.get:(Ljava/lang/Object;)Lorg/bson/BsonValue;
astore 4
start local 4 2: aload 3
ldc "filename"
new org.bson.BsonString
dup
ldc ""
invokespecial org.bson.BsonString.<init>:(Ljava/lang/String;)V
invokevirtual org.bson.BsonDocument.get:(Ljava/lang/Object;Lorg/bson/BsonValue;)Lorg/bson/BsonValue;
invokevirtual org.bson.BsonValue.asString:()Lorg/bson/BsonString;
invokevirtual org.bson.BsonString.getValue:()Ljava/lang/String;
astore 5
start local 5 3: aload 3
ldc "length"
invokevirtual org.bson.BsonDocument.getNumber:(Ljava/lang/Object;)Lorg/bson/BsonNumber;
invokevirtual org.bson.BsonNumber.longValue:()J
lstore 6
start local 6 4: aload 3
ldc "chunkSize"
invokevirtual org.bson.BsonDocument.getNumber:(Ljava/lang/Object;)Lorg/bson/BsonNumber;
invokevirtual org.bson.BsonNumber.intValue:()I
istore 8
start local 8 5: new java.util.Date
dup
aload 3
ldc "uploadDate"
invokevirtual org.bson.BsonDocument.getDateTime:(Ljava/lang/Object;)Lorg/bson/BsonDateTime;
invokevirtual org.bson.BsonDateTime.getValue:()J
invokespecial java.util.Date.<init>:(J)V
astore 9
start local 9 6: aload 3
ldc "md5"
invokevirtual org.bson.BsonDocument.containsKey:(Ljava/lang/Object;)Z
ifeq 7
aload 3
ldc "md5"
invokevirtual org.bson.BsonDocument.getString:(Ljava/lang/Object;)Lorg/bson/BsonString;
invokevirtual org.bson.BsonString.getValue:()Ljava/lang/String;
goto 8
StackMap locals: com.mongodb.client.gridfs.codecs.GridFSFileCodec org.bson.BsonReader org.bson.codecs.DecoderContext org.bson.BsonDocument org.bson.BsonValue java.lang.String long int java.util.Date
StackMap stack:
7: aconst_null
StackMap locals:
StackMap stack: java.lang.String
8: astore 10
start local 10 9: aload 3
ldc "metadata"
new org.bson.BsonDocument
dup
invokespecial org.bson.BsonDocument.<init>:()V
invokevirtual org.bson.BsonDocument.getDocument:(Ljava/lang/Object;Lorg/bson/BsonDocument;)Lorg/bson/BsonDocument;
astore 11
start local 11 10: aload 0
aload 11
invokevirtual com.mongodb.client.gridfs.codecs.GridFSFileCodec.asDocumentOrNull:(Lorg/bson/BsonDocument;)Lorg/bson/Document;
astore 12
start local 12 11: getstatic com.mongodb.client.gridfs.codecs.GridFSFileCodec.VALID_FIELDS:Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 14
goto 14
StackMap locals: com.mongodb.client.gridfs.codecs.GridFSFileCodec org.bson.BsonReader org.bson.codecs.DecoderContext org.bson.BsonDocument org.bson.BsonValue java.lang.String long int java.util.Date java.lang.String org.bson.BsonDocument org.bson.Document top java.util.Iterator
StackMap stack:
12: aload 14
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.String
astore 13
start local 13 13: aload 3
aload 13
invokevirtual org.bson.BsonDocument.remove:(Ljava/lang/Object;)Lorg/bson/BsonValue;
pop
end local 13 14: StackMap locals:
StackMap stack:
aload 14
invokeinterface java.util.Iterator.hasNext:()Z
ifne 12
15: aload 0
aload 3
invokevirtual com.mongodb.client.gridfs.codecs.GridFSFileCodec.asDocumentOrNull:(Lorg/bson/BsonDocument;)Lorg/bson/Document;
astore 13
start local 13 16: new com.mongodb.client.gridfs.model.GridFSFile
dup
aload 4
aload 5
lload 6
iload 8
aload 9
aload 10
aload 12
aload 13
invokespecial com.mongodb.client.gridfs.model.GridFSFile.<init>:(Lorg/bson/BsonValue;Ljava/lang/String;JILjava/util/Date;Ljava/lang/String;Lorg/bson/Document;Lorg/bson/Document;)V
areturn
end local 13 end local 12 end local 11 end local 10 end local 9 end local 8 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 17 0 this Lcom/mongodb/client/gridfs/codecs/GridFSFileCodec;
0 17 1 reader Lorg/bson/BsonReader;
0 17 2 decoderContext Lorg/bson/codecs/DecoderContext;
1 17 3 bsonDocument Lorg/bson/BsonDocument;
2 17 4 id Lorg/bson/BsonValue;
3 17 5 filename Ljava/lang/String;
4 17 6 length J
5 17 8 chunkSize I
6 17 9 uploadDate Ljava/util/Date;
9 17 10 md5 Ljava/lang/String;
10 17 11 metadataBsonDocument Lorg/bson/BsonDocument;
11 17 12 optionalMetadata Lorg/bson/Document;
13 14 13 key Ljava/lang/String;
16 17 13 deprecatedExtraElements Lorg/bson/Document;
MethodParameters:
Name Flags
reader final
decoderContext final
public void encode(org.bson.BsonWriter, com.mongodb.client.gridfs.model.GridFSFile, org.bson.codecs.EncoderContext);
descriptor: (Lorg/bson/BsonWriter;Lcom/mongodb/client/gridfs/model/GridFSFile;Lorg/bson/codecs/EncoderContext;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: new org.bson.BsonDocument
dup
invokespecial org.bson.BsonDocument.<init>:()V
astore 4
start local 4 1: aload 4
ldc "_id"
aload 2
invokevirtual com.mongodb.client.gridfs.model.GridFSFile.getId:()Lorg/bson/BsonValue;
invokevirtual org.bson.BsonDocument.put:(Ljava/lang/String;Lorg/bson/BsonValue;)Lorg/bson/BsonValue;
pop
2: aload 4
ldc "filename"
new org.bson.BsonString
dup
aload 2
invokevirtual com.mongodb.client.gridfs.model.GridFSFile.getFilename:()Ljava/lang/String;
invokespecial org.bson.BsonString.<init>:(Ljava/lang/String;)V
invokevirtual org.bson.BsonDocument.put:(Ljava/lang/String;Lorg/bson/BsonValue;)Lorg/bson/BsonValue;
pop
3: aload 4
ldc "length"
new org.bson.BsonInt64
dup
aload 2
invokevirtual com.mongodb.client.gridfs.model.GridFSFile.getLength:()J
invokespecial org.bson.BsonInt64.<init>:(J)V
invokevirtual org.bson.BsonDocument.put:(Ljava/lang/String;Lorg/bson/BsonValue;)Lorg/bson/BsonValue;
pop
4: aload 4
ldc "chunkSize"
new org.bson.BsonInt32
dup
aload 2
invokevirtual com.mongodb.client.gridfs.model.GridFSFile.getChunkSize:()I
invokespecial org.bson.BsonInt32.<init>:(I)V
invokevirtual org.bson.BsonDocument.put:(Ljava/lang/String;Lorg/bson/BsonValue;)Lorg/bson/BsonValue;
pop
5: aload 4
ldc "uploadDate"
new org.bson.BsonDateTime
dup
aload 2
invokevirtual com.mongodb.client.gridfs.model.GridFSFile.getUploadDate:()Ljava/util/Date;
invokevirtual java.util.Date.getTime:()J
invokespecial org.bson.BsonDateTime.<init>:(J)V
invokevirtual org.bson.BsonDocument.put:(Ljava/lang/String;Lorg/bson/BsonValue;)Lorg/bson/BsonValue;
pop
6: aload 2
invokevirtual com.mongodb.client.gridfs.model.GridFSFile.getMD5:()Ljava/lang/String;
ifnull 8
7: aload 4
ldc "md5"
new org.bson.BsonString
dup
aload 2
invokevirtual com.mongodb.client.gridfs.model.GridFSFile.getMD5:()Ljava/lang/String;
invokespecial org.bson.BsonString.<init>:(Ljava/lang/String;)V
invokevirtual org.bson.BsonDocument.put:(Ljava/lang/String;Lorg/bson/BsonValue;)Lorg/bson/BsonValue;
pop
8: StackMap locals: org.bson.BsonDocument
StackMap stack:
aload 2
invokevirtual com.mongodb.client.gridfs.model.GridFSFile.getMetadata:()Lorg/bson/Document;
astore 5
start local 5 9: aload 5
ifnull 11
10: aload 4
ldc "metadata"
new org.bson.BsonDocumentWrapper
dup
aload 5
aload 0
getfield com.mongodb.client.gridfs.codecs.GridFSFileCodec.documentCodec:Lorg/bson/codecs/Codec;
invokespecial org.bson.BsonDocumentWrapper.<init>:(Ljava/lang/Object;Lorg/bson/codecs/Encoder;)V
invokevirtual org.bson.BsonDocument.put:(Ljava/lang/String;Lorg/bson/BsonValue;)Lorg/bson/BsonValue;
pop
11: StackMap locals: org.bson.Document
StackMap stack:
aload 2
invokevirtual com.mongodb.client.gridfs.model.GridFSFile.getExtraElements:()Lorg/bson/Document;
astore 6
start local 6 12: aload 6
ifnull 14
13: aload 4
new org.bson.BsonDocumentWrapper
dup
aload 6
aload 0
getfield com.mongodb.client.gridfs.codecs.GridFSFileCodec.documentCodec:Lorg/bson/codecs/Codec;
invokespecial org.bson.BsonDocumentWrapper.<init>:(Ljava/lang/Object;Lorg/bson/codecs/Encoder;)V
invokevirtual org.bson.BsonDocument.putAll:(Ljava/util/Map;)V
14: StackMap locals: org.bson.Document
StackMap stack:
aload 0
getfield com.mongodb.client.gridfs.codecs.GridFSFileCodec.bsonDocumentCodec:Lorg/bson/codecs/Codec;
aload 1
aload 4
aload 3
invokeinterface org.bson.codecs.Codec.encode:(Lorg/bson/BsonWriter;Ljava/lang/Object;Lorg/bson/codecs/EncoderContext;)V
15: 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 16 0 this Lcom/mongodb/client/gridfs/codecs/GridFSFileCodec;
0 16 1 writer Lorg/bson/BsonWriter;
0 16 2 value Lcom/mongodb/client/gridfs/model/GridFSFile;
0 16 3 encoderContext Lorg/bson/codecs/EncoderContext;
1 16 4 bsonDocument Lorg/bson/BsonDocument;
9 16 5 metadata Lorg/bson/Document;
12 16 6 extraElements Lorg/bson/Document;
MethodParameters:
Name Flags
writer final
value final
encoderContext final
public java.lang.Class<com.mongodb.client.gridfs.model.GridFSFile> getEncoderClass();
descriptor: ()Ljava/lang/Class;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: ldc Lcom/mongodb/client/gridfs/model/GridFSFile;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/mongodb/client/gridfs/codecs/GridFSFileCodec;
Signature: ()Ljava/lang/Class<Lcom/mongodb/client/gridfs/model/GridFSFile;>;
private org.bson.Document asDocumentOrNull(org.bson.BsonDocument);
descriptor: (Lorg/bson/BsonDocument;)Lorg/bson/Document;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual org.bson.BsonDocument.isEmpty:()Z
ifeq 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
new org.bson.BsonDocumentReader
dup
aload 1
invokespecial org.bson.BsonDocumentReader.<init>:(Lorg/bson/BsonDocument;)V
astore 2
start local 2 3: aload 0
getfield com.mongodb.client.gridfs.codecs.GridFSFileCodec.documentCodec:Lorg/bson/codecs/Codec;
aload 2
invokestatic org.bson.codecs.DecoderContext.builder:()Lorg/bson/codecs/DecoderContext$Builder;
invokevirtual org.bson.codecs.DecoderContext$Builder.build:()Lorg/bson/codecs/DecoderContext;
invokeinterface org.bson.codecs.Codec.decode:(Lorg/bson/BsonReader;Lorg/bson/codecs/DecoderContext;)Ljava/lang/Object;
checkcast org.bson.Document
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/mongodb/client/gridfs/codecs/GridFSFileCodec;
0 4 1 bsonDocument Lorg/bson/BsonDocument;
3 4 2 reader Lorg/bson/BsonDocumentReader;
RuntimeVisibleAnnotations:
com.mongodb.lang.Nullable()
MethodParameters:
Name Flags
bsonDocument final
public java.lang.Object decode(org.bson.BsonReader, org.bson.codecs.DecoderContext);
descriptor: (Lorg/bson/BsonReader;Lorg/bson/codecs/DecoderContext;)Ljava/lang/Object;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=3, locals=3, args_size=3
0: aload 0
aload 1
aload 2
invokevirtual com.mongodb.client.gridfs.codecs.GridFSFileCodec.decode:(Lorg/bson/BsonReader;Lorg/bson/codecs/DecoderContext;)Lcom/mongodb/client/gridfs/model/GridFSFile;
areturn
LocalVariableTable:
Start End Slot Name Signature
public void encode(org.bson.BsonWriter, java.lang.Object, org.bson.codecs.EncoderContext);
descriptor: (Lorg/bson/BsonWriter;Ljava/lang/Object;Lorg/bson/codecs/EncoderContext;)V
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=4, locals=4, args_size=4
0: aload 0
aload 1
aload 2
checkcast com.mongodb.client.gridfs.model.GridFSFile
aload 3
invokevirtual com.mongodb.client.gridfs.codecs.GridFSFileCodec.encode:(Lorg/bson/BsonWriter;Lcom/mongodb/client/gridfs/model/GridFSFile;Lorg/bson/codecs/EncoderContext;)V
return
LocalVariableTable:
Start End Slot Name Signature
}
Signature: Ljava/lang/Object;Lorg/bson/codecs/Codec<Lcom/mongodb/client/gridfs/model/GridFSFile;>;
SourceFile: "GridFSFileCodec.java"
InnerClasses:
public final Builder = org.bson.codecs.DecoderContext$Builder of org.bson.codecs.DecoderContext