You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@labs.apache.org by no...@apache.org on 2009/09/06 12:26:12 UTC
svn commit: r811798 - in /labs/hupa/trunk:
client/src/main/java/org/apache/hupa/client/
client/src/main/java/org/apache/hupa/client/mvp/
shared/src/main/java/org/apache/hupa/shared/events/
Author: norman
Date: Sun Sep 6 10:26:11 2009
New Revision: 811798
URL: http://svn.apache.org/viewvc?rev=811798&view=rev
Log:
Logout the user and show an error message if the session expires (LABS-437)
Added:
labs/hupa/trunk/client/src/main/java/org/apache/hupa/client/SessionAsyncCallback.java
- copied, changed from r811490, labs/hupa/trunk/client/src/main/java/org/apache/hupa/client/MyAsyncCallback.java
labs/hupa/trunk/shared/src/main/java/org/apache/hupa/shared/events/SessionExpireEvent.java
labs/hupa/trunk/shared/src/main/java/org/apache/hupa/shared/events/SessionExpireEventHandler.java
Removed:
labs/hupa/trunk/client/src/main/java/org/apache/hupa/client/MyAsyncCallback.java
Modified:
labs/hupa/trunk/client/src/main/java/org/apache/hupa/client/HupaConstants.java
labs/hupa/trunk/client/src/main/java/org/apache/hupa/client/HupaConstants.properties
labs/hupa/trunk/client/src/main/java/org/apache/hupa/client/mvp/AppPresenter.java
labs/hupa/trunk/client/src/main/java/org/apache/hupa/client/mvp/IMAPFolderPresenter.java
labs/hupa/trunk/client/src/main/java/org/apache/hupa/client/mvp/IMAPMessageListPresenter.java
labs/hupa/trunk/client/src/main/java/org/apache/hupa/client/mvp/IMAPMessagePresenter.java
labs/hupa/trunk/client/src/main/java/org/apache/hupa/client/mvp/LoginPresenter.java
labs/hupa/trunk/client/src/main/java/org/apache/hupa/client/mvp/MainPresenter.java
labs/hupa/trunk/client/src/main/java/org/apache/hupa/client/mvp/MessageSendPresenter.java
Modified: labs/hupa/trunk/client/src/main/java/org/apache/hupa/client/HupaConstants.java
URL: http://svn.apache.org/viewvc/labs/hupa/trunk/client/src/main/java/org/apache/hupa/client/HupaConstants.java?rev=811798&r1=811797&r2=811798&view=diff
==============================================================================
--- labs/hupa/trunk/client/src/main/java/org/apache/hupa/client/HupaConstants.java (original)
+++ labs/hupa/trunk/client/src/main/java/org/apache/hupa/client/HupaConstants.java Sun Sep 6 10:26:11 2009
@@ -101,4 +101,6 @@
public String backButton();
public String rawButton();
+
+ public String sessionTimedOut();
}
Modified: labs/hupa/trunk/client/src/main/java/org/apache/hupa/client/HupaConstants.properties
URL: http://svn.apache.org/viewvc/labs/hupa/trunk/client/src/main/java/org/apache/hupa/client/HupaConstants.properties?rev=811798&r1=811797&r2=811798&view=diff
==============================================================================
--- labs/hupa/trunk/client/src/main/java/org/apache/hupa/client/HupaConstants.properties (original)
+++ labs/hupa/trunk/client/src/main/java/org/apache/hupa/client/HupaConstants.properties Sun Sep 6 10:26:11 2009
@@ -40,3 +40,4 @@
loginAs=Login as
backButton=Back
rawButton=Show raw message
+sessionTimedOut=Your session is timed out. Please login again!
Copied: labs/hupa/trunk/client/src/main/java/org/apache/hupa/client/SessionAsyncCallback.java (from r811490, labs/hupa/trunk/client/src/main/java/org/apache/hupa/client/MyAsyncCallback.java)
URL: http://svn.apache.org/viewvc/labs/hupa/trunk/client/src/main/java/org/apache/hupa/client/SessionAsyncCallback.java?p2=labs/hupa/trunk/client/src/main/java/org/apache/hupa/client/SessionAsyncCallback.java&p1=labs/hupa/trunk/client/src/main/java/org/apache/hupa/client/MyAsyncCallback.java&r1=811490&r2=811798&rev=811798&view=diff
==============================================================================
--- labs/hupa/trunk/client/src/main/java/org/apache/hupa/client/MyAsyncCallback.java (original)
+++ labs/hupa/trunk/client/src/main/java/org/apache/hupa/client/SessionAsyncCallback.java Sun Sep 6 10:26:11 2009
@@ -22,27 +22,45 @@
import net.customware.gwt.presenter.client.EventBus;
import org.apache.hupa.shared.data.User;
-import org.apache.hupa.shared.events.LogoutEvent;
+import org.apache.hupa.shared.events.SessionExpireEvent;
import org.apache.hupa.shared.exception.InvalidSessionException;
-import com.google.gwt.core.client.GWT;
import com.google.gwt.user.client.rpc.AsyncCallback;
-public abstract class MyAsyncCallback<T> implements AsyncCallback<T>{
+/**
+ * AsyncCallback which wraps an other AsyncCallback and checks if an InvalidSessionException was thrown. If so
+ * it will fire an InvalidSessionEvent, if not it will just call the wrapped AsyncCallback
+ */
+public class SessionAsyncCallback<T> implements AsyncCallback<T>{
private EventBus bus;
private User user;
+ private AsyncCallback<T> callBack;
- public MyAsyncCallback(EventBus bus,User user) {
+ public SessionAsyncCallback(AsyncCallback<T> callBack, EventBus bus,User user) {
+ this.callBack = callBack;
this.bus = bus;
this.user = user;
}
+ /*
+ * (non-Javadoc)
+ * @see com.google.gwt.user.client.rpc.AsyncCallback#onFailure(java.lang.Throwable)
+ */
public void onFailure(Throwable caught) {
if (caught instanceof InvalidSessionException) {
- bus.fireEvent(new LogoutEvent(user));
+ bus.fireEvent(new SessionExpireEvent(user));
+ } else {
+ callBack.onFailure(caught);
}
- GWT.log("Error while executing remote service", caught);
+ }
+
+ /*
+ * (non-Javadoc)
+ * @see com.google.gwt.user.client.rpc.AsyncCallback#onSuccess(java.lang.Object)
+ */
+ public void onSuccess(T result) {
+ callBack.onSuccess(result);
}
}
Modified: labs/hupa/trunk/client/src/main/java/org/apache/hupa/client/mvp/AppPresenter.java
URL: http://svn.apache.org/viewvc/labs/hupa/trunk/client/src/main/java/org/apache/hupa/client/mvp/AppPresenter.java?rev=811798&r1=811797&r2=811798&view=diff
==============================================================================
--- labs/hupa/trunk/client/src/main/java/org/apache/hupa/client/mvp/AppPresenter.java (original)
+++ labs/hupa/trunk/client/src/main/java/org/apache/hupa/client/mvp/AppPresenter.java Sun Sep 6 10:26:11 2009
@@ -27,11 +27,14 @@
import net.customware.gwt.presenter.client.widget.WidgetDisplay;
import net.customware.gwt.presenter.client.widget.WidgetPresenter;
+import org.apache.hupa.client.SessionAsyncCallback;
import org.apache.hupa.shared.data.User;
import org.apache.hupa.shared.events.LoginEvent;
import org.apache.hupa.shared.events.LoginEventHandler;
import org.apache.hupa.shared.events.LogoutEvent;
import org.apache.hupa.shared.events.LogoutEventHandler;
+import org.apache.hupa.shared.events.SessionExpireEvent;
+import org.apache.hupa.shared.events.SessionExpireEventHandler;
import org.apache.hupa.shared.rpc.LoginSession;
import org.apache.hupa.shared.rpc.LoginUserResult;
import org.apache.hupa.shared.rpc.LogoutUser;
@@ -112,7 +115,7 @@
@Override
public void run() {
- dispatcher.execute(new Noop(user.getSessionId()), new AsyncCallback<NoopResult>() {
+ dispatcher.execute(new Noop(user.getSessionId()), new SessionAsyncCallback<NoopResult>(new AsyncCallback<NoopResult>() {
public void onFailure(Throwable caught) {
GWT.log("Error while NOOP", caught);
@@ -121,7 +124,7 @@
public void onSuccess(NoopResult result) {
}
- });
+ }, eventBus, user));
}
};
@@ -154,6 +157,13 @@
}
}));
+ registerHandler(eventBus.addHandler(SessionExpireEvent.TYPE, new SessionExpireEventHandler() {
+
+ public void onSessionExpireEvent(SessionExpireEvent event) {
+ doLogout();
+ }
+
+ }));
checkForCookie();
}
Modified: labs/hupa/trunk/client/src/main/java/org/apache/hupa/client/mvp/IMAPFolderPresenter.java
URL: http://svn.apache.org/viewvc/labs/hupa/trunk/client/src/main/java/org/apache/hupa/client/mvp/IMAPFolderPresenter.java?rev=811798&r1=811797&r2=811798&view=diff
==============================================================================
--- labs/hupa/trunk/client/src/main/java/org/apache/hupa/client/mvp/IMAPFolderPresenter.java (original)
+++ labs/hupa/trunk/client/src/main/java/org/apache/hupa/client/mvp/IMAPFolderPresenter.java Sun Sep 6 10:26:11 2009
@@ -32,6 +32,7 @@
import net.customware.gwt.presenter.client.widget.WidgetDisplay;
import net.customware.gwt.presenter.client.widget.WidgetPresenter;
+import org.apache.hupa.client.SessionAsyncCallback;
import org.apache.hupa.client.widgets.HasDialog;
import org.apache.hupa.client.widgets.IMAPTreeItem;
import org.apache.hupa.shared.data.IMAPFolder;
@@ -95,7 +96,7 @@
}
protected void loadTreeItems() {
- dispatcher.execute(new FetchFolders(user.getSessionId()), new DisplayCallback<FetchFoldersResult>(display) {
+ dispatcher.execute(new FetchFolders(user.getSessionId()), new SessionAsyncCallback<FetchFoldersResult>(new DisplayCallback<FetchFoldersResult>(display) {
@Override
protected void handleFailure(Throwable e) {
@@ -112,7 +113,7 @@
}
- });
+ },eventBus,user));
}
@@ -137,7 +138,7 @@
IMAPFolder iFolder = new IMAPFolder((String)event.getOldValue());
final String newName = (String)event.getNewValue();
if (iFolder.getFullName().equalsIgnoreCase(newName) == false) {
- dispatcher.execute(new RenameFolder(user.getSessionId(), iFolder, newName), new AsyncCallback<EmptyResult>() {
+ dispatcher.execute(new RenameFolder(user.getSessionId(), iFolder, newName), new SessionAsyncCallback<EmptyResult>(new AsyncCallback<EmptyResult>() {
public void onFailure(Throwable caught) {
record.cancelEdit();
@@ -147,7 +148,7 @@
folder.setFullName(newName);
}
- });
+ },eventBus,user));
}
}
Modified: labs/hupa/trunk/client/src/main/java/org/apache/hupa/client/mvp/IMAPMessageListPresenter.java
URL: http://svn.apache.org/viewvc/labs/hupa/trunk/client/src/main/java/org/apache/hupa/client/mvp/IMAPMessageListPresenter.java?rev=811798&r1=811797&r2=811798&view=diff
==============================================================================
--- labs/hupa/trunk/client/src/main/java/org/apache/hupa/client/mvp/IMAPMessageListPresenter.java (original)
+++ labs/hupa/trunk/client/src/main/java/org/apache/hupa/client/mvp/IMAPMessageListPresenter.java Sun Sep 6 10:26:11 2009
@@ -28,7 +28,7 @@
import net.customware.gwt.presenter.client.widget.WidgetDisplay;
import net.customware.gwt.presenter.client.widget.WidgetPresenter;
-import org.apache.hupa.client.MyAsyncCallback;
+import org.apache.hupa.client.SessionAsyncCallback;
import org.apache.hupa.client.widgets.HasDialog;
import org.apache.hupa.shared.data.IMAPFolder;
import org.apache.hupa.shared.data.Message;
@@ -105,7 +105,7 @@
public void onMoveMessageHandler(MoveMessageEvent event) {
final Message message = event.getMessage();
- dispatcher.execute(new MoveMessage(event.getUser().getSessionId(),event.getOldFolder(),event.getNewFolder(),message.getUid()), new AsyncCallback<MoveMessageResult>() {
+ dispatcher.execute(new MoveMessage(event.getUser().getSessionId(),event.getOldFolder(),event.getNewFolder(),message.getUid()), new SessionAsyncCallback<MoveMessageResult>(new AsyncCallback<MoveMessageResult>() {
public void onFailure(Throwable caught) {
GWT.log("ERROR while moving",caught);
@@ -117,7 +117,7 @@
display.removeMessages(messageArray);
}
- });
+ },eventBus,user));
}
}));
@@ -177,14 +177,18 @@
for (int i = 0; i < selectedMessages.size(); i++) {
uids.add(selectedMessages.get(i).getUid());
}
- dispatcher.execute(new DeleteMessage(user.getSessionId(),folder,uids), new MyAsyncCallback<DeleteMessageResult>(eventBus,user) {
+ dispatcher.execute(new DeleteMessage(user.getSessionId(),folder,uids), new SessionAsyncCallback<DeleteMessageResult>(new AsyncCallback<DeleteMessageResult>() {
+
+ public void onFailure(Throwable caught) {
+ // TODO Auto-generated method stub
+
+ }
public void onSuccess(DeleteMessageResult result) {
display.removeMessages(selectedMessages);
eventBus.fireEvent(new DecreaseUnseenEvent(user,folder,result.getMessageUids().size()));
}
-
- });
+ }, eventBus,user));
}
public void bind(User user, IMAPFolder folder, String searchValue) {
Modified: labs/hupa/trunk/client/src/main/java/org/apache/hupa/client/mvp/IMAPMessagePresenter.java
URL: http://svn.apache.org/viewvc/labs/hupa/trunk/client/src/main/java/org/apache/hupa/client/mvp/IMAPMessagePresenter.java?rev=811798&r1=811797&r2=811798&view=diff
==============================================================================
--- labs/hupa/trunk/client/src/main/java/org/apache/hupa/client/mvp/IMAPMessagePresenter.java (original)
+++ labs/hupa/trunk/client/src/main/java/org/apache/hupa/client/mvp/IMAPMessagePresenter.java Sun Sep 6 10:26:11 2009
@@ -30,7 +30,7 @@
import net.customware.gwt.presenter.client.widget.WidgetPresenter;
import org.apache.hupa.client.CachingDispatchAsync;
-import org.apache.hupa.client.MyAsyncCallback;
+import org.apache.hupa.client.SessionAsyncCallback;
import org.apache.hupa.client.widgets.HasDialog;
import org.apache.hupa.shared.Util;
import org.apache.hupa.shared.data.IMAPFolder;
@@ -50,6 +50,7 @@
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.user.client.rpc.AsyncCallback;
import com.google.gwt.user.client.ui.HasHTML;
import com.google.gwt.user.client.ui.HasText;
import com.google.inject.Inject;
@@ -127,13 +128,18 @@
public void onClick(ClickEvent event) {
ArrayList<Long> uidList = new ArrayList<Long>();
uidList.add(message.getUid());
- dispatcher.execute(new DeleteMessage(user.getSessionId(),folder,uidList), new MyAsyncCallback<DeleteMessageResult>(eventBus,user) {
+ dispatcher.execute(new DeleteMessage(user.getSessionId(),folder,uidList), new SessionAsyncCallback<DeleteMessageResult>(new AsyncCallback<DeleteMessageResult>() {
+
+ public void onFailure(Throwable caught) {
+ // TODO Auto-generated method stub
+
+ }
public void onSuccess(DeleteMessageResult result) {
eventBus.fireEvent(new LoadMessagesEvent(user,folder));
}
- });
+ }, eventBus,user));
}
}));
@@ -171,7 +177,7 @@
registerHandler(display.getShowRawMessageClick().addClickHandler(new ClickHandler() {
public void onClick(ClickEvent event) {
- dispatcher.executeWithCache(new RawMessage(user.getSessionId(),folder,message.getUid()), new DisplayCallback<RawMessageResult>(display) {
+ dispatcher.executeWithCache(new RawMessage(user.getSessionId(),folder,message.getUid()), new SessionAsyncCallback<RawMessageResult>(new DisplayCallback<RawMessageResult>(display) {
@Override
protected void handleFailure(Throwable e) {
@@ -186,7 +192,7 @@
}
- });
+ },eventBus,user));
}
}));
Modified: labs/hupa/trunk/client/src/main/java/org/apache/hupa/client/mvp/LoginPresenter.java
URL: http://svn.apache.org/viewvc/labs/hupa/trunk/client/src/main/java/org/apache/hupa/client/mvp/LoginPresenter.java?rev=811798&r1=811797&r2=811798&view=diff
==============================================================================
--- labs/hupa/trunk/client/src/main/java/org/apache/hupa/client/mvp/LoginPresenter.java (original)
+++ labs/hupa/trunk/client/src/main/java/org/apache/hupa/client/mvp/LoginPresenter.java Sun Sep 6 10:26:11 2009
@@ -29,6 +29,8 @@
import org.apache.hupa.client.HupaConstants;
import org.apache.hupa.shared.events.LoginEvent;
+import org.apache.hupa.shared.events.SessionExpireEvent;
+import org.apache.hupa.shared.events.SessionExpireEventHandler;
import org.apache.hupa.shared.rpc.LoginUser;
import org.apache.hupa.shared.rpc.LoginUserResult;
@@ -116,6 +118,14 @@
}
}));
+
+ registerHandler(eventBus.addHandler(SessionExpireEvent.TYPE, new SessionExpireEventHandler() {
+
+ public void onSessionExpireEvent(SessionExpireEvent event) {
+ display.getErrorText().setText(constants.sessionTimedOut());
+ }
+
+ }));
}
@Override
Modified: labs/hupa/trunk/client/src/main/java/org/apache/hupa/client/mvp/MainPresenter.java
URL: http://svn.apache.org/viewvc/labs/hupa/trunk/client/src/main/java/org/apache/hupa/client/mvp/MainPresenter.java?rev=811798&r1=811797&r2=811798&view=diff
==============================================================================
--- labs/hupa/trunk/client/src/main/java/org/apache/hupa/client/mvp/MainPresenter.java (original)
+++ labs/hupa/trunk/client/src/main/java/org/apache/hupa/client/mvp/MainPresenter.java Sun Sep 6 10:26:11 2009
@@ -29,6 +29,7 @@
import net.customware.gwt.presenter.client.widget.WidgetPresenter;
import org.apache.hupa.client.CachingDispatchAsync;
+import org.apache.hupa.client.SessionAsyncCallback;
import org.apache.hupa.client.mvp.MessageSendPresenter.Type;
import org.apache.hupa.shared.data.IMAPFolder;
import org.apache.hupa.shared.data.Message;
@@ -206,7 +207,7 @@
} else {
decreaseUnseen = false;
}
- cachingDispatcher.executeWithCache(new GetMessageDetails(event.getUser().getSessionId(),event.getFolder(),message.getUid()), new DisplayCallback<GetMessageDetailsResult>(display) {
+ cachingDispatcher.executeWithCache(new GetMessageDetails(event.getUser().getSessionId(),event.getFolder(),message.getUid()), new SessionAsyncCallback<GetMessageDetailsResult>(new DisplayCallback<GetMessageDetailsResult>(display) {
@Override
protected void handleFailure(Throwable e) {
@@ -224,7 +225,7 @@
}
- });
+ }, eventBus, user));
}
}));
Modified: labs/hupa/trunk/client/src/main/java/org/apache/hupa/client/mvp/MessageSendPresenter.java
URL: http://svn.apache.org/viewvc/labs/hupa/trunk/client/src/main/java/org/apache/hupa/client/mvp/MessageSendPresenter.java?rev=811798&r1=811797&r2=811798&view=diff
==============================================================================
--- labs/hupa/trunk/client/src/main/java/org/apache/hupa/client/mvp/MessageSendPresenter.java (original)
+++ labs/hupa/trunk/client/src/main/java/org/apache/hupa/client/mvp/MessageSendPresenter.java Sun Sep 6 10:26:11 2009
@@ -28,7 +28,7 @@
import net.customware.gwt.presenter.client.widget.WidgetDisplay;
import net.customware.gwt.presenter.client.widget.WidgetPresenter;
-import org.apache.hupa.client.MyAsyncCallback;
+import org.apache.hupa.client.SessionAsyncCallback;
import org.apache.hupa.client.validation.EmailListValidator;
import org.apache.hupa.client.validation.NotEmptyValidator;
import org.apache.hupa.shared.Util;
@@ -55,6 +55,7 @@
import com.google.gwt.event.dom.client.HasClickHandlers;
import com.google.gwt.event.logical.shared.ValueChangeEvent;
import com.google.gwt.event.logical.shared.ValueChangeHandler;
+import com.google.gwt.user.client.rpc.AsyncCallback;
import com.google.gwt.user.client.ui.HasText;
import com.google.inject.Inject;
@@ -190,34 +191,49 @@
message.setMessageAttachments(aList);
if (type.equals(Type.NEW)) {
- dispatcher.execute(new SendMessage(user.getSessionId(),message), new MyAsyncCallback<EmptyResult>(eventBus,user) {
+ dispatcher.execute(new SendMessage(user.getSessionId(),message), new SessionAsyncCallback<EmptyResult>(new AsyncCallback<EmptyResult>() {
+
+ public void onFailure(Throwable caught) {
+ // TODO Auto-generated method stub
+
+ }
public void onSuccess(EmptyResult result) {
reset();
eventBus.fireEvent(new SentMessageEvent());
}
-
- });
+
+ }, eventBus,user));
} else if(type.equals(Type.FORWARD)) {
- dispatcher.execute(new ForwardMessage(user.getSessionId(),message,folder,oldmessage.getUid()), new MyAsyncCallback<EmptyResult>(eventBus,user) {
+ dispatcher.execute(new ForwardMessage(user.getSessionId(),message,folder,oldmessage.getUid()), new SessionAsyncCallback<EmptyResult>(new AsyncCallback<EmptyResult>() {
+
+ public void onFailure(Throwable caught) {
+ // TODO Auto-generated method stub
+
+ }
public void onSuccess(EmptyResult result) {
reset();
eventBus.fireEvent(new SentMessageEvent());
}
-
- });
+
+ }, eventBus,user));
} else if(type.equals(Type.REPLY) || type.equals(Type.REPLY_ALL)) {
boolean replyAll = type.equals(Type.REPLY_ALL);
- dispatcher.execute(new ReplyMessage(user.getSessionId(),message,folder,oldmessage.getUid(),replyAll), new MyAsyncCallback<EmptyResult>(eventBus,user) {
+ dispatcher.execute(new ReplyMessage(user.getSessionId(),message,folder,oldmessage.getUid(),replyAll),new SessionAsyncCallback<EmptyResult>(new AsyncCallback<EmptyResult>() {
+
+ public void onFailure(Throwable caught) {
+ // TODO Auto-generated method stub
+
+ }
public void onSuccess(EmptyResult result) {
reset();
eventBus.fireEvent(new SentMessageEvent());
}
-
- });
+
+ }, eventBus,user));
}
}
Added: labs/hupa/trunk/shared/src/main/java/org/apache/hupa/shared/events/SessionExpireEvent.java
URL: http://svn.apache.org/viewvc/labs/hupa/trunk/shared/src/main/java/org/apache/hupa/shared/events/SessionExpireEvent.java?rev=811798&view=auto
==============================================================================
--- labs/hupa/trunk/shared/src/main/java/org/apache/hupa/shared/events/SessionExpireEvent.java (added)
+++ labs/hupa/trunk/shared/src/main/java/org/apache/hupa/shared/events/SessionExpireEvent.java Sun Sep 6 10:26:11 2009
@@ -0,0 +1,47 @@
+/****************************************************************
+ * Licensed to the Apache Software Foundation (ASF) under one *
+ * or more contributor license agreements. See the NOTICE file *
+ * distributed with this work for additional information *
+ * regarding copyright ownership. The ASF licenses this file *
+ * to you under the Apache License, Version 2.0 (the *
+ * "License"); you may not use this file except in compliance *
+ * with the License. You may obtain a copy of the License at *
+ * *
+ * http://www.apache.org/licenses/LICENSE-2.0 *
+ * *
+ * Unless required by applicable law or agreed to in writing, *
+ * software distributed under the License is distributed on an *
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY *
+ * KIND, either express or implied. See the License for the *
+ * specific language governing permissions and limitations *
+ * under the License. *
+ ****************************************************************/
+
+package org.apache.hupa.shared.events;
+
+import org.apache.hupa.shared.data.User;
+
+import com.google.gwt.event.shared.GwtEvent;
+
+public class SessionExpireEvent extends GwtEvent<SessionExpireEventHandler>{
+
+ public final static Type<SessionExpireEventHandler> TYPE = new Type<SessionExpireEventHandler>();
+ private User user;
+ @Override
+ protected void dispatch(SessionExpireEventHandler handler) {
+ handler.onSessionExpireEvent(this);
+ }
+
+ @Override
+ public com.google.gwt.event.shared.GwtEvent.Type<SessionExpireEventHandler> getAssociatedType() {
+ return TYPE;
+ }
+
+ public SessionExpireEvent(User user) {
+ this.user = user;
+ }
+
+ public User getUser() {
+ return user;
+ }
+}
Added: labs/hupa/trunk/shared/src/main/java/org/apache/hupa/shared/events/SessionExpireEventHandler.java
URL: http://svn.apache.org/viewvc/labs/hupa/trunk/shared/src/main/java/org/apache/hupa/shared/events/SessionExpireEventHandler.java?rev=811798&view=auto
==============================================================================
--- labs/hupa/trunk/shared/src/main/java/org/apache/hupa/shared/events/SessionExpireEventHandler.java (added)
+++ labs/hupa/trunk/shared/src/main/java/org/apache/hupa/shared/events/SessionExpireEventHandler.java Sun Sep 6 10:26:11 2009
@@ -0,0 +1,27 @@
+/****************************************************************
+ * Licensed to the Apache Software Foundation (ASF) under one *
+ * or more contributor license agreements. See the NOTICE file *
+ * distributed with this work for additional information *
+ * regarding copyright ownership. The ASF licenses this file *
+ * to you under the Apache License, Version 2.0 (the *
+ * "License"); you may not use this file except in compliance *
+ * with the License. You may obtain a copy of the License at *
+ * *
+ * http://www.apache.org/licenses/LICENSE-2.0 *
+ * *
+ * Unless required by applicable law or agreed to in writing, *
+ * software distributed under the License is distributed on an *
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY *
+ * KIND, either express or implied. See the License for the *
+ * specific language governing permissions and limitations *
+ * under the License. *
+ ****************************************************************/
+
+package org.apache.hupa.shared.events;
+
+import com.google.gwt.event.shared.EventHandler;
+
+public interface SessionExpireEventHandler extends EventHandler{
+
+ public void onSessionExpireEvent(SessionExpireEvent event);
+}
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@labs.apache.org
For additional commands, e-mail: commits-help@labs.apache.org