- All Implemented Interfaces:
org.bson.codecs.Codec<T>, org.bson.codecs.Decoder<T>, org.bson.codecs.Encoder<T>
public class EnumCodec<T extends Enum<T>>
extends Object
implements org.bson.codecs.Codec<T>
Codec for enum.
encode: value.name()
decode: Enum.valueOf(clazz, name)
-
Constructor Summary
Constructors
-
Method Summary
decode(org.bson.BsonReader reader,
org.bson.codecs.DecoderContext decoderContext)
void
encode(org.bson.BsonWriter writer,
T value,
org.bson.codecs.EncoderContext encoderContext)
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Constructor Details
-
EnumCodec
public EnumCodec(Class<T> clazz)
-
Method Details
-
decode
public T decode(org.bson.BsonReader reader,
org.bson.codecs.DecoderContext decoderContext)
- Specified by:
decode in interface org.bson.codecs.Decoder<T extends Enum<T>>
-
encode
public void encode(org.bson.BsonWriter writer,
T value,
org.bson.codecs.EncoderContext encoderContext)
- Specified by:
encode in interface org.bson.codecs.Encoder<T extends Enum<T>>
-
getEncoderClass
public Class<T> getEncoderClass()
- Specified by:
getEncoderClass in interface org.bson.codecs.Encoder<T extends Enum<T>>