1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34 package info.magnolia.ui.framework.app.registry;
35
36 import info.magnolia.ui.framework.app.App;
37 import info.magnolia.ui.framework.app.AppDescriptor;
38 import info.magnolia.ui.framework.app.SubAppDescriptor;
39
40 import java.util.HashMap;
41 import java.util.Map;
42
43
44
45
46 public class ConfiguredAppDescriptor implements AppDescriptor {
47
48 private static final long serialVersionUID = 1L;
49
50
51
52
53 private String name;
54
55 private String label;
56
57 private boolean enabled = true;
58
59 private String icon;
60
61 private Class<? extends App> appClass;
62
63 private Map<String, SubAppDescriptor> subApps = new HashMap<String, SubAppDescriptor>();
64
65 @Override
66 public String getName() {
67 return name;
68 }
69
70 public void setName(String name) {
71 this.name = name;
72 }
73
74 @Override
75 public String getLabel() {
76 return label;
77 }
78
79 public void setLabel(String label) {
80 this.label = label;
81 }
82
83 @Override
84 public boolean isEnabled() {
85 return enabled;
86 }
87
88 public void setEnabled(boolean enabled) {
89 this.enabled = enabled;
90 }
91
92 @Override
93 public String getIcon() {
94 return icon;
95 }
96
97 public void setIcon(String icon) {
98 this.icon = icon;
99 }
100
101 @Override
102 public Class<? extends App> getAppClass() {
103 return appClass;
104 }
105
106 public void setAppClass(Class<? extends App> appClass) {
107 this.appClass = appClass;
108 }
109
110 @Override
111 public Map<String, SubAppDescriptor> getSubApps() {
112 return subApps;
113 }
114
115 public void setSubApps(Map<String, SubAppDescriptor> subApps) {
116 this.subApps = subApps;
117 }
118
119 public void addSubApp(SubAppDescriptor subApp) {
120 subApps.put(subApp.getName(), subApp);
121 }
122
123 @Override
124 public boolean equals(Object o) {
125 return o instanceof ConfiguredAppDescriptor && this.getName().equals(((ConfiguredAppDescriptor) o).getName());
126 }
127
128 @Override
129 public int hashCode() {
130 return (this.getName() == null) ? 0 : this.getName().hashCode();
131 }
132
133 }