1 package org.bremersee.ldaptive.converter;
2
3 import static java.util.Objects.isNull;
4
5 import com.fasterxml.jackson.core.JsonParser;
6 import com.fasterxml.jackson.databind.DeserializationContext;
7 import com.fasterxml.jackson.databind.deser.std.StdDeserializer;
8 import java.io.IOException;
9 import java.io.Serial;
10 import org.bremersee.ldaptive.serializable.SerLdapEntry;
11 import org.ldaptive.LdapEntry;
12
13
14
15
16 public class JacksonLdapEntryDeserializer extends StdDeserializer<LdapEntry> {
17
18 @Serial
19 private static final long serialVersionUID = 1L;
20
21
22
23
24 public JacksonLdapEntryDeserializer() {
25 super(LdapEntry.class);
26 }
27
28 @Override
29 public LdapEntry deserialize(JsonParser jsonParser, DeserializationContext deserializationContext)
30 throws IOException {
31
32 SerLdapEntry serLdapEntry = jsonParser.readValueAs(SerLdapEntry.class);
33 return isNull(serLdapEntry) ? null : serLdapEntry.toLdapEntry();
34 }
35 }