X-Git-Url: https://code.grnet.gr/git/pithos-web-client/blobdiff_plain/f5023f133625340cd4a47896265211379d45b811..f3c8bd5beb254a23a4125e0d797547edb2bb8679:/src/gr/grnet/pithos/web/client/foldertree/Folder.java diff --git a/src/gr/grnet/pithos/web/client/foldertree/Folder.java b/src/gr/grnet/pithos/web/client/foldertree/Folder.java index 7709033..3e73b16 100644 --- a/src/gr/grnet/pithos/web/client/foldertree/Folder.java +++ b/src/gr/grnet/pithos/web/client/foldertree/Folder.java @@ -43,6 +43,7 @@ import java.util.LinkedHashSet; import java.util.Map; import java.util.Set; +import com.google.gwt.core.client.GWT; import com.google.gwt.http.client.Response; import com.google.gwt.i18n.client.DateTimeFormat; import com.google.gwt.i18n.client.DateTimeFormat.PredefinedFormat; @@ -105,10 +106,6 @@ public class Folder extends Resource { return bytesUsed; } - public void setLastModified(Date lastModified) { - this.lastModified = lastModified; - } - public Set getSubfolders() { return subfolders; } @@ -156,10 +153,15 @@ public class Folder extends Resource { this.owner = _owner; String header = response.getHeader("Last-Modified"); if (header != null) - lastModified = DateTimeFormat.getFormat(PredefinedFormat.RFC_2822).parse(header); + try { + lastModified = DateTimeFormat.getFormat(PredefinedFormat.RFC_2822).parse(header); + } catch (IllegalArgumentException e) { + GWT.log("Last-Modified will be set to null", e); + lastModified = null; + } header = response.getHeader("X-Container-Bytes-Used"); - if (header != null) + if (header != null && header.length() > 0) bytesUsed = Long.valueOf(header); header = response.getHeader("X-Container-Object-Meta"); @@ -169,11 +171,6 @@ public class Folder extends Resource { } } - inheritedPermissionsFrom = response.getHeader("X-Object-Shared-By"); - String rawPermissions = response.getHeader("X-Object-Sharing"); - if (rawPermissions != null) - parsePermissions(rawPermissions); - subfolders.clear(); //This is necessary in case we update a pre-existing Folder so that stale subfolders won't show up files.clear(); JSONValue json = JSONParser.parseStrict(response.getText()); @@ -327,4 +324,11 @@ public class Folder extends Resource { public boolean isHome() { return isContainer() && name.equals(Pithos.HOME_CONTAINER); } + + public boolean contains(Folder folder) { + for (Folder f : subfolders) + if (f.equals(folder) || f.contains(folder)) + return true; + return false; + } }