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.api.availability;
35
36 import info.magnolia.cms.security.operations.AccessDefinition;
37 import info.magnolia.cms.security.operations.ConfiguredAccessDefinition;
38
39 import java.util.ArrayList;
40 import java.util.Collection;
41
42
43
44
45 public class ConfiguredAvailabilityDefinition implements AvailabilityDefinition {
46
47 private boolean root = false;
48 private boolean properties = false;
49 private boolean nodes = true;
50 private boolean multiple = false;
51 private Collection<String> nodeTypes = new ArrayList<String>();
52 private AccessDefinition access = new ConfiguredAccessDefinition();
53 private Collection<? extends AvailabilityRuleDefinition> rules = new ArrayList<AvailabilityRuleDefinition>();
54 private boolean writePermissionRequired;
55
56 @Override
57 public boolean isRoot() {
58 return root;
59 }
60
61 public void setRoot(boolean root) {
62 this.root = root;
63 }
64
65 @Override
66 public boolean isProperties() {
67 return properties;
68 }
69
70 public void setProperties(boolean properties) {
71 this.properties = properties;
72 }
73
74 @Override
75 public boolean isNodes() {
76 return this.nodes;
77 }
78
79 public void setNodes(boolean nodes) {
80 this.nodes = nodes;
81 }
82
83 @Override
84 public boolean isMultiple() {
85 return this.multiple;
86 }
87
88 public void setMultiple(boolean multiple) {
89 this.multiple = multiple;
90 }
91
92 @Override
93 public Collection<String> getNodeTypes() {
94 return nodeTypes;
95 }
96
97 public void setNodeTypes(Collection<String> nodeTypes) {
98 this.nodeTypes = nodeTypes;
99 }
100
101 public void addNodeType(String nodeType) {
102 nodeTypes.add(nodeType);
103 }
104
105 public void setAccess(AccessDefinition access) {
106 this.access = access;
107 }
108
109 @Override
110 public AccessDefinition getAccess() {
111 return this.access;
112 }
113
114 @Override
115 public boolean isWritePermissionRequired() {
116 return writePermissionRequired;
117 }
118
119 public void setWritePermissionRequired(boolean writePermissionRequired) {
120 this.writePermissionRequired = writePermissionRequired;
121 }
122
123 @Override
124 public Collection<? extends AvailabilityRuleDefinition> getRules() {
125 return this.rules;
126 }
127
128 public void setRules(Collection<? extends AvailabilityRuleDefinition> rules) {
129 this.rules = rules;
130 }
131 }