Project

General

Profile

1
package eu.dnetlib.uoamonitorservice.entities;
2

    
3
import com.fasterxml.jackson.annotation.JsonProperty;
4
import org.springframework.data.annotation.Id;
5

    
6
import java.util.ArrayList;
7
import java.util.Date;
8
import java.util.List;
9

    
10
public class Topic<StringOrCategory> {
11
    @Id
12
    @JsonProperty("_id")
13
    private String id;
14

    
15
    private String name;
16
    private String alias;
17
    private String description;
18
    private String icon;
19
    private Visibility visibility = Visibility.PRIVATE;
20
    private Date creationDate;
21
    private Date updateDate;
22
    private String defaultId;
23
    private List<StringOrCategory> categories;
24

    
25
    public Topic() {}
26
    public Topic(Topic topic) {
27
        id = topic.getId();
28
        name = topic.getName();
29
        alias = topic.getAlias();
30
        description = topic.getDescription();
31
        icon = topic.getIcon();
32
        setVisibility(topic.getVisibility());
33
        creationDate = topic.getCreationDate();
34
        updateDate = topic.getUpdateDate();
35
        defaultId = topic.getDefaultId();
36
    }
37

    
38
    public void copyFromDefault(Topic defaultTopic) {
39
        setName(defaultTopic.getName());
40
        setAlias(defaultTopic.getAlias());
41
        setDescription(defaultTopic.getDescription());
42
        setIcon(defaultTopic.getIcon());
43
        setVisibility(defaultTopic.getVisibility());
44
        setCreationDate(defaultTopic.getCreationDate());
45
        setUpdateDate(defaultTopic.getUpdateDate());
46
        setDefaultId(defaultTopic.getId());
47
        setCategories(new ArrayList());
48
    }
49

    
50
    public String getId() {
51
        return id;
52
    }
53

    
54
    public void setId(String id) {
55
        this.id = id;
56
    }
57

    
58
    public String getName() {
59
        return name;
60
    }
61

    
62
    public void setName(String name) {
63
        this.name = name;
64
    }
65

    
66
    public String getAlias() {
67
        return alias;
68
    }
69

    
70
    public void setAlias(String alias) {
71
        this.alias = alias;
72
    }
73

    
74
    public String getDescription() {
75
        return description;
76
    }
77

    
78
    public void setDescription(String description) {
79
        this.description = description;
80
    }
81

    
82
    public String getIcon() {
83
        return icon;
84
    }
85

    
86
    public void setIcon(String icon) {
87
        this.icon = icon;
88
    }
89

    
90
    public Visibility getVisibility() {
91
        return visibility;
92
    }
93

    
94
    public void setVisibility(Visibility visibility) {
95
        this.visibility = visibility;
96
    }
97

    
98
    public Date getCreationDate() {
99
        return creationDate;
100
    }
101

    
102
    public void setCreationDate(Date creationDate) {
103
        this.creationDate = creationDate;
104
    }
105

    
106
    public Date getUpdateDate() {
107
        return updateDate;
108
    }
109

    
110
    public void setUpdateDate(Date updateDate) {
111
        this.updateDate = updateDate;
112
    }
113

    
114
    public String getDefaultId() {
115
        return defaultId;
116
    }
117

    
118
    public void setDefaultId(String defaultId) {
119
        this.defaultId = defaultId;
120
    }
121

    
122
    public List<StringOrCategory> getCategories() {
123
        return categories;
124
    }
125

    
126
    public void setCategories(List<StringOrCategory> categories) {
127
        this.categories = categories;
128
    }
129
}
(8-8/9)