Implement the /user_catalogs API
[pithos-web-client] / src / gr / grnet / pithos / web / client / commands / PasteCommand.java
index 6ae2669..1189ade 100644 (file)
@@ -39,7 +39,7 @@ import gr.grnet.pithos.web.client.Clipboard;
 import gr.grnet.pithos.web.client.Pithos;
 import gr.grnet.pithos.web.client.foldertree.File;
 import gr.grnet.pithos.web.client.foldertree.Folder;
-import gr.grnet.pithos.web.client.foldertree.Resource;
+import gr.grnet.pithos.web.client.Resource;
 import gr.grnet.pithos.web.client.rest.PutRequest;
 import gr.grnet.pithos.web.client.rest.RestException;
 
@@ -76,7 +76,8 @@ public class PasteCommand implements Command {
         if (clipboardItem instanceof Folder) {
             final Folder tobeCopied = (Folder) clipboardItem;
             if (operation == Clipboard.COPY) {
-                app.copyFolder(tobeCopied, folder.getOwner(), folder.getUri(), new Command() {
+               String targetUri = folder.getUri() + "/" + tobeCopied.getName();
+                app.copyFolder(tobeCopied, folder.getOwner(), targetUri, false, new Command() {
                     @Override
                     public void execute() {
                         app.getClipboard().clear();
@@ -86,17 +87,17 @@ public class PasteCommand implements Command {
                                                        public void execute() {
                                                                app.updateStatistics();
                                                        }
-                                               });
+                                               }, true);
                     }
                 });
             }
             else {
-                app.copyFolder(tobeCopied, folder.getOwner(), folder.getUri(), new Command() {
+               String targetUri = folder.getUri() + "/" + tobeCopied.getName();
+                app.copyFolder(tobeCopied, folder.getOwner(), targetUri, true, new Command() {
                     @Override
                     public void execute() {
                         app.getClipboard().clear();
-                        app.deleteFolder(tobeCopied, null);
-                        app.updateFolder(folder, true, null);
+                        app.updateFolder(folder, true, null, true);
                     }
                 });
             }
@@ -116,7 +117,7 @@ public class PasteCommand implements Command {
                                                        public void execute() {
                                                                app.updateStatistics();
                                                        }
-                                               });
+                                               }, true);
                     }
                 });
             }
@@ -125,7 +126,7 @@ public class PasteCommand implements Command {
                     @Override
                     public void execute() {
                         app.getClipboard().clear();
-                        app.updateFolder(folder, true, null);
+                        app.updateFolder(folder, true, null, true);
                     }
                 });
             }
@@ -158,7 +159,7 @@ public class PasteCommand implements Command {
                                        app.sessionExpired();
                                }
             };
-            copyFile.setHeader("X-Auth-Token", app.getToken());
+            copyFile.setHeader("X-Auth-Token", app.getUserToken());
             copyFile.setHeader("X-Move-From", URL.encodePathSegment(file.getUri()));
             copyFile.setHeader("Content-Type", file.getContentType());
             Scheduler.get().scheduleDeferred(copyFile);