Revision 25007267
b/src/gr/grnet/pithos/web/client/Pithos.java | ||
---|---|---|
151 | 151 |
otherSharedTreeView.updateFolder(f, showfiles); |
152 | 152 |
} |
153 | 153 |
|
154 |
public List<Tag> getAllTags() { |
|
155 |
List<Tag> tagList = new ArrayList<Tag>(); |
|
156 |
for (Folder f : account.getContainers()) { |
|
157 |
for (String t : f.getTags()) { |
|
158 |
tagList.add(new Tag(t)); |
|
159 |
} |
|
160 |
} |
|
161 |
return tagList; |
|
162 |
} |
|
163 |
|
|
164 | 154 |
public MysharedTreeView getMySharedTreeView() { |
165 | 155 |
return mysharedTreeView; |
166 | 156 |
} |
... | ... | |
519 | 509 |
fileList.setFiles(new ArrayList<File>(files)); |
520 | 510 |
} |
521 | 511 |
|
522 |
protected void fetchFile(final Iterator<File> iter, final Set<File> files) { |
|
523 |
if (iter.hasNext()) { |
|
524 |
File file = iter.next(); |
|
525 |
String path = file.getUri() + "?format=json"; |
|
526 |
GetRequest<File> getFile = new GetRequest<File>(File.class, getApiPath(), username, path, file) { |
|
527 |
@Override |
|
528 |
public void onSuccess(File _result) { |
|
529 |
fetchFile(iter, files); |
|
530 |
} |
|
531 |
|
|
532 |
@Override |
|
533 |
public void onError(Throwable t) { |
|
534 |
GWT.log("Error getting file", t); |
|
535 |
setError(t); |
|
536 |
if (t instanceof RestException) |
|
537 |
displayError("Error getting file: " + ((RestException) t).getHttpStatusText()); |
|
538 |
else |
|
539 |
displayError("System error fetching file: " + t.getMessage()); |
|
540 |
} |
|
541 |
|
|
542 |
@Override |
|
543 |
protected void onUnauthorized(Response response) { |
|
544 |
sessionExpired(); |
|
545 |
} |
|
546 |
}; |
|
547 |
getFile.setHeader("X-Auth-Token", "0000"); |
|
548 |
Scheduler.get().scheduleDeferred(getFile); |
|
549 |
} |
|
550 |
else |
|
551 |
fileList.setFiles(new ArrayList<File>(files)); |
|
552 |
} |
|
553 |
|
|
554 | 512 |
/** |
555 | 513 |
* Parse and store the user credentials to the appropriate fields. |
556 | 514 |
*/ |
b/src/gr/grnet/pithos/web/client/foldertree/File.java | ||
---|---|---|
217 | 217 |
return container; |
218 | 218 |
} |
219 | 219 |
|
220 |
//Never called |
|
220 | 221 |
public static File createFromResponse(String owner, Response response, File result) { |
221 | 222 |
result.populate(owner, response); |
222 | 223 |
return result; |
b/src/gr/grnet/pithos/web/client/foldertree/Folder.java | ||
---|---|---|
80 | 80 |
|
81 | 81 |
private Set<File> files = new LinkedHashSet<File>(); |
82 | 82 |
|
83 |
private Set<String> tags = new LinkedHashSet<String>(); |
|
84 |
|
|
85 | 83 |
private String owner; |
86 | 84 |
|
87 | 85 |
private Map<String, Boolean[]> permissions = new HashMap<String, Boolean[]>(); |
... | ... | |
161 | 159 |
if (header != null && header.length() > 0) |
162 | 160 |
bytesUsed = Long.valueOf(header); |
163 | 161 |
|
164 |
header = response.getHeader("X-Container-Object-Meta"); |
|
165 |
if (header != null && header.length() > 0) { |
|
166 |
for (String t : header.split(",")) { |
|
167 |
tags.add(URL.decodePathSegment(t)); |
|
168 |
} |
|
169 |
} |
|
170 |
|
|
171 | 162 |
subfolders.clear(); //This is necessary in case we update a pre-existing Folder so that stale subfolders won't show up |
172 | 163 |
files.clear(); |
173 | 164 |
JSONValue json = JSONParser.parseStrict(response.getText()); |
... | ... | |
278 | 269 |
this.container = container; |
279 | 270 |
} |
280 | 271 |
|
281 |
public Set<String> getTags() { |
|
282 |
return tags; |
|
283 |
} |
|
284 |
|
|
285 | 272 |
public String getInheritedPermissionsFrom() { |
286 | 273 |
return inheritedPermissionsFrom; |
287 | 274 |
} |
b/src/gr/grnet/pithos/web/client/foldertree/Resource.java | ||
---|---|---|
109 | 109 |
result1 = (T) Folder.createFromResponse(owner, response, (Folder) result); |
110 | 110 |
} |
111 | 111 |
else if (aClass.equals(File.class)) { |
112 |
//This case cannot happen since we never GET a file directly. Files are always fetch through their parent Folder |
|
112 | 113 |
result1 = (T) File.createFromResponse(owner, response, (File) result); |
113 | 114 |
} |
114 | 115 |
else if (aClass.equals(SharingUsers.class)) { |
Also available in: Unified diff