root / src / com / rackspace / cloud / files / api / client / Permission.java @ 378fe36a
History | View | Annotate | Download (2.1 kB)
1 |
package com.rackspace.cloud.files.api.client; |
---|---|
2 |
|
3 |
import java.io.Serializable; |
4 |
import java.util.ArrayList; |
5 |
import java.util.List; |
6 |
|
7 |
public class Permission implements Serializable{ |
8 |
String group;
|
9 |
String user;
|
10 |
String displayName;
|
11 |
boolean read=false; |
12 |
boolean write = false; |
13 |
|
14 |
public Permission() { |
15 |
|
16 |
} |
17 |
|
18 |
public static List<Permission> parsePermissions(String rawPermissions){ |
19 |
|
20 |
List<Permission> permissions = new ArrayList<Permission>(); |
21 |
String[] readwrite = rawPermissions.split(";"); |
22 |
for (String s : readwrite) { |
23 |
String[] part = s.split("="); |
24 |
String perm = part[0].trim(); |
25 |
String[] users = part[1].split(","); |
26 |
for (String u : users) { |
27 |
Permission p = new Permission(); |
28 |
String user = u.trim();
|
29 |
if(u.indexOf(':')==-1) |
30 |
p.setUser(user); |
31 |
else{
|
32 |
String group = user.substring(u.lastIndexOf(':')+1,u.length()); |
33 |
for(Permission pp : permissions){ |
34 |
if(group.equals(pp.getGroup())){
|
35 |
p=pp; |
36 |
break;
|
37 |
} |
38 |
} |
39 |
p.setGroup(group); |
40 |
} |
41 |
|
42 |
if (perm.equals("read")) { |
43 |
p.read = Boolean.TRUE;
|
44 |
} |
45 |
else if (perm.equals("write")) { |
46 |
p.write = Boolean.TRUE;
|
47 |
} |
48 |
permissions.add(p); |
49 |
} |
50 |
} |
51 |
return permissions;
|
52 |
} |
53 |
|
54 |
public String getGroup() { |
55 |
return group;
|
56 |
} |
57 |
public void setGroup(String group) { |
58 |
this.group = group;
|
59 |
} |
60 |
public String getUser() { |
61 |
return user;
|
62 |
} |
63 |
public void setUser(String user) { |
64 |
this.user = user;
|
65 |
} |
66 |
|
67 |
public boolean isRead() { |
68 |
return read;
|
69 |
} |
70 |
public void setRead(boolean read) { |
71 |
this.read = read;
|
72 |
} |
73 |
public boolean isWrite() { |
74 |
return write;
|
75 |
} |
76 |
public void setWrite(boolean write) { |
77 |
this.write = write;
|
78 |
} |
79 |
|
80 |
public void setDisplayName(String displayName) { |
81 |
this.displayName = displayName;
|
82 |
} |
83 |
|
84 |
public String getDisplayName() { |
85 |
return displayName;
|
86 |
} |
87 |
|
88 |
} |