org.onap migration
[vid.git] / vid-app-common / src / main / java / org / onap / vid / model / CategoryParameter.java
1 package org.onap.vid.model;
2
3 //import org.hibernate.annotations.Table;
4 import org.openecomp.portalsdk.core.domain.support.DomainVo;
5 import org.onap.vid.controller.MaintenanceController;
6
7 //import javax.persistence.*;
8 import javax.persistence.*;
9 import java.io.Serializable;
10 import java.util.Date;
11 import java.util.HashSet;
12 import java.util.Set;
13
14 @Entity
15 @Table(name = "vid_category_parameter", uniqueConstraints = @UniqueConstraint(columnNames = "name"))
16 public class CategoryParameter extends DomainVo {
17
18     public enum Family {
19         PARAMETER_STANDARDIZATION,
20         TENANT_ISOLATION
21     }
22
23     private String name;
24     private boolean idSupported;
25
26     @Column(name = "FAMILY")
27     @Enumerated(EnumType.STRING)
28     private String family;
29
30     public String getFamily() {
31         return family;
32     }
33
34     public void setFamily(String family) {
35         this.family = family;
36     }
37
38     private Set<CategoryParameterOption> options = new HashSet<>(0);
39
40     @Override
41     @Id
42     @GeneratedValue(strategy = GenerationType.IDENTITY)
43     @Column(name = "CATEGORY_ID")
44     public Long getId() {
45         return super.getId();
46     }
47
48     @Override
49     @Column(name = "CREATED_DATE")
50     public Date getCreated() {
51         return super.getCreated();
52     }
53
54     @Override
55     @Column(name = "MODIFIED_DATE")
56     public Date getModified() {
57         return super.getModified();
58     }
59
60     @Override
61     @Transient
62     public Long getCreatedId() {
63         return super.getCreatedId();
64     }
65
66     @Override
67     @Transient
68     public Long getModifiedId() {
69         return super.getModifiedId();
70     }
71
72     @Column(name = "NAME", unique = true, nullable = false, length=50)
73     public String getName() {
74         return name;
75     }
76
77     public void setName(String name) {
78         this.name = name;
79     }
80
81     @Override
82     @Transient
83     public Serializable getAuditUserId() {
84         return super.getAuditUserId();
85     }
86
87     @Override
88     @Transient
89     public Long getRowNum() {
90         return super.getRowNum();
91     }
92
93     @Override
94     @Transient
95     public Set getAuditTrail() {
96         return super.getAuditTrail();
97     }
98
99     @OneToMany(fetch = FetchType.EAGER, mappedBy = "categoryParameter")
100     public Set<CategoryParameterOption> getOptions() {
101         return options;
102     }
103
104     public void setOptions(Set<CategoryParameterOption> options) {
105         this.options = options;
106     }
107
108     public boolean addOption(CategoryParameterOption option) {
109         return options.add(option);
110     }
111
112     @Column(name = "ID_SUPPORTED")
113     public boolean isIdSupported() {
114         return idSupported;
115     }
116
117     public void setIdSupported(boolean idSupported) {
118         this.idSupported = idSupported;
119     }
120 }