Fixed various warnings
[pithos-web-client] / src / gr / grnet / pithos / web / client / commands / AddUserCommand.java
index b1be216..489453e 100644 (file)
@@ -42,6 +42,8 @@ import gr.grnet.pithos.web.client.rest.RestException;
 
 import com.google.gwt.core.client.GWT;
 import com.google.gwt.core.client.Scheduler;
+import com.google.gwt.http.client.Response;
+import com.google.gwt.http.client.URL;
 import com.google.gwt.user.client.Command;
 import com.google.gwt.user.client.Window;
 import com.google.gwt.user.client.ui.PopupPanel;
@@ -84,18 +86,24 @@ public class AddUserCommand implements Command {
                                @Override
                                public void onError(Throwable t) {
                                        GWT.log("", t);
+                                       app.setError(t);
                                        if (t instanceof RestException) {
                                                app.displayError("Unable to update group:" + ((RestException) t).getHttpStatusText());
                                        }
-                                       else
+                                       else 
                                                app.displayError("System error updating group:" + t.getMessage());
                                }
+
+                               @Override
+                               protected void onUnauthorized(Response response) {
+                                       app.sessionExpired();
+                               }
                        };
                        updateGroup.setHeader("X-Auth-Token", app.getToken());
                        String groupMembers = "";
                        for (String u : group.getMembers())
-                               groupMembers += (u + ",");
-                       updateGroup.setHeader("X-Account-Group-" + group.getName(), groupMembers);
+                               groupMembers += (URL.encodePathSegment(u) + ",");
+                       updateGroup.setHeader("X-Account-Group-" + URL.encodePathSegment(group.getName()), groupMembers);
                        Scheduler.get().scheduleDeferred(updateGroup);
         }
        }