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.user;
20
21 import javax.persistence.Entity;
22 import javax.persistence.JoinColumn;
23 import javax.persistence.ManyToOne;
24 import javax.persistence.OneToOne;
25 import javax.persistence.Table;
26 import org.apache.syncope.core.persistence.api.entity.PlainAttr;
27 import org.apache.syncope.core.persistence.api.entity.PlainSchema;
28 import org.apache.syncope.core.persistence.api.entity.user.UPlainAttr;
29 import org.apache.syncope.core.persistence.api.entity.user.UPlainAttrUniqueValue;
30 import org.apache.syncope.core.persistence.jpa.entity.AbstractPlainAttrValue;
31 import org.apache.syncope.core.persistence.jpa.entity.JPAPlainSchema;
32
33 @Entity
34 @Table(name = JPAUPlainAttrUniqueValue.TABLE)
35 public class JPAUPlainAttrUniqueValue extends AbstractPlainAttrValue implements UPlainAttrUniqueValue {
36
37 private static final long serialVersionUID = -64080804563305387L;
38
39 public static final String TABLE = "UPlainAttrUniqueValue";
40
41 @OneToOne(optional = false)
42 private JPAUPlainAttr attribute;
43
44 @ManyToOne(optional = false)
45 @JoinColumn(name = "schema_id")
46 private JPAPlainSchema schema;
47
48 @Override
49 public UPlainAttr getAttr() {
50 return attribute;
51 }
52
53 @Override
54 public void setAttr(final PlainAttr<?> attr) {
55 checkType(attr, JPAUPlainAttr.class);
56 this.attribute = (JPAUPlainAttr) attr;
57 }
58
59 @Override
60 public PlainSchema getSchema() {
61 return schema;
62 }
63
64 @Override
65 public void setSchema(final PlainSchema schema) {
66 checkType(schema, JPAPlainSchema.class);
67 this.schema = (JPAPlainSchema) schema;
68 }
69 }