📄 messagemaker.java
字号:
/*
<class>MyNa.xml.MessageMaker</class>
<msgsubject> </msgsubject>
<msgtoaddr> </msgtoaddr>
<msgfromaddr> </msgfromaddr>
<msgcontent> </msgcontent>
<msgcc> </msgcc>
<msgbcc> </msgbcc>
<verbose>true</verbose>
<debug>true</debug>
*/
package MyNa.xml;
import MyNa.utils.*;
import java.util.Enumeration;
import java.util.Date;
import org.w3c.dom.Node;
import javax.mail.*;
import javax.mail.internet.*;
import javax.activation.*;
public class MessageMaker extends XmlConfigBase {
String msgsubject;
String msgtoaddr;
String msgfromaddr;
String msgcontent;
String msgcc;
String msgbcc;
Env beanEnv;
MessageSender msgSender;
String errorType,errorMessage;
Logger lg;
public MessageMaker(){errorMessage=""; beanEnv=new Env(); lg=new Logger();}
public void setMiscError(String S){
errorType="miscError"; errorMessage=S;
}
public String getErrorMessage(){
String S=errorMessage; errorMessage=""; return S;
}
public boolean hasError(){return errorMessage.length()>0;}
public void setInitDefs(Env E){
lg.logIt("MM.setInitDefs("+E.toStringRec()+")");
beanEnv.addHashtable(E);
}
public void setMsgsubject(String S){msgsubject=S;}
public void setMsgtoaddr(String S){msgtoaddr=S;}
public void setMsgfromaddr(String S){msgfromaddr=S;}
public void setMsgcontent(String S){msgcontent=S;}
public void setMsgcc(String S){msgcc=S;}
public void setMsgbcc(String S){msgbcc=S;}
public void setMessageSender(MessageSender ms){msgSender=ms;}
public void setString(String key,String val){
if(key==null)return;
if(key.equals("verbose"))setVerbose(val);
else if(key.equals("debug"))setDebug(val);
else if(key.equals("beanName"))setBeanName(val);
else if(key.equals("msgsubject"))setMsgsubject(val);
else if(key.equals("msgtoaddr"))setMsgtoaddr(val);
else if(key.equals("msgfromaddr"))setMsgfromaddr(val);
else if(key.equals("msgcontent"))setMsgcontent(val);
else if(key.equals("msgcc"))setMsgcc(val);
else if(key.equals("msgbcc"))setMsgbcc(val);
else lg.logIt("(MessageMaker) no such setstring: "+key+"!="+val);
}
public String getMsgtoaddr(){return msgtoaddr;}
public String getMsgcontent(){return msgcontent;}
public String getString(String key){
if("msgtoaddr".equals(key))return getMsgtoaddr();
return null; // this version doesn't report much.
}
public MimeMessage getMessage()throws MessagingException{
Session session=msgSender.getSession();
MimeMessage msg = new MimeMessage(session);
msg.setFrom(new InternetAddress(msgfromaddr));
msg.setRecipients(Message.RecipientType.TO,
InternetAddress.parse(msgtoaddr, false));
if(msgcc != null && msgcc.length()>0)
msg.setRecipients(Message.RecipientType.CC,
InternetAddress.parse(msgcc, false));
if(msgbcc != null && msgbcc.length()>0)
msg.setRecipients(Message.RecipientType.BCC,
InternetAddress.parse(msgbcc, false));
msg.setSubject(msgsubject);
msg.setHeader("X-Mailer", msgSender.getMailerName());
msg.setText(msgcontent);
msg.setSentDate(new Date());
return msg;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -