You are viewing a plain text version of this content. The canonical link for it is here.
Posted to server-dev@james.apache.org by do...@apache.org on 2013/09/12 05:54:37 UTC
svn commit: r1522270 - in
/james/hupa/trunk/client/src/main/java/org/apache/hupa/client: ./ activity/
place/ ui/
Author: dongxu
Date: Thu Sep 12 03:54:37 2013
New Revision: 1522270
URL: http://svn.apache.org/r1522270
Log:
add logout support
Modified:
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/HupaController.java
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/activity/TopBarActivity.java
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/place/DefaultPlace.java
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/place/MailFolderPlace.java
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/LoginView.java
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/LoginView.ui.xml
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/TopBarView.java
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/TopBarView.ui.xml
Modified: james/hupa/trunk/client/src/main/java/org/apache/hupa/client/HupaController.java
URL: http://svn.apache.org/viewvc/james/hupa/trunk/client/src/main/java/org/apache/hupa/client/HupaController.java?rev=1522270&r1=1522269&r2=1522270&view=diff
==============================================================================
--- james/hupa/trunk/client/src/main/java/org/apache/hupa/client/HupaController.java (original)
+++ james/hupa/trunk/client/src/main/java/org/apache/hupa/client/HupaController.java Thu Sep 12 03:54:37 2013
@@ -264,7 +264,7 @@ public class HupaController {
private final class PlaceChangHandler implements PlaceChangeEvent.Handler {
@Override
public void onPlaceChange(PlaceChangeEvent event) {
- log.fine("place changed to " + event.getNewPlace());
+// log.fine("place changed to " + event.getNewPlace());
// if (placeChange(event)) {
// checkSession();
// }
@@ -279,7 +279,6 @@ public class HupaController {
if (!(RootLayoutPanel.get().getLayoutData() instanceof HupaLayoutable)) {
RootLayoutPanel.get().clear();
RootLayoutPanel.get().add(hupaLayout.get());
- RootLayoutPanel.get().setLayoutData(hupaLayout);
}
} else if (newPlace instanceof DefaultPlace) {
@@ -288,7 +287,6 @@ public class HupaController {
if (!(RootLayoutPanel.get().getLayoutData() instanceof LoginLayoutable)) {
RootLayoutPanel.get().clear();
RootLayoutPanel.get().add(loginLayout.get());
- RootLayoutPanel.get().setLayoutData(loginLayout);
}
}
currentPlace = newPlace;
@@ -334,7 +332,7 @@ public class HupaController {
if (!sessionValid) {
RootLayoutPanel.get().clear();
RootLayoutPanel.get().add(loginLayout.get());
- log.fine("session invalid");
+// log.fine("session invalid");
// HupaController.this.placeController
// .goTo(new DefaultPlace());
Modified: james/hupa/trunk/client/src/main/java/org/apache/hupa/client/activity/TopBarActivity.java
URL: http://svn.apache.org/viewvc/james/hupa/trunk/client/src/main/java/org/apache/hupa/client/activity/TopBarActivity.java?rev=1522270&r1=1522269&r2=1522270&view=diff
==============================================================================
--- james/hupa/trunk/client/src/main/java/org/apache/hupa/client/activity/TopBarActivity.java (original)
+++ james/hupa/trunk/client/src/main/java/org/apache/hupa/client/activity/TopBarActivity.java Thu Sep 12 03:54:37 2013
@@ -20,6 +20,7 @@
package org.apache.hupa.client.activity;
<<<<<<< HEAD
+<<<<<<< HEAD
import org.apache.hupa.client.place.DefaultPlace;
import org.apache.hupa.client.rf.CheckSessionRequest;
import org.apache.hupa.client.rf.LogoutUserRequest;
@@ -132,21 +133,80 @@ public class TopBarActivity extends AppB
return user;
}
=======
+=======
+import org.apache.hupa.client.place.DefaultPlace;
+import org.apache.hupa.client.rf.LogoutUserRequest;
+import org.apache.hupa.client.ui.LoginLayoutable;
+>>>>>>> add logout support
import org.apache.hupa.client.ui.WidgetDisplayable;
+import org.apache.hupa.shared.domain.LogoutUserResult;
+import org.apache.hupa.shared.domain.User;
+import org.apache.hupa.shared.events.LoginEvent;
+import org.apache.hupa.shared.events.LoginEventHandler;
+import org.apache.hupa.shared.events.LogoutEvent;
+import com.google.gwt.event.dom.client.ClickEvent;
+import com.google.gwt.event.dom.client.ClickHandler;
+import com.google.gwt.event.dom.client.HasClickHandlers;
import com.google.gwt.event.shared.EventBus;
import com.google.gwt.user.client.ui.AcceptsOneWidget;
+import com.google.gwt.user.client.ui.HTMLPanel;
+import com.google.gwt.user.client.ui.RootLayoutPanel;
import com.google.inject.Inject;
+import com.google.web.bindery.requestfactory.shared.Receiver;
public class TopBarActivity extends AppBaseActivity {
+ @Inject private Displayable display;
+ @Inject private LoginLayoutable loginLayout;
+ private User user;
+
@Override
public void start(AcceptsOneWidget container, EventBus eventBus) {
container.setWidget(display.asWidget());
+ bindTo(eventBus);
}
+<<<<<<< HEAD
@Inject private Displayable display;
public interface Displayable extends WidgetDisplayable {}
>>>>>>> integrate all of the views to their corresponding activities and mappers
+=======
+ private void bindTo(EventBus eventBus) {
+
+ eventBus.addHandler(LoginEvent.TYPE, new LoginEventHandler() {
+ public void onLogin(LoginEvent event) {
+ user = event.getUser();
+ }
+ });
+ registerHandler(display.getLogoutClick().addClickHandler(
+ new ClickHandler() {
+ public void onClick(ClickEvent event) {
+ doLogout();
+ }
+ }));
+ }
+
+ private void doLogout() {
+ if (user != null) {
+ LogoutUserRequest req = requestFactory.logoutRequest();
+ req.logout().fire(new Receiver<LogoutUserResult>() {
+ @Override
+ public void onSuccess(LogoutUserResult response) {
+ eventBus.fireEvent(new LogoutEvent(response.getUser()));
+ RootLayoutPanel.get().clear();
+ RootLayoutPanel.get().add(loginLayout.get());
+ TopBarActivity.this.placeController.goTo(new DefaultPlace());
+ }
+ });
+ }
+ }
+
+ public interface Displayable extends WidgetDisplayable {
+ HasClickHandlers getLogoutClick();
+
+ HTMLPanel getUserLabel();
+ }
+>>>>>>> add logout support
}
Modified: james/hupa/trunk/client/src/main/java/org/apache/hupa/client/place/DefaultPlace.java
URL: http://svn.apache.org/viewvc/james/hupa/trunk/client/src/main/java/org/apache/hupa/client/place/DefaultPlace.java?rev=1522270&r1=1522269&r2=1522270&view=diff
==============================================================================
--- james/hupa/trunk/client/src/main/java/org/apache/hupa/client/place/DefaultPlace.java (original)
+++ james/hupa/trunk/client/src/main/java/org/apache/hupa/client/place/DefaultPlace.java Thu Sep 12 03:54:37 2013
@@ -68,7 +68,7 @@ import com.google.gwt.place.shared.Prefi
public class DefaultPlace extends AbstractPlace {
- @Prefix("!")
+ @Prefix("")
public static class Tokenizer implements PlaceTokenizer<DefaultPlace> {
@Override
Modified: james/hupa/trunk/client/src/main/java/org/apache/hupa/client/place/MailFolderPlace.java
URL: http://svn.apache.org/viewvc/james/hupa/trunk/client/src/main/java/org/apache/hupa/client/place/MailFolderPlace.java?rev=1522270&r1=1522269&r2=1522270&view=diff
==============================================================================
--- james/hupa/trunk/client/src/main/java/org/apache/hupa/client/place/MailFolderPlace.java (original)
+++ james/hupa/trunk/client/src/main/java/org/apache/hupa/client/place/MailFolderPlace.java Thu Sep 12 03:54:37 2013
@@ -28,7 +28,7 @@ import com.google.gwt.place.shared.Prefi
public class MailFolderPlace extends AbstractPlace {
// this can remove the colon ":"
- private static final String PREFIX = "";
+ private static final String PREFIX = "folder";
private User user;
private String folderName = "";
Modified: james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/LoginView.java
URL: http://svn.apache.org/viewvc/james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/LoginView.java?rev=1522270&r1=1522269&r2=1522270&view=diff
==============================================================================
--- james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/LoginView.java (original)
+++ james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/LoginView.java Thu Sep 12 03:54:37 2013
@@ -269,6 +269,8 @@ public class LoginView extends Composite
interface Style extends CssResource {
String loading();
+ String hidden();
+ String display();
}
@Inject
@@ -472,8 +474,12 @@ public class LoginView extends Composite
message.addStyleName(style.display());
} else {
message.removeStyleName(style.loading());
+<<<<<<< HEAD
message.removeStyleName(style.display());
message.addStyleName(style.hidden());
+=======
+ message.removeStyleName(style.hidden());
+>>>>>>> add logout support
}
=======
=======
Modified: james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/LoginView.ui.xml
URL: http://svn.apache.org/viewvc/james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/LoginView.ui.xml?rev=1522270&r1=1522269&r2=1522270&view=diff
==============================================================================
--- james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/LoginView.ui.xml (original)
+++ james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/LoginView.ui.xml Thu Sep 12 03:54:37 2013
@@ -154,6 +154,13 @@
white-space: nowrap;
text-align: center;
cursor: default;
+ }
+
+ .hidden {
+ display: none;
+ }
+
+ .display {
display: inline-block;
}
@@ -173,9 +180,7 @@
</g:FlowPanel>
<g:FlowPanel ui:field="boxBottom" styleName="{style.boxBottom}">
<g:FlowPanel ui:field="messageBox" addStyleNames="{style.message}">
- <g:HTMLPanel ui:field="message" addStyleNames="{style.notice}">You have successfully
- terminated the
- session. Good bye!
+ <g:HTMLPanel ui:field="message" addStyleNames="{style.notice}{style.hidden}">
</g:HTMLPanel>
</g:FlowPanel>
</g:FlowPanel>
Modified: james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/TopBarView.java
URL: http://svn.apache.org/viewvc/james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/TopBarView.java?rev=1522270&r1=1522269&r2=1522270&view=diff
==============================================================================
--- james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/TopBarView.java (original)
+++ james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/TopBarView.java Thu Sep 12 03:54:37 2013
@@ -24,6 +24,7 @@ package org.apache.hupa.client.ui;
import org.apache.hupa.client.activity.TopBarActivity;
import com.google.gwt.core.client.GWT;
+<<<<<<< HEAD
import com.google.gwt.event.dom.client.ClickEvent;
import com.google.gwt.event.dom.client.HasClickHandlers;
import com.google.gwt.resources.client.CssResource;
@@ -67,6 +68,20 @@ public class TopBarView extends Composit
=======
public class TopBarView extends Composite implements TopBarActivity.Displayable{
>>>>>>> integrate all of the views to their corresponding activities and mappers
+=======
+import com.google.gwt.event.dom.client.HasClickHandlers;
+import com.google.gwt.uibinder.client.UiBinder;
+import com.google.gwt.uibinder.client.UiField;
+import com.google.gwt.user.client.ui.Anchor;
+import com.google.gwt.user.client.ui.Composite;
+import com.google.gwt.user.client.ui.DockLayoutPanel;
+import com.google.gwt.user.client.ui.HTMLPanel;
+
+public class TopBarView extends Composite implements TopBarActivity.Displayable {
+
+ @UiField Anchor logout;
+ @UiField HTMLPanel userLabel;
+>>>>>>> add logout support
public TopBarView() {
initWidget(binder.createAndBindUi(this));
@@ -108,6 +123,16 @@ public class TopBarView extends Composit
=======
>>>>>>> make login page as one part of the overall layout & splite layout to little one
+ @Override
+ public HasClickHandlers getLogoutClick() {
+ return logout;
+ }
+
+ @Override
+ public HTMLPanel getUserLabel() {
+ return userLabel;
+ }
+
interface TopBarUiBinder extends UiBinder<DockLayoutPanel, TopBarView> {
}
Modified: james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/TopBarView.ui.xml
URL: http://svn.apache.org/viewvc/james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/TopBarView.ui.xml?rev=1522270&r1=1522269&r2=1522270&view=diff
==============================================================================
--- james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/TopBarView.ui.xml (original)
+++ james/hupa/trunk/client/src/main/java/org/apache/hupa/client/ui/TopBarView.ui.xml Thu Sep 12 03:54:37 2013
@@ -124,9 +124,8 @@
</g:west>
<g:center>
<g:FlowPanel>
- <g:Anchor addStyleNames="{style.right} {style.logout}">Logout</g:Anchor>
- <g:HTMLPanel tag="span" addStyleNames="{style.right} {style.username}">echowdx@gmail.com
- </g:HTMLPanel>
+ <g:Anchor ui:field="logout" addStyleNames="{style.right} {style.logout}">Logout</g:Anchor>
+ <g:HTMLPanel ui:field="userLabel" tag="span" addStyleNames="{style.right} {style.username}" />
</g:FlowPanel>
</g:center>
>>>>>>> make login page as one part of the overall layout & splite layout to little one
---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org