import com.google.gwt.user.client.DeferredCommand;
import com.google.gwt.user.client.IncrementalCommand;
import com.google.gwt.user.client.ui.TreeItem;
+import com.google.gwt.user.client.ui.Widget;
/**
* @author kman
super(aTree, _images);
DeferredCommand.addCommand(new IncrementalCommand() {
+ @Override
public boolean execute() {
return updateInit();
}
return !DONE;
GetCommand<OthersResource> go = new GetCommand<OthersResource>(OthersResource.class,
- userResource.getOthersPath()) {
+ userResource.getOthersPath(), null) {
@Override
public void onComplete() {
- rootItem = new DnDTreeItem(imageItemHTML(images.othersShared(), "Other's Shared"), "Other's Shared", false);
+ Widget rootItemWidget = imageItemHTML(images.othersShared(), "Other's Shared");
+ rootItemWidget.getElement().setId("tree.othersShared");
+ rootItem = new DnDTreeItem(rootItemWidget, false,tree,true);
rootItem.setUserObject(getResult());
tree.addItem(rootItem);
- rootItem.removeItems();
- update(rootItem);
+ //rootItem.removeItems();
+ //update(rootItem);
GSS.get().removeGlassPanel();
}
GWT.log("Error fetching Others Root folder", t);
GSS.get().displayError("Unable to fetch Others Root folder");
if(rootItem != null){
- rootItem = new DnDTreeItem(imageItemHTML(images.othersShared(), "ERROR"), "ERROR", false);
+ rootItem = new DnDTreeItem(imageItemHTML(images.othersShared(), "ERROR"), false,tree);
tree.addItem(rootItem);
}
}
public void update(final DnDTreeItem folderItem) {
if (folderItem.getOthersResource() != null) {
-
- MultipleGetCommand<OtherUserResource> go = new MultipleGetCommand<OtherUserResource>(OtherUserResource.class,
- folderItem.getOthersResource().getOthers().toArray(new String[] {})) {
+ UserResource userResource = GSS.get().getCurrentUserResource();
+ GetCommand<OthersResource> go = new GetCommand<OthersResource>(OthersResource.class,
+ userResource.getOthersPath(), null) {
@Override
public void onComplete() {
- List<OtherUserResource> res = getResult();
- folderItem.removeItems();
- for (OtherUserResource r : res) {
- DnDTreeItem child = (DnDTreeItem) addImageItem(folderItem,
- r.getName(), images.folderYellow(), true);
- child.setUserObject(r);
- child.setState(false);
- if(folderItem.getState())
- update(child);
- }
+ final OthersResource others = getResult();
+ rootItem.setUserObject(others);
+ MultipleGetCommand<OtherUserResource> gogo = new MultipleGetCommand<OtherUserResource>(OtherUserResource.class,
+ folderItem.getOthersResource().getOthers().toArray(new String[] {}), null) {
+
+ @Override
+ public void onComplete() {
+ List<OtherUserResource> res = getResult();
+ folderItem.removeItems();
+ for (OtherUserResource r : res) {
+ DnDTreeItem child = (DnDTreeItem) addImageItem(folderItem,
+ r.getName(), images.folderYellow(), true);
+ r.setUsername(others.getUsernameOfUri(r.getUri()));
+ GWT.log("Setting username:"+r.getUsername(), null );
+ child.setUserObject(r);
+ child.setState(false);
+ }
+ }
+
+ @Override
+ public void onError(Throwable t) {
+ GWT.log("Error fetching Others Root folder", t);
+ GSS.get().displayError("Unable to fetch Others Root folder");
+ }
+
+ @Override
+ public void onError(String p, Throwable throwable) {
+ GWT.log("Path:"+p, throwable);
+ }
+ };
+ DeferredCommand.addCommand(gogo);
}
@Override
GSS.get().displayError("Unable to fetch Others Root folder");
}
- @Override
- public void onError(String p, Throwable throwable) {
- GWT.log("Path:"+p, throwable);
- }
};
+
DeferredCommand.addCommand(go);
} else if (folderItem.getOtherUserResource() != null) {
GetCommand<OtherUserResource> go = new GetCommand<OtherUserResource>(OtherUserResource.class,
- folderItem.getOtherUserResource().getUri()) {
+ folderItem.getOtherUserResource().getUri(), null) {
@Override
public void onComplete() {
DnDTreeItem child = (DnDTreeItem) addImageItem(folderItem,
r.getName(), images.folderYellow(), true);
child.setUserObject(r);
- child.setState(false);
child.doDraggable();
- update(child);
updateFolderAndSubfolders(child);
}
}
};
DeferredCommand.addCommand(go);
} else if (folderItem.getFolderResource() != null) {
-
+ GWT.log("UPDATING :"+folderItem.getFolderResource().getName(), null);
MultipleGetCommand<FolderResource> go = new MultipleGetCommand<FolderResource>(FolderResource.class,
- folderItem.getFolderResource().getSubfolderPaths().toArray(new String[] {})) {
+ folderItem.getFolderResource().getSubfolderPaths().toArray(new String[] {}), folderItem.getFolderResource().getCache()) {
@Override
public void onComplete() {
List<FolderResource> res = getResult();
folderItem.removeItems();
+ GWT.log("UPDATING :"+folderItem.getFolderResource().getName()+" :"+res.size(), null);
for (FolderResource r : res) {
DnDTreeItem child = (DnDTreeItem) addImageItem(folderItem,
r.getName(), images.folderYellow(), true);
child.setUserObject(r);
- child.setState(false);
child.doDraggable();
- update(child);
}
}
public void updateFolderAndSubfolders(final DnDTreeItem folderItem) {
if (folderItem.getFolderResource() != null) {
final String path = folderItem.getFolderResource().getUri();
- GetCommand<FolderResource> gf = new GetCommand<FolderResource>(FolderResource.class, path) {
+ GetCommand<FolderResource> gf = new GetCommand<FolderResource>(FolderResource.class, path, folderItem.getFolderResource()) {
@Override
public void onComplete() {
folderItem.updateWidget(imageItemHTML(images.folderYellow(), rootResource.getName()));
folderItem.setUserObject(rootResource);
folderItem.doDraggable();
- update(folderItem);
}
@Override