1 package org.bremersee.ldaptive.converter;
2
3 import com.fasterxml.jackson.core.JsonParser;
4 import com.fasterxml.jackson.databind.DeserializationContext;
5 import com.fasterxml.jackson.databind.deser.std.StdDeserializer;
6 import java.io.IOException;
7 import java.io.Serial;
8 import org.bremersee.ldaptive.transcoder.ValueTranscoderFactory;
9 import org.ldaptive.dn.Dn;
10
11
12
13
14 public class JacksonDnDeserializer extends StdDeserializer<Dn> {
15
16 @Serial
17 private static final long serialVersionUID = 1L;
18
19
20
21
22 public JacksonDnDeserializer() {
23 super(Dn.class);
24 }
25
26 @Override
27 public Dn deserialize(JsonParser jsonParser, DeserializationContext deserializationContext)
28 throws IOException {
29
30 String source = jsonParser.readValueAs(String.class);
31 return ValueTranscoderFactory.getDnValueTranscoder().decodeStringValue(source);
32 }
33 }