Project

General

Profile

1
package eu.dnetlib.functionality.modular.ui;
2

    
3
import java.util.Set;
4

    
5
import org.apache.commons.lang3.math.NumberUtils;
6
import org.springframework.beans.factory.annotation.Required;
7

    
8
import eu.dnetlib.functionality.modular.ui.users.AccessLimited;
9
import eu.dnetlib.functionality.modular.ui.users.PermissionLevel;
10

    
11
public abstract class MenuEntry implements Comparable<MenuEntry>, AccessLimited {
12

    
13
	private String menu;
14
	private String title;
15
	private String description;
16
	private int order = 50;
17
	private Set<PermissionLevel> permissionLevels;
18

    
19
	@Override
20
	public int compareTo(final MenuEntry o) {
21
		return NumberUtils.compare(this.getOrder(), o.getOrder());
22
	}
23

    
24
	abstract public String getRelativeUrl();
25

    
26
	public String getMenu() {
27
		return this.menu;
28
	}
29

    
30
	@Required
31
	public void setMenu(final String menu) {
32
		this.menu = menu;
33
	}
34

    
35
	public String getTitle() {
36
		return this.title;
37
	}
38

    
39
	@Required
40
	public void setTitle(final String title) {
41
		this.title = title;
42
	}
43

    
44
	public String getDescription() {
45
		return this.description;
46
	}
47

    
48
	@Required
49
	public void setDescription(final String description) {
50
		this.description = description;
51
	}
52

    
53
	@Override
54
	public Set<PermissionLevel> getPermissionLevels() {
55
		return this.permissionLevels;
56
	}
57

    
58
	@Required
59
	public void setPermissionLevels(final Set<PermissionLevel> permissionLevels) {
60
		this.permissionLevels = permissionLevels;
61
	}
62

    
63
	public int getOrder() {
64
		return this.order;
65
	}
66

    
67
	public void setOrder(final int order) {
68
		this.order = order;
69
	}
70

    
71
}
(10-10/17)