1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 package org.apache.logging.log4j.mongodb4;
19
20 import org.apache.logging.log4j.Level;
21 import org.bson.BsonReader;
22 import org.bson.BsonWriter;
23 import org.bson.codecs.Codec;
24 import org.bson.codecs.DecoderContext;
25 import org.bson.codecs.EncoderContext;
26
27
28
29
30 public class MongoDb4LevelCodec implements Codec<Level> {
31
32
33
34
35 public static final MongoDb4LevelCodec INSTANCE = new MongoDb4LevelCodec();
36
37 @Override
38 public Level decode(final BsonReader reader, final DecoderContext decoderContext) {
39 return Level.getLevel(reader.readString());
40 }
41
42 @Override
43 public void encode(final BsonWriter writer, final Level level, final EncoderContext encoderContext) {
44 writer.writeString(level.name());
45 }
46
47 @Override
48 public Class<Level> getEncoderClass() {
49 return Level.class;
50 }
51
52 }