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:31:02 UTC
svn commit: r1522214 - in /james/hupa/trunk:
client/src/main/java/org/apache/hupa/client/activity/
shared/src/main/java/org/apache/hupa/shared/data/
shared/src/main/java/org/apache/hupa/shared/domain/
Author: dongxu
Date: Thu Sep 12 03:31:01 2013
New Revision: 1522214
URL: http://svn.apache.org/r1522214
Log:
fix AllDelete feature in issue 11. and scrub some code
Modified:
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/activity/IMAPMessageListActivity.java
james/hupa/trunk/client/src/main/java/org/apache/hupa/client/activity/WestActivity.java
james/hupa/trunk/shared/src/main/java/org/apache/hupa/shared/data/ImapFolderImpl.java
james/hupa/trunk/shared/src/main/java/org/apache/hupa/shared/domain/ImapFolder.java
Modified: james/hupa/trunk/client/src/main/java/org/apache/hupa/client/activity/IMAPMessageListActivity.java
URL: http://svn.apache.org/viewvc/james/hupa/trunk/client/src/main/java/org/apache/hupa/client/activity/IMAPMessageListActivity.java?rev=1522214&r1=1522213&r2=1522214&view=diff
==============================================================================
--- james/hupa/trunk/client/src/main/java/org/apache/hupa/client/activity/IMAPMessageListActivity.java (original)
+++ james/hupa/trunk/client/src/main/java/org/apache/hupa/client/activity/IMAPMessageListActivity.java Thu Sep 12 03:31:01 2013
@@ -668,9 +668,13 @@ public class IMAPMessageListActivity ext
final Message message = event.getMessage();
MoveMessageRequest req = requestFactory.moveMessageRequest();
MoveMessageAction action = req.create(MoveMessageAction.class);
+ ImapFolder newOne = req.create(ImapFolder.class);
+ ImapFolder oldOne = req.create(ImapFolder.class);
+ event.getNewFolder().setFolderTo(newOne);
+ event.getOldFolder().setFolderTo(oldOne);
action.setMessageUid(message.getUid());
- action.setNewFolder(event.getNewFolder());
- action.setOldFolder(event.getOldFolder());
+ action.setNewFolder(newOne);
+ action.setOldFolder(oldOne);
req.move(action).fire(new Receiver<GenericResult>() {
@Override
public void onSuccess(GenericResult response) {
@@ -721,12 +725,13 @@ public class IMAPMessageListActivity ext
public void onClick(ClickEvent event) {
DeleteMessageAllRequest req = requestFactory.deleteMessageAllRequest();
DeleteMessageAllAction action = req.create(DeleteMessageAllAction.class);
- action.setFolder(folder);
+ ImapFolder f = req.create(ImapFolder.class);
+ folder.setFolderTo(f);
+ action.setFolder(f);
req.delete(action).fire(new Receiver<DeleteMessageResult>() {
@Override
public void onSuccess(DeleteMessageResult response) {
- display.reset();
- display.reloadData();
+ redrawTable();
eventBus.fireEvent(new DecreaseUnseenEvent(user, folder, response.getCount()));
}
});
@@ -745,8 +750,10 @@ public class IMAPMessageListActivity ext
}
SetFlagRequest req = requestFactory.setFlagRequest();
SetFlagAction action = req.create(SetFlagAction.class);
+ ImapFolder f = req.create(ImapFolder.class);
+ folder.setFolderTo(f);
action.setFlag(IMAPFlag.SEEN);
- action.setFolder(folder);
+ action.setFolder(f);
action.setUids(uids);
action.setValue(true);
req.set(action).fire(new Receiver<GenericResult>() {
@@ -776,8 +783,10 @@ public class IMAPMessageListActivity ext
}
SetFlagRequest req = requestFactory.setFlagRequest();
SetFlagAction action = req.create(SetFlagAction.class);
+ ImapFolder f = req.create(ImapFolder.class);
+ folder.setFolderTo(f);
action.setFlag(IMAPFlag.SEEN);
- action.setFolder(folder);
+ action.setFolder(f);
action.setUids(uids);
action.setValue(false);
req.set(action).fire(new Receiver<GenericResult>() {
@@ -825,32 +834,29 @@ public class IMAPMessageListActivity ext
List<Long> uids = new ArrayList<Long>();
for (Message m : selectedMessages) {
uids.add(m.getUid());
- display.getTable().getSelectionModel().setSelected(m, false); // FIXME should be deSelected, or remove?
+ display.getTable().getSelectionModel().setSelected(m, false); // FIXME should be deSelected, or removed?
}
// maybe its better to just remove the messages from the table and
// expect the removal will work
display.removeMessages(selectedMessages);
DeleteMessageByUidRequest req = requestFactory.deleteMessageByUidRequest();
DeleteMessageByUidAction action = req.create(DeleteMessageByUidAction.class);
- ImapFolder folder1 = req.create(ImapFolder.class);
- folder1.setChildren(folder.getChildren());
- folder1.setDelimiter(folder.getDelimiter());
- folder1.setFullName(folder.getFullName());
- folder1.setMessageCount(folder.getMessageCount());
- folder1.setName(folder.getName());
- folder1.setSubscribed(folder.getSubscribed());
- folder1.setUnseenMessageCount(folder.getUnseenMessageCount());
+ ImapFolder f = req.create(ImapFolder.class);
+ folder.setFolderTo(f);
action.setMessageUids(uids);
- action.setFolder(folder1);
+ action.setFolder(f);
req.delete(action).fire(new Receiver<DeleteMessageResult>() {
@Override
public void onSuccess(DeleteMessageResult response) {
- display.getTable().setVisibleRangeAndClearData(display.getTable().getVisibleRange(), true);
-
+ redrawTable();//TODO presenter
eventBus.fireEvent(new DecreaseUnseenEvent(user, folder, response.getCount()));
}
});
}
+
+ private void redrawTable() {
+ display.getTable().setVisibleRangeAndClearData(display.getTable().getVisibleRange(), true);
+ }
public IMAPMessageListActivity with(MailFolderPlace place) {
this.user = place.getUser();
this.folder = place.getFolder();
Modified: james/hupa/trunk/client/src/main/java/org/apache/hupa/client/activity/WestActivity.java
URL: http://svn.apache.org/viewvc/james/hupa/trunk/client/src/main/java/org/apache/hupa/client/activity/WestActivity.java?rev=1522214&r1=1522213&r2=1522214&view=diff
==============================================================================
--- james/hupa/trunk/client/src/main/java/org/apache/hupa/client/activity/WestActivity.java (original)
+++ james/hupa/trunk/client/src/main/java/org/apache/hupa/client/activity/WestActivity.java Thu Sep 12 03:31:01 2013
@@ -928,16 +928,9 @@ System.out.println("1111111"+response);
display.setLoadingMessage(true);
GetMessageDetailsRequest req = requestFactory.messageDetailsRequest();
GetMessageDetailsAction action = req.create(GetMessageDetailsAction.class);
- final ImapFolder folder = req.create(ImapFolder.class);
- folder.setChildren(event.getFolder().getChildren());
- folder.setDelimiter(event.getFolder().getDelimiter());
- folder.setFullName(event.getFolder().getFullName());
- folder.setMessageCount(event.getFolder().getMessageCount());
- folder.setName(event.getFolder().getName());
- folder.setSubscribed(event.getFolder().getSubscribed());
- folder.setUnseenMessageCount(event.getFolder().getUnseenMessageCount());
- // ImapFolder imapFolder = req.edit(event.getFolder());
- action.setFolder(folder);
+ final ImapFolder f = req.create(ImapFolder.class);
+ event.getFolder().setFolderTo(f);
+ action.setFolder(f);
action.setUid(message.getUid());
req.get(action).fire(new Receiver<GetMessageDetailsResult>() {
@Override
@@ -947,7 +940,7 @@ System.out.println("1111111"+response);
* DecreaseUnseenEvent(user, folder)); }
*/
display.setLoadingMessage(false);
- placeController.goTo(messagePlaceProvider.get().with(user, folder, message,
+ placeController.goTo(messagePlaceProvider.get().with(user, f, message,
response.getMessageDetails()));
}
});
Modified: james/hupa/trunk/shared/src/main/java/org/apache/hupa/shared/data/ImapFolderImpl.java
URL: http://svn.apache.org/viewvc/james/hupa/trunk/shared/src/main/java/org/apache/hupa/shared/data/ImapFolderImpl.java?rev=1522214&r1=1522213&r2=1522214&view=diff
==============================================================================
--- james/hupa/trunk/shared/src/main/java/org/apache/hupa/shared/data/ImapFolderImpl.java (original)
+++ james/hupa/trunk/shared/src/main/java/org/apache/hupa/shared/data/ImapFolderImpl.java Thu Sep 12 03:31:01 2013
@@ -161,6 +161,16 @@ public class ImapFolderImpl implements I
public ImapFolderImpl() {
}
+
+ public ImapFolderImpl(ImapFolder folder){
+ this.delimiter = folder.getDelimiter();
+ this.children = folder.getChildren();
+ this.fullName = folder.getFullName();
+ this.messageCount = folder.getMessageCount();
+ this.name = folder.getName();
+ this.subscribed = folder.getSubscribed();
+ this.unseenMessageCount = folder.getUnseenMessageCount();
+ }
public ImapFolderImpl(String fullName) {
setFullName(fullName);
@@ -349,6 +359,21 @@ public class ImapFolderImpl implements I
this.name = name;
}
+<<<<<<< HEAD
>>>>>>> Succeed creating new folder
+=======
+
+ @Override
+ public void setFolderTo(ImapFolder folder) {
+ folder.setChildren(this.children);
+ folder.setDelimiter(this.delimiter);
+ folder.setFullName(this.fullName);
+ folder.setMessageCount(this.messageCount);
+ folder.setName(this.name);
+ folder.setSubscribed(this.subscribed);
+ folder.setUnseenMessageCount(this.unseenMessageCount);
+ }
+
+>>>>>>> fix AllDelete feature in issue 11. and scrub some code
}
Modified: james/hupa/trunk/shared/src/main/java/org/apache/hupa/shared/domain/ImapFolder.java
URL: http://svn.apache.org/viewvc/james/hupa/trunk/shared/src/main/java/org/apache/hupa/shared/domain/ImapFolder.java?rev=1522214&r1=1522213&r2=1522214&view=diff
==============================================================================
--- james/hupa/trunk/shared/src/main/java/org/apache/hupa/shared/domain/ImapFolder.java (original)
+++ james/hupa/trunk/shared/src/main/java/org/apache/hupa/shared/domain/ImapFolder.java Thu Sep 12 03:31:01 2013
@@ -40,4 +40,10 @@ public interface ImapFolder extends Valu
void setDelimiter(String delimiter);
void setSubscribed(boolean subscribed);
boolean getSubscribed();
+
+ /**
+ * use this to proxy the dumping method, or an alternative to clone, for the ValueProxy's must be set/get-ter
+ * @param folder to be dumped
+ */
+ void setFolderTo(ImapFolder folder);
}
---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org