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: [email protected]
For additional commands, e-mail: [email protected]