@@ -35,16 +35,16 @@ of this software and associated documentation files (the "Software"), to deal
3535 */
3636public class EncryptedJsonDeserializer extends JsonDeserializer <Object > implements ContextualDeserializer {
3737 private final EncryptionService service ;
38- private final JsonDeserializer <Object > baseDeserializer ;
38+ private final JsonDeserializer <? > baseDeserializer ;
3939 private final BeanProperty property ;
4040
41- public EncryptedJsonDeserializer (final EncryptionService service , final JsonDeserializer <Object > baseDeserializer ) {
41+ public EncryptedJsonDeserializer (final EncryptionService service , final JsonDeserializer <? > baseDeserializer ) {
4242 this .service = service ;
4343 this .baseDeserializer = baseDeserializer ;
4444 this .property = null ;
4545 }
4646
47- public EncryptedJsonDeserializer (final EncryptionService service , final JsonDeserializer <Object > wrapped , final BeanProperty property ) {
47+ public EncryptedJsonDeserializer (final EncryptionService service , final JsonDeserializer <? > wrapped , final BeanProperty property ) {
4848 this .service = service ;
4949 this .baseDeserializer = wrapped ;
5050 this .property = property ;
@@ -56,19 +56,20 @@ public EncryptedJsonDeserializer(final EncryptionService service, final JsonDese
5656 * Encrypted field deserializer
5757 */
5858 @ Override
59- public Object deserialize (final JsonParser parser , final DeserializationContext context ) throws JsonMappingException {
60- JsonDeserializer <?> deserializer = baseDeserializer ;
61- if (deserializer instanceof ContextualDeserializer ) {
62- deserializer = ((ContextualDeserializer ) deserializer ).createContextual (context , property );
63- }
64- return service .decrypt (parser , deserializer , context , property != null ? property .getType () : null );
59+ public Object deserialize (final JsonParser parser , final DeserializationContext context ) {
60+ return service .decrypt (parser , baseDeserializer , context , property != null ? property .getType () : null );
6561 }
6662
6763 /**
6864 * {@inheritDoc}
6965 */
7066 @ Override
71- public JsonDeserializer <?> createContextual (final DeserializationContext context , final BeanProperty property ) {
72- return new EncryptedJsonDeserializer (service , baseDeserializer , property );
67+ public JsonDeserializer <?> createContextual (final DeserializationContext context , final BeanProperty property ) throws JsonMappingException {
68+ JsonDeserializer <?> deserializer = baseDeserializer ;
69+ if (deserializer instanceof ContextualDeserializer ) {
70+ deserializer = ((ContextualDeserializer ) deserializer ).createContextual (context , property );
71+ }
72+
73+ return new EncryptedJsonDeserializer (service , deserializer , property );
7374 }
7475}
0 commit comments