Author: norman
Date: Thu Jul 23 11:35:33 2009
New Revision: 797022
URL: http://svn.apache.org/viewvc?rev=797022&view=rev
Log:
Rename some classes to be more consistent
Fix problems with empty subjects
Sending of "simple" emails now work
Added:
labs/hupa/src/main/java/org/apache/hupa/shared/data/MessageHeader.java
- copied, changed from r796999,
labs/hupa/src/main/java/org/apache/hupa/shared/data/Header.java
labs/hupa/src/main/java/org/apache/hupa/shared/events/SentMessageEvent.java
labs/hupa/src/main/java/org/apache/hupa/shared/events/SentMessageEventHandler.java
Removed:
labs/hupa/src/main/java/org/apache/hupa/shared/data/Header.java
Modified:
labs/hupa/src/main/java/org/apache/hupa/client/mvp/IMAPMessageSendPresenter.java
labs/hupa/src/main/java/org/apache/hupa/client/mvp/IMAPMessageView.java
labs/hupa/src/main/java/org/apache/hupa/client/mvp/MainPresenter.java
labs/hupa/src/main/java/org/apache/hupa/client/mvp/MainView.java
labs/hupa/src/main/java/org/apache/hupa/server/ExposeMessageHandler.java
labs/hupa/src/main/java/org/apache/hupa/server/FetchMessagesHandler.java
labs/hupa/src/main/java/org/apache/hupa/server/SendMessageHandler.java
labs/hupa/src/main/java/org/apache/hupa/shared/data/MessageContent.java
labs/hupa/src/main/java/org/apache/hupa/shared/data/SMTPMessage.java
Modified:
labs/hupa/src/main/java/org/apache/hupa/client/mvp/IMAPMessageSendPresenter.java
URL:
http://svn.apache.org/viewvc/labs/hupa/src/main/java/org/apache/hupa/client/mvp/IMAPMessageSendPresenter.java?rev=797022&r1=797021&r2=797022&view=diff
==============================================================================
---
labs/hupa/src/main/java/org/apache/hupa/client/mvp/IMAPMessageSendPresenter.java
(original)
+++
labs/hupa/src/main/java/org/apache/hupa/client/mvp/IMAPMessageSendPresenter.java
Thu Jul 23 11:35:33 2009
@@ -1,10 +1,40 @@
+/****************************************************************
+ * 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.client.mvp;
+import java.util.ArrayList;
+
+import org.apache.hupa.shared.data.MessageHeader;
import org.apache.hupa.shared.data.IMAPUser;
+import org.apache.hupa.shared.data.MessageContent;
+import org.apache.hupa.shared.data.SMTPMessage;
import org.apache.hupa.shared.events.LoginEvent;
import org.apache.hupa.shared.events.LoginEventHandler;
+import org.apache.hupa.shared.events.SentMessageEvent;
+import org.apache.hupa.shared.rpc.EmptyResult;
+import org.apache.hupa.shared.rpc.SendMessage;
+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.HasText;
import com.google.inject.Inject;
@@ -54,6 +84,59 @@
}
});
+ display.getSendClick().addClickHandler(new ClickHandler() {
+
+ public void onClick(ClickEvent event) {
+ SMTPMessage message = new SMTPMessage();
+ MessageHeader header = new MessageHeader();
+ MessageContent content = new MessageContent();
+
+ header.setFrom(display.getFromText().getText());
+
+ ArrayList<String> to = new ArrayList<String>();
+ String[] toRaw =
display.getToText().getText().split(",");
+ if (toRaw != null) {
+ for (int i = 0; i < toRaw.length;i++) {
+ String toRecip =
toRaw[i].trim();
+ if (toRecip.length() > 0) {
+ to.add(toRaw[i].trim());
+ }
+ }
+ }
+ header.setTo(to);
+
+ ArrayList<String> cc = new ArrayList<String>();
+ String[] ccRaw =
display.getCcText().getText().split(",");
+ if (ccRaw != null) {
+ for (int i = 0; i < ccRaw.length;i++) {
+ String ccRecip =
ccRaw[i].trim();
+ if (ccRecip.length() > 0) {
+ cc.add(ccRaw[i].trim());
+ }
+ }
+ }
+ header.setCc(cc);
+
+
header.setSubject(display.getSubjectText().getText());
+
content.setText(display.getMessageText().getText());
+
+ message.setHeader(header);
+ message.setMessageContent(content);
+ dispatcher.execute(new
SendMessage(user,message), new AsyncCallback<EmptyResult>() {
+
+ public void onFailure(Throwable caught)
{
+
+ }
+
+ public void onSuccess(EmptyResult
result) {
+ eventBus.fireEvent(new
SentMessageEvent());
+ }
+
+ });
+
+ }
+
+ });
}
@Override
Modified:
labs/hupa/src/main/java/org/apache/hupa/client/mvp/IMAPMessageView.java
URL:
http://svn.apache.org/viewvc/labs/hupa/src/main/java/org/apache/hupa/client/mvp/IMAPMessageView.java?rev=797022&r1=797021&r2=797022&view=diff
==============================================================================
--- labs/hupa/src/main/java/org/apache/hupa/client/mvp/IMAPMessageView.java
(original)
+++ labs/hupa/src/main/java/org/apache/hupa/client/mvp/IMAPMessageView.java Thu
Jul 23 11:35:33 2009
@@ -157,26 +157,29 @@
return deleteMsgButton;
}
- public void setAttachments(List<MessageAttachment> attachements, final
String username, final String password, final String folder, final long uid) {
+ public void setAttachments(List<MessageAttachment> attachements,
+ final String username, final String password, final
String folder,
+ final long uid) {
attachments.clear();
- for (int i = 0; i < attachements.size();i++) {
- final MessageAttachment a = attachements.get(i);
- Hyperlink link = new Hyperlink(a.getName() + " (" +
a.getSize() + ")",true,"");
- link.addClickHandler(new ClickHandler() {
+ if (attachements != null) {
+ for (int i = 0; i < attachements.size(); i++) {
+ final MessageAttachment a = attachements.get(i);
+ Hyperlink link = new Hyperlink(a.getName() + "
(" + a.getSize()
+ + ")", true, "");
+ link.addClickHandler(new ClickHandler() {
- public void onClick(ClickEvent event) {
-
DOM.setElementAttribute(RootPanel.get("__download")
- .getElement(), "src", GWT.getModuleBaseURL()
- + "downloadAttachmentServlet?attachment_name="
- + a.getName() + "&folder_name=" + folder
- + "&message_uuid="
- + uid + "&user=" + username
- + "&password=" + password);
- }
-
- });
- attachments.add(link);
-
+ public void onClick(ClickEvent event) {
+
DOM.setElementAttribute(RootPanel.get("__download")
+ .getElement(),
"src", GWT.getModuleBaseURL()
+ +
"downloadAttachmentServlet?attachment_name="
+ + a.getName() +
"&folder_name=" + folder
+ +
"&message_uuid=" + uid + "&user=" + username
+ + "&password="
+ password);
+ }
+
+ });
+ attachments.add(link);
+ }
}
}
Modified: labs/hupa/src/main/java/org/apache/hupa/client/mvp/MainPresenter.java
URL:
http://svn.apache.org/viewvc/labs/hupa/src/main/java/org/apache/hupa/client/mvp/MainPresenter.java?rev=797022&r1=797021&r2=797022&view=diff
==============================================================================
--- labs/hupa/src/main/java/org/apache/hupa/client/mvp/MainPresenter.java
(original)
+++ labs/hupa/src/main/java/org/apache/hupa/client/mvp/MainPresenter.java Thu
Jul 23 11:35:33 2009
@@ -47,6 +47,8 @@
import org.apache.hupa.shared.events.MessagesReceivedEventHandler;
import org.apache.hupa.shared.events.NewMessageEvent;
import org.apache.hupa.shared.events.NewMessageEventHandler;
+import org.apache.hupa.shared.events.SentMessageEvent;
+import org.apache.hupa.shared.events.SentMessageEventHandler;
import org.apache.hupa.shared.rpc.ExposeMessage;
import org.apache.hupa.shared.rpc.ExposeMessageResult;
import org.apache.hupa.shared.rpc.FetchFolders;
@@ -269,6 +271,14 @@
});
+ eventBus.addHandler(SentMessageEvent.TYPE, new
SentMessageEventHandler() {
+
+ public void onSentMessageEvent(SentMessageEvent ev) {
+ showMessageTable();
+ }
+
+ });
+
Window.addWindowClosingHandler(new ClosingHandler() {
public void onWindowClosing(ClosingEvent event) {
Modified: labs/hupa/src/main/java/org/apache/hupa/client/mvp/MainView.java
URL:
http://svn.apache.org/viewvc/labs/hupa/src/main/java/org/apache/hupa/client/mvp/MainView.java?rev=797022&r1=797021&r2=797022&view=diff
==============================================================================
--- labs/hupa/src/main/java/org/apache/hupa/client/mvp/MainView.java (original)
+++ labs/hupa/src/main/java/org/apache/hupa/client/mvp/MainView.java Thu Jul 23
11:35:33 2009
@@ -177,8 +177,14 @@
public void fillOracle(ArrayList<IMAPMessage> messages) {
for (int i = 0; i < messages.size();i++) {
- oracle.add(messages.get(i).getHeader().getSubject());
- oracle.add(messages.get(i).getHeader().getFrom());
+ String subject =
messages.get(i).getHeader().getSubject();
+ String from = messages.get(i).getHeader().getFrom();
+ if (subject != null && subject.trim().length() > 0) {
+ oracle.add(subject.trim());
+ }
+ if (from != null && from.trim().length() > 0) {
+ oracle.add(from.trim());
+ }
}
searchBox.setText("");
}
Modified:
labs/hupa/src/main/java/org/apache/hupa/server/ExposeMessageHandler.java
URL:
http://svn.apache.org/viewvc/labs/hupa/src/main/java/org/apache/hupa/server/ExposeMessageHandler.java?rev=797022&r1=797021&r2=797022&view=diff
==============================================================================
--- labs/hupa/src/main/java/org/apache/hupa/server/ExposeMessageHandler.java
(original)
+++ labs/hupa/src/main/java/org/apache/hupa/server/ExposeMessageHandler.java
Thu Jul 23 11:35:33 2009
@@ -20,7 +20,6 @@
package org.apache.hupa.server;
import java.util.ArrayList;
-import java.util.List;
import javax.mail.Flags;
import javax.mail.Message;
@@ -101,7 +100,7 @@
} else if (con instanceof Multipart) {
Multipart mp = (Multipart) con;
- List<MessageAttachment> attachmentList = new
ArrayList<MessageAttachment>();
+ ArrayList<MessageAttachment> attachmentList = new
ArrayList<MessageAttachment>();
boolean hasAttachment = false;
StringBuffer sbPlain = new StringBuffer();
StringBuffer sbHTML = new StringBuffer();
Modified:
labs/hupa/src/main/java/org/apache/hupa/server/FetchMessagesHandler.java
URL:
http://svn.apache.org/viewvc/labs/hupa/src/main/java/org/apache/hupa/server/FetchMessagesHandler.java?rev=797022&r1=797021&r2=797022&view=diff
==============================================================================
--- labs/hupa/src/main/java/org/apache/hupa/server/FetchMessagesHandler.java
(original)
+++ labs/hupa/src/main/java/org/apache/hupa/server/FetchMessagesHandler.java
Thu Jul 23 11:35:33 2009
@@ -38,7 +38,7 @@
import org.apache.commons.logging.Log;
import org.apache.hupa.shared.data.IMAPFolder;
-import org.apache.hupa.shared.data.Header;
+import org.apache.hupa.shared.data.MessageHeader;
import org.apache.hupa.shared.data.IMAPMessage;
import org.apache.hupa.shared.data.IMAPUser;
import org.apache.hupa.shared.data.IMAPMessage.IMAPFlag;
@@ -115,7 +115,7 @@
for (int i = 0; i < messages.length; i++) {
Message m = messages[i];
- Header newHeader = new Header();
+ MessageHeader newHeader = new MessageHeader();
newHeader.setRawHeader(m.getAllHeaders().toString());
newHeader.setFrom(m.getFrom()[0].toString().trim());
@@ -128,7 +128,11 @@
}
newHeader.setTo(to);
-
newHeader.setSubject(MimeUtility.decodeText(m.getSubject()));
+ String subject = m.getSubject();
+ if (subject != null) {
+ subject =
MimeUtility.decodeText(subject);
+ }
+ newHeader.setSubject(subject);
Address[] ccArray =
m.getRecipients(RecipientType.CC);
ArrayList<String> cc = new ArrayList<String>();
Modified: labs/hupa/src/main/java/org/apache/hupa/server/SendMessageHandler.java
URL:
http://svn.apache.org/viewvc/labs/hupa/src/main/java/org/apache/hupa/server/SendMessageHandler.java?rev=797022&r1=797021&r2=797022&view=diff
==============================================================================
--- labs/hupa/src/main/java/org/apache/hupa/server/SendMessageHandler.java
(original)
+++ labs/hupa/src/main/java/org/apache/hupa/server/SendMessageHandler.java Thu
Jul 23 11:35:33 2009
@@ -72,7 +72,7 @@
message.addRecipient(RecipientType.CC, new
InternetAddress(cc
.get(i)));
}
-
+ message.setSubject(m.getHeader().getSubject());
message.setText(m.getMessageContent().getText());
message.saveChanges();
Modified:
labs/hupa/src/main/java/org/apache/hupa/shared/data/MessageContent.java
URL:
http://svn.apache.org/viewvc/labs/hupa/src/main/java/org/apache/hupa/shared/data/MessageContent.java?rev=797022&r1=797021&r2=797022&view=diff
==============================================================================
--- labs/hupa/src/main/java/org/apache/hupa/shared/data/MessageContent.java
(original)
+++ labs/hupa/src/main/java/org/apache/hupa/shared/data/MessageContent.java Thu
Jul 23 11:35:33 2009
@@ -21,7 +21,6 @@
import java.io.Serializable;
import java.util.ArrayList;
-import java.util.List;
public class MessageContent implements Serializable {
/**
@@ -30,7 +29,7 @@
private static final long serialVersionUID = 7611536915564919521L;
private boolean isHTML;
private String text;
- private List<MessageAttachment> aList = new
ArrayList<MessageAttachment>();
+ private ArrayList<MessageAttachment> aList;
public void setIsHTML(boolean isHTML) {
this.isHTML = isHTML;
@@ -48,11 +47,11 @@
return text;
}
- public void setIMAPMessageAttachments(List<MessageAttachment> aList) {
+ public void setIMAPMessageAttachments(ArrayList<MessageAttachment>
aList) {
this.aList = aList;
}
- public List<MessageAttachment> getIMAPMessageAttachments() {
+ public ArrayList<MessageAttachment> getIMAPMessageAttachments() {
return aList;
}
}
Copied: labs/hupa/src/main/java/org/apache/hupa/shared/data/MessageHeader.java
(from r796999, labs/hupa/src/main/java/org/apache/hupa/shared/data/Header.java)
URL:
http://svn.apache.org/viewvc/labs/hupa/src/main/java/org/apache/hupa/shared/data/MessageHeader.java?p2=labs/hupa/src/main/java/org/apache/hupa/shared/data/MessageHeader.java&p1=labs/hupa/src/main/java/org/apache/hupa/shared/data/Header.java&r1=796999&r2=797022&rev=797022&view=diff
==============================================================================
--- labs/hupa/src/main/java/org/apache/hupa/shared/data/Header.java (original)
+++ labs/hupa/src/main/java/org/apache/hupa/shared/data/MessageHeader.java Thu
Jul 23 11:35:33 2009
@@ -23,7 +23,7 @@
import java.util.ArrayList;
import java.util.Date;
-public class Header implements Serializable {
+public class MessageHeader implements Serializable {
/**
*
Modified: labs/hupa/src/main/java/org/apache/hupa/shared/data/SMTPMessage.java
URL:
http://svn.apache.org/viewvc/labs/hupa/src/main/java/org/apache/hupa/shared/data/SMTPMessage.java?rev=797022&r1=797021&r2=797022&view=diff
==============================================================================
--- labs/hupa/src/main/java/org/apache/hupa/shared/data/SMTPMessage.java
(original)
+++ labs/hupa/src/main/java/org/apache/hupa/shared/data/SMTPMessage.java Thu
Jul 23 11:35:33 2009
@@ -27,14 +27,14 @@
*
*/
private static final long serialVersionUID = 7998000151420927239L;
- private Header header;
+ private MessageHeader header;
private MessageContent content;
- public void setHeader(Header header) {
+ public void setHeader(MessageHeader header) {
this.header = header;
}
- public Header getHeader() {
+ public MessageHeader getHeader() {
return header;
}
Added:
labs/hupa/src/main/java/org/apache/hupa/shared/events/SentMessageEvent.java
URL:
http://svn.apache.org/viewvc/labs/hupa/src/main/java/org/apache/hupa/shared/events/SentMessageEvent.java?rev=797022&view=auto
==============================================================================
--- labs/hupa/src/main/java/org/apache/hupa/shared/events/SentMessageEvent.java
(added)
+++ labs/hupa/src/main/java/org/apache/hupa/shared/events/SentMessageEvent.java
Thu Jul 23 11:35:33 2009
@@ -0,0 +1,36 @@
+/****************************************************************
+ * 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.GwtEvent;
+
+public class SentMessageEvent extends GwtEvent<SentMessageEventHandler>{
+ public static Type<SentMessageEventHandler> TYPE = new
Type<SentMessageEventHandler>();
+ @Override
+ protected void dispatch(SentMessageEventHandler handler) {
+ handler.onSentMessageEvent(this);
+ }
+
+ @Override
+ public
com.google.gwt.event.shared.GwtEvent.Type<SentMessageEventHandler>
getAssociatedType() {
+ return TYPE;
+ }
+
+}
Added:
labs/hupa/src/main/java/org/apache/hupa/shared/events/SentMessageEventHandler.java
URL:
http://svn.apache.org/viewvc/labs/hupa/src/main/java/org/apache/hupa/shared/events/SentMessageEventHandler.java?rev=797022&view=auto
==============================================================================
---
labs/hupa/src/main/java/org/apache/hupa/shared/events/SentMessageEventHandler.java
(added)
+++
labs/hupa/src/main/java/org/apache/hupa/shared/events/SentMessageEventHandler.java
Thu Jul 23 11:35:33 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 SentMessageEventHandler extends EventHandler{
+
+ public void onSentMessageEvent(SentMessageEvent ev);
+}
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]