Skip to content

Commit 0e22b88

Browse files
committed
updated premission names
1 parent b36d87d commit 0e22b88

File tree

21 files changed

+385
-378
lines changed

21 files changed

+385
-378
lines changed

logicaldoc-core/src/main/java/com/logicaldoc/core/security/authorization/PermissionException.java

Lines changed: 6 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -19,24 +19,14 @@ public class PermissionException extends AuthorizationException {
1919
*/
2020
private final String securityObject;
2121

22-
private final String permission;
22+
private final Permission permission;
2323

2424
public PermissionException(String username, String securityObject, Permission permission) {
25-
this(username, securityObject, permission.toString());
26-
}
27-
28-
public PermissionException(String username, String securityObject, Permission permission, Throwable cause) {
29-
this(username, securityObject, permission.toString(), cause);
30-
}
25+
this(username, securityObject, permission, null);
3126

32-
public PermissionException(String username, String securityObject, String permission) {
33-
super(buildMessage(username, securityObject, permission));
34-
this.username = username;
35-
this.securityObject = securityObject;
36-
this.permission = permission;
3727
}
3828

39-
public PermissionException(String username, String securityObject, String permission, Throwable cause) {
29+
public PermissionException(String username, String securityObject, Permission permission, Throwable cause) {
4030
super(buildMessage(username, securityObject, permission), cause);
4131
this.username = username;
4232
this.securityObject = securityObject;
@@ -78,11 +68,11 @@ public String getSecurityObject() {
7868
return securityObject;
7969
}
8070

81-
public String getPermission() {
71+
public Permission getPermission() {
8272
return permission;
8373
}
8474

85-
private static String buildMessage(String username, String securityObject, String permission) {
86-
return String.format("User %s does not have permission %s on %s", username, permission, securityObject);
75+
private static String buildMessage(String username, String securityObject, Permission permission) {
76+
return String.format("User %s does not have permission %s on %s", username, permission.name(), securityObject);
8777
}
8878
}
Lines changed: 57 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,27 @@
11
package com.logicaldoc.core.metadata;
22

3+
import static org.junit.Assert.assertEquals;
4+
import static org.junit.Assert.assertFalse;
5+
import static org.junit.Assert.assertNotNull;
6+
import static org.junit.Assert.assertNotSame;
7+
import static org.junit.Assert.assertNull;
8+
import static org.junit.Assert.assertTrue;
9+
310
import java.io.IOException;
411
import java.sql.SQLException;
512
import java.util.Collection;
13+
import java.util.Set;
614

715
import org.junit.Before;
816
import org.junit.Test;
917

1018
import com.logicaldoc.core.AbstractCoreTestCase;
1119
import com.logicaldoc.core.PersistenceException;
20+
import com.logicaldoc.core.security.Permission;
1221
import com.logicaldoc.core.security.Tenant;
1322
import com.logicaldoc.util.Context;
1423
import com.logicaldoc.util.plugin.PluginException;
1524

16-
import junit.framework.Assert;
17-
1825
/**
1926
* Test case for {@link HibernateTemplateDAO}
2027
*
@@ -40,73 +47,73 @@ public void testDelete() throws PersistenceException {
4047
try {
4148
testSubject.delete(1);
4249
} catch (PersistenceException e) {
43-
Assert.assertTrue(true);
50+
assertTrue(true);
4451
}
4552

4653
testSubject.delete(-1L);
4754
Template template = testSubject.findById(-1L);
48-
Assert.assertNull(template);
55+
assertNull(template);
4956
}
5057

5158
@Test
5259
public void testFindAll() throws PersistenceException {
5360
Collection<Template> templates = testSubject.findAll();
54-
Assert.assertNotNull(templates);
55-
Assert.assertEquals(4, templates.size());
61+
assertNotNull(templates);
62+
assertEquals(4, templates.size());
5663
}
5764

5865
@Test
5966
public void testFindById() throws PersistenceException {
6067
Template template = testSubject.findById(1);
61-
Assert.assertNotNull(template);
68+
assertNotNull(template);
6269
testSubject.initialize(template);
63-
Assert.assertEquals(1, template.getId());
64-
Assert.assertEquals("test1", template.getName());
65-
Assert.assertTrue(template.getAttributes().containsKey("attr1"));
70+
assertEquals(1, template.getId());
71+
assertEquals("test1", template.getName());
72+
assertTrue(template.getAttributes().containsKey("attr1"));
6673

6774
// Try with unexisting template
6875
template = testSubject.findById(99);
69-
Assert.assertNull(template);
76+
assertNull(template);
7077

7178
template = testSubject.findById(-1);
72-
Assert.assertNotNull(template);
79+
assertNotNull(template);
7380
testSubject.initialize(template);
74-
Assert.assertEquals(-1, template.getId());
75-
Assert.assertEquals("default", template.getName());
76-
Assert.assertTrue(template.getAttributes().containsKey("object"));
81+
assertEquals(-1, template.getId());
82+
assertEquals("default", template.getName());
83+
assertTrue(template.getAttributes().containsKey("object"));
7784
}
7885

7986
@Test
8087
public void testClone() throws PersistenceException {
8188
Template template = testSubject.findById(1);
82-
Assert.assertNotNull(template);
89+
assertNotNull(template);
8390
testSubject.initialize(template);
84-
Assert.assertEquals(1, template.getId());
85-
Assert.assertEquals("test1", template.getName());
86-
Assert.assertTrue(template.getAttributes().containsKey("attr1"));
91+
assertEquals(1, template.getId());
92+
assertEquals("test1", template.getName());
93+
assertTrue(template.getAttributes().containsKey("attr1"));
8794

8895
Template clone = testSubject.clone(1, "test1-Clone");
89-
Assert.assertNotNull(clone);
96+
assertNotNull(clone);
9097
clone = testSubject.findById(clone.getId());
9198
testSubject.initialize(clone);
92-
Assert.assertNotSame(1, clone.getId());
93-
Assert.assertEquals("test1-Clone", clone.getName());
94-
Assert.assertTrue(clone.getAttributes().containsKey("attr1"));
99+
assertNotSame(1, clone.getId());
100+
assertEquals("test1-Clone", clone.getName());
101+
assertTrue(clone.getAttributes().containsKey("attr1"));
95102
}
96103

97104
@Test
98105
public void testFindByName() throws PersistenceException {
99106
Template template = testSubject.findByName("test1", Tenant.DEFAULT_ID);
100-
Assert.assertNotNull(template);
107+
assertNotNull(template);
101108
testSubject.initialize(template);
102-
Assert.assertEquals(1, template.getId());
103-
Assert.assertEquals("test1", template.getName());
109+
assertEquals(1, template.getId());
110+
assertEquals("test1", template.getName());
104111

105112
template = testSubject.findByName("xxx", Tenant.DEFAULT_ID);
106-
Assert.assertNull(template);
113+
assertNull(template);
107114

108115
template = testSubject.findByName("test1", 99L);
109-
Assert.assertNull(template);
116+
assertNull(template);
110117
}
111118

112119
@Test
@@ -118,38 +125,40 @@ public void testStore() throws PersistenceException {
118125
template.setValue("object", "value");
119126

120127
testSubject.store(template);
121-
Assert.assertNotNull(template);
128+
assertNotNull(template);
122129
template = testSubject.findById(template.getId());
123-
Assert.assertNotNull(template);
130+
assertNotNull(template);
124131
testSubject.initialize(template);
125-
Assert.assertEquals("test3", template.getName());
126-
Assert.assertTrue(template.getTemplateAttributes().containsKey("a1"));
127-
Assert.assertTrue(template.getTemplateAttributes().containsKey("a2"));
128-
Assert.assertTrue(template.getTemplateAttributes().containsKey("object"));
132+
assertEquals("test3", template.getName());
133+
assertTrue(template.getTemplateAttributes().containsKey("a1"));
134+
assertTrue(template.getTemplateAttributes().containsKey("a2"));
135+
assertTrue(template.getTemplateAttributes().containsKey("object"));
129136
}
130137

131138
@Test
132139
public void testPermissions() throws PersistenceException {
133140
Template template = testSubject.findById(1L);
134-
Assert.assertNotNull(template);
141+
assertNotNull(template);
135142

136-
Assert.assertTrue(testSubject.isReadEnable(1L, 1L));
137-
Assert.assertTrue(testSubject.isWriteEnable(1L, 1L));
143+
assertTrue(testSubject.isReadEnable(1L, 1L));
144+
assertTrue(testSubject.isWriteEnable(1L, 1L));
138145

139-
Assert.assertTrue(testSubject.isReadEnable(1L, 3L));
140-
Assert.assertTrue(testSubject.isWriteEnable(1L, 3L));
146+
assertTrue(testSubject.isReadEnable(1L, 3L));
147+
assertTrue(testSubject.isWriteEnable(1L, 3L));
141148

142-
Assert.assertFalse(testSubject.isReadEnable(1L, 5L));
143-
Assert.assertFalse(testSubject.isWriteEnable(1L, 5L));
149+
assertFalse(testSubject.isReadEnable(1L, 5L));
150+
assertFalse(testSubject.isWriteEnable(1L, 5L));
144151

145-
Assert.assertFalse(testSubject.isReadEnable(1L, 99L));
146-
Assert.assertFalse(testSubject.isReadEnable(2L, 99L));
152+
assertFalse(testSubject.isReadEnable(1L, 99L));
153+
assertFalse(testSubject.isReadEnable(2L, 99L));
147154

148-
Assert.assertFalse(testSubject.isReadEnable(1L, 4L));
149-
Assert.assertFalse(testSubject.isWriteEnable(1L, 4L));
150-
151-
Assert.assertFalse(testSubject.isReadEnable(2L, 4L));
152-
Assert.assertFalse(testSubject.isWriteEnable(2L, 4L));
155+
assertFalse(testSubject.isReadEnable(1L, 4L));
156+
assertFalse(testSubject.isWriteEnable(1L, 4L));
153157

158+
assertFalse(testSubject.isReadEnable(2L, 4L));
159+
assertFalse(testSubject.isWriteEnable(2L, 4L));
160+
161+
Set<Permission> permissions = testSubject.getAllowedPermissions(1L, 1L);
162+
assertEquals(Permission.all().size(), permissions.size());
154163
}
155164
}

logicaldoc-gui/src/main/java/com/logicaldoc/gui/common/client/beans/GUIAccessControlEntry.java

Lines changed: 37 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -15,65 +15,65 @@ public class GUIAccessControlEntry implements Serializable {
1515

1616
private static final long serialVersionUID = 1L;
1717

18-
private long entityId = 0;
18+
public static final String PERMISSION_DELETE = "DELETE";
1919

20-
private String name;
20+
public static final String PERMISSION_IMMUTABLE = "IMMUTABLE";
2121

22-
private String label;
23-
24-
/*
25-
* A set of permissions, cannot use a map because of they are not supported
26-
* by default GWT serialization
27-
*/
28-
private ArrayList<GUIValue> permissions = new ArrayList<>();
22+
public static final String PERMISSION_SECURITY = "SECURITY";
2923

30-
public static final String PERMISSION_DELETE = "delete";
24+
public static final String PERMISSION_READ = "READ";
3125

32-
public static final String PERMISSION_IMMUTABLE = "immutable";
26+
public static final String PERMISSION_PREVIEW = "PREVIEW";
3327

34-
public static final String PERMISSION_SECURITY = "security";
28+
public static final String PERMISSION_WRITE = "WRITE";
3529

36-
public static final String PERMISSION_READ = "read";
30+
public static final String PERMISSION_ADD = "ADD";
3731

38-
public static final String PERMISSION_PREVIEW = "preview";
32+
public static final String PERMISSION_RENAME = "RENAME";
3933

40-
public static final String PERMISSION_WRITE = "write";
34+
public static final String PERMISSION_IMPORT = "IMPORT";
4135

42-
public static final String PERMISSION_ADD = "add";
36+
public static final String PERMISSION_EXPORT = "EXPORT";
4337

44-
public static final String PERMISSION_RENAME = "rename";
38+
public static final String PERMISSION_SIGN = "SIGN";
4539

46-
public static final String PERMISSION_IMPORT = "import";
40+
public static final String PERMISSION_ARCHIVE = "ARCHIVE";
4741

48-
public static final String PERMISSION_EXPORT = "export";
42+
public static final String PERMISSION_WORKFLOW = "WORKFLOW";
4943

50-
public static final String PERMISSION_SIGN = "sign";
44+
public static final String PERMISSION_DOWNLOAD = "DOWNLOAD";
5145

52-
public static final String PERMISSION_ARCHIVE = "archive";
46+
public static final String PERMISSION_CALENDAR = "CALENDAR";
5347

54-
public static final String PERMISSION_WORKFLOW = "workflow";
48+
public static final String PERMISSION_SUBSCRIPTION = "SUBSCRIPTION";
5549

56-
public static final String PERMISSION_DOWNLOAD = "download";
50+
public static final String PERMISSION_PASSWORD = "PASSWORD";
5751

58-
public static final String PERMISSION_CALENDAR = "calendar";
52+
public static final String PERMISSION_MOVE = "MOVE";
5953

60-
public static final String PERMISSION_SUBSCRIPTION = "subscription";
54+
public static final String PERMISSION_EMAIL = "EMAIL";
6155

62-
public static final String PERMISSION_PASSWORD = "password";
56+
public static final String PERMISSION_AUTOMATION = "AUTOMATION";
6357

64-
public static final String PERMISSION_MOVE = "move";
58+
public static final String PERMISSION_STORE = "STORE";
6559

66-
public static final String PERMISSION_EMAIL = "email";
60+
public static final String PERMISSION_READINGREQ = "READINGREQ";
6761

68-
public static final String PERMISSION_AUTOMATION = "automation";
62+
public static final String PERMISSION_PRINT = "PRINT";
6963

70-
public static final String PERMISSION_STORE = "store";
64+
public static final String PERMISSION_CUSTOMID = "CUSTOMID";
65+
66+
private long entityId = 0;
7167

72-
public static final String PERMISSION_READINGREQ = "readingreq";
68+
private String name;
7369

74-
public static final String PERMISSION_PRINT = "print";
70+
private String label;
7571

76-
public static final String PERMISSION_CUSTOMID = "customid";
72+
/*
73+
* A set of permissions, cannot use a map because of they are not supported
74+
* by default GWT serialization
75+
*/
76+
private ArrayList<GUIValue> permissions = new ArrayList<>();
7777

7878
public GUIAccessControlEntry() {
7979
}
@@ -82,14 +82,14 @@ public GUIAccessControlEntry(long entityId, String... allowedPermissions) {
8282
this.entityId = entityId;
8383
permissions.clear();
8484
for (String permission : allowedPermissions) {
85-
permissions.add(new GUIValue(permission.toLowerCase(), Boolean.TRUE.toString()));
85+
permissions.add(new GUIValue(permission.toUpperCase(), Boolean.TRUE.toString()));
8686
}
8787
}
8888

8989
public GUIAccessControlEntry(String... allowedPermissions) {
9090
permissions.clear();
9191
for (String permission : allowedPermissions) {
92-
permissions.add(new GUIValue(permission.toLowerCase(), Boolean.TRUE.toString()));
92+
permissions.add(new GUIValue(permission.toUpperCase(), Boolean.TRUE.toString()));
9393
}
9494
}
9595

@@ -311,11 +311,11 @@ public void setCustomid(boolean customid) {
311311
}
312312

313313
public boolean isPermissionAllowed(String permission) {
314-
return getAllowedPermissions().contains(permission.toLowerCase());
314+
return getAllowedPermissions().contains(permission.toUpperCase());
315315
}
316316

317317
public Set<String> getAllowedPermissions() {
318-
return permissions.stream().filter(e -> Boolean.valueOf(e.getValue())).map(e -> e.getCode().toLowerCase())
318+
return permissions.stream().filter(e -> Boolean.valueOf(e.getValue())).map(e -> e.getCode().toUpperCase())
319319
.collect(Collectors.toSet());
320320
}
321321

logicaldoc-gui/src/main/java/com/logicaldoc/gui/common/client/beans/GUITemplate.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -171,7 +171,7 @@ public void setAccessControlList(List<GUIAccessControlEntry> accessControlList)
171171
}
172172

173173
public boolean isWrite() {
174-
return hasPermission(GUIAccessControlEntry.PERMISSION_WRITE);
174+
return hasPermission(GUIAccessControlEntry.PERMISSION_WRITE.toUpperCase());
175175
}
176176

177177
public boolean hasPermission(String permission) {

0 commit comments

Comments
 (0)