Package de.bild.codec
Interface ReflectionCodec<T>
- Type Parameters:
T-
- All Superinterfaces:
org.bson.codecs.Codec<T>,org.bson.codecs.Decoder<T>,org.bson.codecs.Encoder<T>,PolymorphicCodec<T>,TypeCodec<T>
- All Known Implementing Classes:
BasicReflectionCodec
Used by Polymorphia internally to tag codecs that use reflection to build a Codec for al properties
-
Field Summary
Fields inherited from interface de.bild.codec.PolymorphicCodec
LOGGER -
Method Summary
Modifier and TypeMethodDescriptiongetMappedField(String mappedFieldName) voidpostDecode(T instance) Called after entity has been decodedvoidCalled just before encodingdefault voidverifyFieldsNotNamedLikeAnyDiscriminatorKey(Set<String> propertyNames) A check for properties with names equal to any of the identified discriminator keysMethods inherited from interface org.bson.codecs.Encoder
getEncoderClassMethods inherited from interface de.bild.codec.PolymorphicCodec
decode, decodeFields, encode, encodeFields, newInstanceMethods inherited from interface de.bild.codec.TypeCodec
defaultInstance, documentHasId, generateIdIfAbsentFromDocument, getDecodingPojoFailureStrategy, getDocumentId, getTypeFilter, isCollectible
-
Method Details
-
getPersistenceFields
Map<String,MappedField> getPersistenceFields() -
getMappedField
-
postDecode
Called after entity has been decoded- Parameters:
instance-
-
preEncode
Called just before encoding- Parameters:
instance-
-
verifyFieldsNotNamedLikeAnyDiscriminatorKey
default void verifyFieldsNotNamedLikeAnyDiscriminatorKey(Set<String> propertyNames) throws IllegalArgumentException Description copied from interface:PolymorphicCodecA check for properties with names equal to any of the identified discriminator keys- Specified by:
verifyFieldsNotNamedLikeAnyDiscriminatorKeyin interfacePolymorphicCodec<T>- Parameters:
propertyNames- the identified discriminator keys throws anIllegalArgumentExceptionif a name of an internally used property is equal to one of the discriminator keys- Throws:
IllegalArgumentException
-