Revision 2637c9cd src/gr/grnet/pithos/web/client/foldertree/Folder.java

b/src/gr/grnet/pithos/web/client/foldertree/Folder.java
44 44
import com.google.gwt.json.client.JSONValue;
45 45
import java.util.ArrayList;
46 46
import java.util.Date;
47
import java.util.Iterator;
47 48
import java.util.LinkedHashSet;
48 49
import java.util.List;
49 50
import java.util.Set;
......
75 76

  
76 77
    private Set<File> files = new LinkedHashSet<File>();
77 78

  
79
    private boolean inTrash = false;
80

  
78 81
    public Folder() {};
79 82

  
80 83
    public Folder(String name) {
......
126 129
        if (header != null)
127 130
            bytesUsed = Long.valueOf(header);
128 131

  
132
        header = response.getHeader("X-Object-Meta-Trash");
133
        if (header != null && header.equals("true"))
134
            inTrash = true;
135

  
129 136
        subfolders.clear(); //This is necessary in case we update a pre-existing Folder so that stale subfolders won't show up
130 137
        files.clear();
131 138
        JSONValue json = JSONParser.parseStrict(response.getText());
......
147 154
                    }
148 155
                }
149 156
            }
157
            Iterator<Folder> iter = subfolders.iterator();
158
            while (iter.hasNext()) {
159
                Folder f = iter.next();
160
                if (f.isInTrash())
161
                    iter.remove();
162
            }
163
            Iterator<File> it = files.iterator();
164
            while (it.hasNext()) {
165
                File f = it.next();
166
                if (f.isInTrash())
167
                    it.remove();
168
            }
150 169
        }
151 170
    }
152 171

  
......
174 193
            container = name;
175 194
            prefix = "";
176 195
        }
196
        if (o.containsKey("x_object_meta_trash") && o.get("x_object_meta_trash").isString().stringValue().equals("true"))
197
            inTrash = true;
177 198
    }
178 199

  
179 200
    public static Folder createFromResponse(Response response, Folder result) {
......
212 233
    public String getUri() {
213 234
        return "/" + container + (prefix.length() == 0 ? "" : "/" + prefix);
214 235
    }
236

  
237
    public boolean isInTrash() {
238
        return inTrash;
239
    }
215 240
}

Also available in: Unified diff