1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.apache.syncope.core.persistence.jpa.entity.policy;
20
21 import java.util.Optional;
22 import javax.persistence.Entity;
23 import javax.persistence.Lob;
24 import javax.persistence.Table;
25 import org.apache.syncope.common.lib.policy.AuthPolicyConf;
26 import org.apache.syncope.core.persistence.api.entity.policy.AuthPolicy;
27 import org.apache.syncope.core.provisioning.api.serialization.POJOHelper;
28
29 @Entity
30 @Table(name = JPAAuthPolicy.TABLE)
31 public class JPAAuthPolicy extends AbstractPolicy implements AuthPolicy {
32
33 private static final long serialVersionUID = -4190607009908888884L;
34
35 public static final String TABLE = "AuthPolicy";
36
37 @Lob
38 private String jsonConf;
39
40 @Override
41 public AuthPolicyConf getConf() {
42 return jsonConf == null
43 ? null
44 : POJOHelper.deserialize(jsonConf, AuthPolicyConf.class);
45 }
46
47 @Override
48 public void setConf(final AuthPolicyConf conf) {
49 jsonConf = Optional.ofNullable(conf).map(POJOHelper::serialize).orElse(null);
50 }
51 }