From d54772815bc34efc76112b5c22def86d3f45faa8 Mon Sep 17 00:00:00 2001 From: 疯狂的狮子Li <15040126243@163.com> Date: 星期二, 05 三月 2024 22:57:39 +0800 Subject: [PATCH] !491 合并flowable工作流功能 * update 优化 表字段映射于数据库保持一致 * remove 删除无用代码 * remove 删除无用代码 * fix 修复 实体类未实现序列化接口问题 * update 优化 表字段映射于数据库保持一致 * update 优化 统一sql名称 * fix 修复 接口名称编写错误 * merge dev * update 调整sql 添加抄送查询 * update 调整菜单 * update 调整sql脚本 * update 调整任务查询 添加抄送 * add 抄送任务 * remove 删除错误代码 * remove 删除无用代码 * update 调整作废,撤销等校验 * fix 修复 流程作废异常问题 * update 优化 flowable 配置到主yml文件 * update 调整 数据排序规则 * fix 修复 数据库无法自动执行建表sql问题 * update 优化 工作流id生成器保持全局统一 * add 添加附件任务查询 * add 添加审批附件上传 * update 调整bpmn文件修复驳回失败问题 * update 调整会签类型转换异常 * add 添加获取运行中流程信息,流程扩展信息,补充注解,删除无用代码 * update 调整流程转换,流程启动,上传新bpmn文件 * update 调整方法 * update 调整模型修改 * fix 修复 user与dept xml 编写错误 * remove 移除原生ui接口,增加新ui接口 * update 优化 下拉选接口数据权限 * update 优化 删除观测用日志记录 * reset 还原修复命名 * update 修复命名 * add 新增 用户、部门、角色、岗位 下拉选接口与代码实现优化 * update 调整任务办理异步时流程状态错误问题 * add 工作流用户查询 * remove 删除无用注释 添加非空校验 * update 优化获取审批记录 * update 调整事件办理 * update 调整工作流选人接口 * Merge branch 'dev' into future/flowable * update 办理调整执行顺序 * update 调整流程办理优化撤销,驳回,草稿等动作 * fix 修复子流程中设置发起人变量错误问题 * Merge branch 'dev' into future/flowable * update 调整流程执行非空校验,调整任务节点执行 * update 调整注释 * add 添加自定义任务监听策略 * !469 update-完善对模型key校验逻辑 * update-修改常量命名 * update-完善对模型key校验逻辑 * add 添加sql脚本 * Merge branch 'dev' into future/flowable * Merge branch 'dev' into future/flowable * Merge branch 'future/flowable' of https://gitee.com/dromara/RuoYi-Vue-… * add 添加SQLserve脚本 * add 添加流程监听示例 * update 调整获取审批记录 * Merge branch 'future/flowable' of https://gitee.com/dromara/RuoYi-Vue-… * update 调整请假查询 修改流程定义查看xml * update 调整流程实例删除 * update 调整sql * add 添加sql脚本 * update 调整sql * update 调整请假申请,调整菜单sql * update 调整设计器保存发起人变量,修改菜单sql * update 依赖调整 * update 调整flw依赖 * update 升级7.0后移除画图mule类型 * update 调整flw依赖 * update 移动模型设计器翻译方法 * update 调整flw依赖 * fix 修复 误删依赖 * Merge remote-tracking branch 'origin/dev' into future/flowable * remove 移除动态表单 * Merge remote-tracking branch 'origin/dev' into future/flowable * update 优化代码结构 * update 调整请假申请包结构 * Merge branch 'dev' into future/flowable * add 添加文件,调整分类查询 * Merge branch 'dev' into future/flowable * Merge branch 'future/flowable' of https://gitee.com/dromara/RuoYi-Vue-… * add bpmn文件 调整流程办理 * Merge branch 'dev' into future/flowable * Merge branch 'future/flowable' of https://gitee.com/dromara/RuoYi-Vue-… * Merge branch '5.X' into future/flowable * update 调整消息发送 * update 调整名称 * update 调整流程实例查询 * add 添加任务催办,任务改派 * fix 修复 用户注册接口校验用户名不区分租户问题 * update 还原待办任务,添加待办消息发送 * update 优化任务待办,排除非待办任务 * Merge branch '5.X' into future/flowable * update 修改流程启动后重新覆盖流程变量,删除并行流程驳回,撤销后,垃圾数据 * update 升级flowable7.0,添加业务单据删除流程信息 * Merge branch '5.X' into future/flowable * add 添加动态表单提交流程 * Merge branch 'future/flowable' of https://gitee.com/dromara/RuoYi-Vue-… * add 添加动态表单单据 * update 升级flowable到7.0.0.M2,调整工作流提交校验,调整工作流工具类 * add 新增流程定义与表单关联 * update 调整修改流程分类后更新流程分类编码 * update 调整流程定义图片预览 * update 调整人员查询 * update 优化作废,撤销等备注 * Merge branch '5.X' into future/flowable * Merge branch 'future/flowable' of https://gitee.com/dromara/RuoYi-Vue-… * fix 解决设计器选择设置流程发起人设置变量有问题 * add 添加引擎调度监听 * merge 合并5.x分支代码 * remove 移除flow-ui * update 调整日志打印 * add 添加按照业务id删除流程记录 * add 添加请假申请示例,添加流程定义文件部署,添加sql菜单 * update 移除流程表单 formConfig 属性,表单配置信息都放一起便于使用。 * update 调整菜单 * add 添加mysql工作流菜单 * update 调整获取加签人,审判记录 * update 调整流程作废 * add 添加任务完成状态 * add 添加加签,减签人员接口 * update 调整任务驳回后设置审批人 * add 添加驳回申请人 * add 添加查询当前租户所有待办,已办任务 * add 添加会签任务加签减签,添加任务作废理由 * update 调整流程实例,流程定义检索 * update 调整撤销流程申请,当前登录人单据 * add 添加办理人名称翻译 * add 添加流程流程实例,流程定义分类查询 * add 添加模型分类查询 * add 添加流程分类 * add 添加流程表单操作相关接口 * fix 修复修改流程历史流程实例错误问题 * update 调整已办任务排序,添加注释 * update 调整用户,用户组查询 * add 添加获取当前任务参与者,优化任务待办,已办 * add 添加当前登录人单据列表,添加单据状态 * update 补充任务撤销事务 * add 添加撤销流程申请 * update 优化流程实例删除 * fix 修复流程实例查询挂起状态错误 * update 优化流程办理 流程挂起抛出异常 * add 添加业务状态枚举。添加流程启动,审批,终止等状态 * update 优化流程启动 * add 添加流程实例作废,运行中流程实例删除,已完成流程实例删除 * add 添加节点信息 * 调整流程预览 * add 添加审批记录 * 还原代码 * fix 修复模型导出错误 * add 增加委托办理,调整流程启动 * add 添加转办任务 * add 添加任务拾取,任务归还,任务终止,任务委托 * fix 修复任务,流程实例分页模糊查询失效 * add 添加流程实例运行中,已结束分页查询 * add 添加通过流程实例id获取历史流程图,添加flowable配置,调整流程办理 * add 添加流程办理,流程待办,已办分页查询 * 删除无用导入 * 调整流程查询租户id * add 添加流程启动 * 添加模型人员用户,组查询 * add 添加模型部署模型校验 * 修改模型部署导出校验 * fix 修复模型画图保存时key不回显问题 * add 添加流程定义转换为模型 * 优化模型编辑校验,流程定义删除,流程定义激活挂起等 * add 添加流程定义删除,流程定义挂起激活,流程定义版本迁移 * 调整ObjectNode.put警告 * 删除无用依赖,优化模型修改,导出,部署非空校验 * 删除无用导入 * 添加流程定义分页,查看图片,查看xml * 添加模型部署,导出模型 * 修改画图账户登录信息 * 添加模型编辑key重复校验,添加租户查询,删除忽略token注解 * 添加模型新增校验 * 添加工作流模型新增,修改,查询,删除 * 【ADD】集成原生Flowable-ui * 添加workflow模块,添加flowable依赖,yml配置信息 --- ruoyi-common/ruoyi-common-mail/src/main/java/org/dromara/common/mail/utils/MailAccount.java | 1140 ++++++++++++++++++++++++++++++------------------------------ 1 files changed, 570 insertions(+), 570 deletions(-) diff --git a/ruoyi-common/ruoyi-common-mail/src/main/java/org/dromara/common/mail/utils/MailAccount.java b/ruoyi-common/ruoyi-common-mail/src/main/java/org/dromara/common/mail/utils/MailAccount.java index d2b9e2c..2a732a1 100644 --- a/ruoyi-common/ruoyi-common-mail/src/main/java/org/dromara/common/mail/utils/MailAccount.java +++ b/ruoyi-common/ruoyi-common-mail/src/main/java/org/dromara/common/mail/utils/MailAccount.java @@ -18,642 +18,642 @@ * @author Luxiaolei */ public class MailAccount implements Serializable { - @Serial + @Serial private static final long serialVersionUID = -6937313421815719204L; - private static final String MAIL_PROTOCOL = "mail.transport.protocol"; - private static final String SMTP_HOST = "mail.smtp.host"; - private static final String SMTP_PORT = "mail.smtp.port"; - private static final String SMTP_AUTH = "mail.smtp.auth"; - private static final String SMTP_TIMEOUT = "mail.smtp.timeout"; - private static final String SMTP_CONNECTION_TIMEOUT = "mail.smtp.connectiontimeout"; - private static final String SMTP_WRITE_TIMEOUT = "mail.smtp.writetimeout"; + private static final String MAIL_PROTOCOL = "mail.transport.protocol"; + private static final String SMTP_HOST = "mail.smtp.host"; + private static final String SMTP_PORT = "mail.smtp.port"; + private static final String SMTP_AUTH = "mail.smtp.auth"; + private static final String SMTP_TIMEOUT = "mail.smtp.timeout"; + private static final String SMTP_CONNECTION_TIMEOUT = "mail.smtp.connectiontimeout"; + private static final String SMTP_WRITE_TIMEOUT = "mail.smtp.writetimeout"; - // SSL - private static final String STARTTLS_ENABLE = "mail.smtp.starttls.enable"; - private static final String SSL_ENABLE = "mail.smtp.ssl.enable"; - private static final String SSL_PROTOCOLS = "mail.smtp.ssl.protocols"; - private static final String SOCKET_FACTORY = "mail.smtp.socketFactory.class"; - private static final String SOCKET_FACTORY_FALLBACK = "mail.smtp.socketFactory.fallback"; - private static final String SOCKET_FACTORY_PORT = "smtp.socketFactory.port"; + // SSL + private static final String STARTTLS_ENABLE = "mail.smtp.starttls.enable"; + private static final String SSL_ENABLE = "mail.smtp.ssl.enable"; + private static final String SSL_PROTOCOLS = "mail.smtp.ssl.protocols"; + private static final String SOCKET_FACTORY = "mail.smtp.socketFactory.class"; + private static final String SOCKET_FACTORY_FALLBACK = "mail.smtp.socketFactory.fallback"; + private static final String SOCKET_FACTORY_PORT = "smtp.socketFactory.port"; - // System Properties - private static final String SPLIT_LONG_PARAMS = "mail.mime.splitlongparameters"; - //private static final String ENCODE_FILE_NAME = "mail.mime.encodefilename"; - //private static final String CHARSET = "mail.mime.charset"; + // System Properties + private static final String SPLIT_LONG_PARAMS = "mail.mime.splitlongparameters"; + //private static final String ENCODE_FILE_NAME = "mail.mime.encodefilename"; + //private static final String CHARSET = "mail.mime.charset"; - // 鍏朵粬 - private static final String MAIL_DEBUG = "mail.debug"; + // 鍏朵粬 + private static final String MAIL_DEBUG = "mail.debug"; - public static final String[] MAIL_SETTING_PATHS = new String[]{"config/mail.setting", "config/mailAccount.setting", "mail.setting"}; + public static final String[] MAIL_SETTING_PATHS = new String[]{"config/mail.setting", "config/mailAccount.setting", "mail.setting"}; - /** - * SMTP鏈嶅姟鍣ㄥ煙鍚� - */ - private String host; - /** - * SMTP鏈嶅姟绔彛 - */ - private Integer port; - /** - * 鏄惁闇�瑕佺敤鎴峰悕瀵嗙爜楠岃瘉 - */ - private Boolean auth; - /** - * 鐢ㄦ埛鍚� - */ - private String user; - /** - * 瀵嗙爜 - */ - private String pass; - /** - * 鍙戦�佹柟锛岄伒寰猂FC-822鏍囧噯 - */ - private String from; + /** + * SMTP鏈嶅姟鍣ㄥ煙鍚� + */ + private String host; + /** + * SMTP鏈嶅姟绔彛 + */ + private Integer port; + /** + * 鏄惁闇�瑕佺敤鎴峰悕瀵嗙爜楠岃瘉 + */ + private Boolean auth; + /** + * 鐢ㄦ埛鍚� + */ + private String user; + /** + * 瀵嗙爜 + */ + private String pass; + /** + * 鍙戦�佹柟锛岄伒寰猂FC-822鏍囧噯 + */ + private String from; - /** - * 鏄惁鎵撳紑璋冭瘯妯″紡锛岃皟璇曟ā寮忎細鏄剧ず涓庨偖浠舵湇鍔″櫒閫氫俊杩囩▼锛岄粯璁や笉寮�鍚� - */ - private boolean debug; - /** - * 缂栫爜鐢ㄤ簬缂栫爜閭欢姝f枃鍜屽彂閫佷汉銆佹敹浠朵汉绛変腑鏂� - */ - private Charset charset = CharsetUtil.CHARSET_UTF_8; - /** - * 瀵逛簬瓒呴暱鍙傛暟鏄惁鍒囧垎涓哄浠斤紝榛樿涓篺alse锛堝浗鍐呴偖绠遍檮浠朵笉鏀寔鍒囧垎鐨勯檮浠跺悕锛� - */ - private boolean splitlongparameters = false; - /** - * 瀵逛簬鏂囦欢鍚嶆槸鍚︿娇鐢▄@link #charset}缂栫爜锛岄粯璁や负 {@code true} - */ - private boolean encodefilename = true; + /** + * 鏄惁鎵撳紑璋冭瘯妯″紡锛岃皟璇曟ā寮忎細鏄剧ず涓庨偖浠舵湇鍔″櫒閫氫俊杩囩▼锛岄粯璁や笉寮�鍚� + */ + private boolean debug; + /** + * 缂栫爜鐢ㄤ簬缂栫爜閭欢姝f枃鍜屽彂閫佷汉銆佹敹浠朵汉绛変腑鏂� + */ + private Charset charset = CharsetUtil.CHARSET_UTF_8; + /** + * 瀵逛簬瓒呴暱鍙傛暟鏄惁鍒囧垎涓哄浠斤紝榛樿涓篺alse锛堝浗鍐呴偖绠遍檮浠朵笉鏀寔鍒囧垎鐨勯檮浠跺悕锛� + */ + private boolean splitlongparameters = false; + /** + * 瀵逛簬鏂囦欢鍚嶆槸鍚︿娇鐢▄@link #charset}缂栫爜锛岄粯璁や负 {@code true} + */ + private boolean encodefilename = true; - /** - * 浣跨敤 STARTTLS瀹夊叏杩炴帴锛孲TARTTLS鏄绾枃鏈�氫俊鍗忚鐨勬墿灞曘�傚畠灏嗙函鏂囨湰杩炴帴鍗囩骇涓哄姞瀵嗚繛鎺ワ紙TLS鎴朣SL锛夛紝 鑰屼笉鏄娇鐢ㄤ竴涓崟鐙殑鍔犲瘑閫氫俊绔彛銆� - */ - private boolean starttlsEnable = false; - /** - * 浣跨敤 SSL瀹夊叏杩炴帴 - */ - private Boolean sslEnable; + /** + * 浣跨敤 STARTTLS瀹夊叏杩炴帴锛孲TARTTLS鏄绾枃鏈�氫俊鍗忚鐨勬墿灞曘�傚畠灏嗙函鏂囨湰杩炴帴鍗囩骇涓哄姞瀵嗚繛鎺ワ紙TLS鎴朣SL锛夛紝 鑰屼笉鏄娇鐢ㄤ竴涓崟鐙殑鍔犲瘑閫氫俊绔彛銆� + */ + private boolean starttlsEnable = false; + /** + * 浣跨敤 SSL瀹夊叏杩炴帴 + */ + private Boolean sslEnable; - /** - * SSL鍗忚锛屽涓崗璁敤绌烘牸鍒嗛殧 - */ - private String sslProtocols; + /** + * SSL鍗忚锛屽涓崗璁敤绌烘牸鍒嗛殧 + */ + private String sslProtocols; - /** - * 鎸囧畾瀹炵幇javax.net.SocketFactory鎺ュ彛鐨勭被鐨勫悕绉�,杩欎釜绫诲皢琚敤浜庡垱寤篠MTP鐨勫鎺ュ瓧 - */ - private String socketFactoryClass = "javax.net.ssl.SSLSocketFactory"; - /** - * 濡傛灉璁剧疆涓簍rue,鏈兘鍒涘缓涓�涓鎺ュ瓧浣跨敤鎸囧畾鐨勫鎺ュ瓧宸ュ巶绫诲皢瀵艰嚧浣跨敤java.net.Socket鍒涘缓鐨勫鎺ュ瓧绫�, 榛樿鍊间负true - */ - private boolean socketFactoryFallback; - /** - * 鎸囧畾鐨勭鍙h繛鎺ュ埌鍦ㄤ娇鐢ㄦ寚瀹氱殑濂楁帴瀛楀伐鍘傘�傚鏋滄病鏈夎缃�,灏嗕娇鐢ㄩ粯璁ょ鍙� - */ - private int socketFactoryPort = 465; + /** + * 鎸囧畾瀹炵幇javax.net.SocketFactory鎺ュ彛鐨勭被鐨勫悕绉�,杩欎釜绫诲皢琚敤浜庡垱寤篠MTP鐨勫鎺ュ瓧 + */ + private String socketFactoryClass = "javax.net.ssl.SSLSocketFactory"; + /** + * 濡傛灉璁剧疆涓簍rue,鏈兘鍒涘缓涓�涓鎺ュ瓧浣跨敤鎸囧畾鐨勫鎺ュ瓧宸ュ巶绫诲皢瀵艰嚧浣跨敤java.net.Socket鍒涘缓鐨勫鎺ュ瓧绫�, 榛樿鍊间负true + */ + private boolean socketFactoryFallback; + /** + * 鎸囧畾鐨勭鍙h繛鎺ュ埌鍦ㄤ娇鐢ㄦ寚瀹氱殑濂楁帴瀛楀伐鍘傘�傚鏋滄病鏈夎缃�,灏嗕娇鐢ㄩ粯璁ょ鍙� + */ + private int socketFactoryPort = 465; - /** - * SMTP瓒呮椂鏃堕暱锛屽崟浣嶆绉掞紝缂虹渷鍊间笉瓒呮椂 - */ - private long timeout; - /** - * Socket杩炴帴瓒呮椂鍊硷紝鍗曚綅姣锛岀己鐪佸�间笉瓒呮椂 - */ - private long connectionTimeout; - /** - * Socket鍐欏嚭瓒呮椂鍊硷紝鍗曚綅姣锛岀己鐪佸�间笉瓒呮椂 - */ - private long writeTimeout; + /** + * SMTP瓒呮椂鏃堕暱锛屽崟浣嶆绉掞紝缂虹渷鍊间笉瓒呮椂 + */ + private long timeout; + /** + * Socket杩炴帴瓒呮椂鍊硷紝鍗曚綅姣锛岀己鐪佸�间笉瓒呮椂 + */ + private long connectionTimeout; + /** + * Socket鍐欏嚭瓒呮椂鍊硷紝鍗曚綅姣锛岀己鐪佸�间笉瓒呮椂 + */ + private long writeTimeout; - /** - * 鑷畾涔夌殑鍏朵粬灞炴�э紝姝よ嚜瀹氫箟灞炴�т細瑕嗙洊榛樿灞炴�� - */ - private final Map<String, Object> customProperty = new HashMap<>(); + /** + * 鑷畾涔夌殑鍏朵粬灞炴�э紝姝よ嚜瀹氫箟灞炴�т細瑕嗙洊榛樿灞炴�� + */ + private final Map<String, Object> customProperty = new HashMap<>(); - // -------------------------------------------------------------- Constructor start + // -------------------------------------------------------------- Constructor start - /** - * 鏋勯��,鎵�鏈夊弬鏁伴渶鑷瀹氫箟鎴栦繚鎸侀粯璁ゅ�� - */ - public MailAccount() { - } + /** + * 鏋勯��,鎵�鏈夊弬鏁伴渶鑷瀹氫箟鎴栦繚鎸侀粯璁ゅ�� + */ + public MailAccount() { + } - /** - * 鏋勯�� - * - * @param settingPath 閰嶇疆鏂囦欢璺緞 - */ - public MailAccount(String settingPath) { - this(new Setting(settingPath)); - } + /** + * 鏋勯�� + * + * @param settingPath 閰嶇疆鏂囦欢璺緞 + */ + public MailAccount(String settingPath) { + this(new Setting(settingPath)); + } - /** - * 鏋勯�� - * - * @param setting 閰嶇疆鏂囦欢 - */ - public MailAccount(Setting setting) { - setting.toBean(this); - } + /** + * 鏋勯�� + * + * @param setting 閰嶇疆鏂囦欢 + */ + public MailAccount(Setting setting) { + setting.toBean(this); + } - // -------------------------------------------------------------- Constructor end + // -------------------------------------------------------------- Constructor end - /** - * 鑾峰緱SMTP鏈嶅姟鍣ㄥ煙鍚� - * - * @return SMTP鏈嶅姟鍣ㄥ煙鍚� - */ - public String getHost() { - return host; - } + /** + * 鑾峰緱SMTP鏈嶅姟鍣ㄥ煙鍚� + * + * @return SMTP鏈嶅姟鍣ㄥ煙鍚� + */ + public String getHost() { + return host; + } - /** - * 璁剧疆SMTP鏈嶅姟鍣ㄥ煙鍚� - * - * @param host SMTP鏈嶅姟鍣ㄥ煙鍚� - * @return this - */ - public MailAccount setHost(String host) { - this.host = host; - return this; - } + /** + * 璁剧疆SMTP鏈嶅姟鍣ㄥ煙鍚� + * + * @param host SMTP鏈嶅姟鍣ㄥ煙鍚� + * @return this + */ + public MailAccount setHost(String host) { + this.host = host; + return this; + } - /** - * 鑾峰緱SMTP鏈嶅姟绔彛 - * - * @return SMTP鏈嶅姟绔彛 - */ - public Integer getPort() { - return port; - } + /** + * 鑾峰緱SMTP鏈嶅姟绔彛 + * + * @return SMTP鏈嶅姟绔彛 + */ + public Integer getPort() { + return port; + } - /** - * 璁剧疆SMTP鏈嶅姟绔彛 - * - * @param port SMTP鏈嶅姟绔彛 - * @return this - */ - public MailAccount setPort(Integer port) { - this.port = port; - return this; - } + /** + * 璁剧疆SMTP鏈嶅姟绔彛 + * + * @param port SMTP鏈嶅姟绔彛 + * @return this + */ + public MailAccount setPort(Integer port) { + this.port = port; + return this; + } - /** - * 鏄惁闇�瑕佺敤鎴峰悕瀵嗙爜楠岃瘉 - * - * @return 鏄惁闇�瑕佺敤鎴峰悕瀵嗙爜楠岃瘉 - */ - public Boolean isAuth() { - return auth; - } + /** + * 鏄惁闇�瑕佺敤鎴峰悕瀵嗙爜楠岃瘉 + * + * @return 鏄惁闇�瑕佺敤鎴峰悕瀵嗙爜楠岃瘉 + */ + public Boolean isAuth() { + return auth; + } - /** - * 璁剧疆鏄惁闇�瑕佺敤鎴峰悕瀵嗙爜楠岃瘉 - * - * @param isAuth 鏄惁闇�瑕佺敤鎴峰悕瀵嗙爜楠岃瘉 - * @return this - */ - public MailAccount setAuth(boolean isAuth) { - this.auth = isAuth; - return this; - } + /** + * 璁剧疆鏄惁闇�瑕佺敤鎴峰悕瀵嗙爜楠岃瘉 + * + * @param isAuth 鏄惁闇�瑕佺敤鎴峰悕瀵嗙爜楠岃瘉 + * @return this + */ + public MailAccount setAuth(boolean isAuth) { + this.auth = isAuth; + return this; + } - /** - * 鑾峰彇鐢ㄦ埛鍚� - * - * @return 鐢ㄦ埛鍚� - */ - public String getUser() { - return user; - } + /** + * 鑾峰彇鐢ㄦ埛鍚� + * + * @return 鐢ㄦ埛鍚� + */ + public String getUser() { + return user; + } - /** - * 璁剧疆鐢ㄦ埛鍚� - * - * @param user 鐢ㄦ埛鍚� - * @return this - */ - public MailAccount setUser(String user) { - this.user = user; - return this; - } + /** + * 璁剧疆鐢ㄦ埛鍚� + * + * @param user 鐢ㄦ埛鍚� + * @return this + */ + public MailAccount setUser(String user) { + this.user = user; + return this; + } - /** - * 鑾峰彇瀵嗙爜 - * - * @return 瀵嗙爜 - */ - public String getPass() { - return pass; - } + /** + * 鑾峰彇瀵嗙爜 + * + * @return 瀵嗙爜 + */ + public String getPass() { + return pass; + } - /** - * 璁剧疆瀵嗙爜 - * - * @param pass 瀵嗙爜 - * @return this - */ - public MailAccount setPass(String pass) { - this.pass = pass; - return this; - } + /** + * 璁剧疆瀵嗙爜 + * + * @param pass 瀵嗙爜 + * @return this + */ + public MailAccount setPass(String pass) { + this.pass = pass; + return this; + } - /** - * 鑾峰彇鍙戦�佹柟锛岄伒寰猂FC-822鏍囧噯 - * - * @return 鍙戦�佹柟锛岄伒寰猂FC-822鏍囧噯 - */ - public String getFrom() { - return from; - } + /** + * 鑾峰彇鍙戦�佹柟锛岄伒寰猂FC-822鏍囧噯 + * + * @return 鍙戦�佹柟锛岄伒寰猂FC-822鏍囧噯 + */ + public String getFrom() { + return from; + } - /** - * 璁剧疆鍙戦�佹柟锛岄伒寰猂FC-822鏍囧噯<br> - * 鍙戜欢浜哄彲浠ユ槸浠ヤ笅褰㈠紡锛� - * - * <pre> - * 1. user@xxx.xx - * 2. name <user@xxx.xx> - * </pre> - * - * @param from 鍙戦�佹柟锛岄伒寰猂FC-822鏍囧噯 - * @return this - */ - public MailAccount setFrom(String from) { - this.from = from; - return this; - } + /** + * 璁剧疆鍙戦�佹柟锛岄伒寰猂FC-822鏍囧噯<br> + * 鍙戜欢浜哄彲浠ユ槸浠ヤ笅褰㈠紡锛� + * + * <pre> + * 1. user@xxx.xx + * 2. name <user@xxx.xx> + * </pre> + * + * @param from 鍙戦�佹柟锛岄伒寰猂FC-822鏍囧噯 + * @return this + */ + public MailAccount setFrom(String from) { + this.from = from; + return this; + } - /** - * 鏄惁鎵撳紑璋冭瘯妯″紡锛岃皟璇曟ā寮忎細鏄剧ず涓庨偖浠舵湇鍔″櫒閫氫俊杩囩▼锛岄粯璁や笉寮�鍚� - * - * @return 鏄惁鎵撳紑璋冭瘯妯″紡锛岃皟璇曟ā寮忎細鏄剧ず涓庨偖浠舵湇鍔″櫒閫氫俊杩囩▼锛岄粯璁や笉寮�鍚� - * @since 4.0.2 - */ - public boolean isDebug() { - return debug; - } + /** + * 鏄惁鎵撳紑璋冭瘯妯″紡锛岃皟璇曟ā寮忎細鏄剧ず涓庨偖浠舵湇鍔″櫒閫氫俊杩囩▼锛岄粯璁や笉寮�鍚� + * + * @return 鏄惁鎵撳紑璋冭瘯妯″紡锛岃皟璇曟ā寮忎細鏄剧ず涓庨偖浠舵湇鍔″櫒閫氫俊杩囩▼锛岄粯璁や笉寮�鍚� + * @since 4.0.2 + */ + public boolean isDebug() { + return debug; + } - /** - * 璁剧疆鏄惁鎵撳紑璋冭瘯妯″紡锛岃皟璇曟ā寮忎細鏄剧ず涓庨偖浠舵湇鍔″櫒閫氫俊杩囩▼锛岄粯璁や笉寮�鍚� - * - * @param debug 鏄惁鎵撳紑璋冭瘯妯″紡锛岃皟璇曟ā寮忎細鏄剧ず涓庨偖浠舵湇鍔″櫒閫氫俊杩囩▼锛岄粯璁や笉寮�鍚� - * @return this - * @since 4.0.2 - */ - public MailAccount setDebug(boolean debug) { - this.debug = debug; - return this; - } + /** + * 璁剧疆鏄惁鎵撳紑璋冭瘯妯″紡锛岃皟璇曟ā寮忎細鏄剧ず涓庨偖浠舵湇鍔″櫒閫氫俊杩囩▼锛岄粯璁や笉寮�鍚� + * + * @param debug 鏄惁鎵撳紑璋冭瘯妯″紡锛岃皟璇曟ā寮忎細鏄剧ず涓庨偖浠舵湇鍔″櫒閫氫俊杩囩▼锛岄粯璁や笉寮�鍚� + * @return this + * @since 4.0.2 + */ + public MailAccount setDebug(boolean debug) { + this.debug = debug; + return this; + } - /** - * 鑾峰彇瀛楃闆嗙紪鐮� - * - * @return 缂栫爜锛屽彲鑳戒负{@code null} - */ - public Charset getCharset() { - return charset; - } + /** + * 鑾峰彇瀛楃闆嗙紪鐮� + * + * @return 缂栫爜锛屽彲鑳戒负{@code null} + */ + public Charset getCharset() { + return charset; + } - /** - * 璁剧疆瀛楃闆嗙紪鐮侊紝姝ら�夐」涓嶄細淇敼鍏ㄥ眬閰嶇疆锛岃嫢淇敼鍏ㄥ眬閰嶇疆锛岃璁剧疆姝ら」涓簕@code null}骞惰缃細 - * <pre> - * System.setProperty("mail.mime.charset", charset); - * </pre> - * - * @param charset 瀛楃闆嗙紪鐮侊紝{@code null} 鍒欒〃绀轰娇鐢ㄥ叏灞�璁剧疆鐨勯粯璁ょ紪鐮侊紝鍏ㄥ眬缂栫爜涓簃ail.mime.charset绯荤粺灞炴�� - * @return this - */ - public MailAccount setCharset(Charset charset) { - this.charset = charset; - return this; - } + /** + * 璁剧疆瀛楃闆嗙紪鐮侊紝姝ら�夐」涓嶄細淇敼鍏ㄥ眬閰嶇疆锛岃嫢淇敼鍏ㄥ眬閰嶇疆锛岃璁剧疆姝ら」涓簕@code null}骞惰缃細 + * <pre> + * System.setProperty("mail.mime.charset", charset); + * </pre> + * + * @param charset 瀛楃闆嗙紪鐮侊紝{@code null} 鍒欒〃绀轰娇鐢ㄥ叏灞�璁剧疆鐨勯粯璁ょ紪鐮侊紝鍏ㄥ眬缂栫爜涓簃ail.mime.charset绯荤粺灞炴�� + * @return this + */ + public MailAccount setCharset(Charset charset) { + this.charset = charset; + return this; + } - /** - * 瀵逛簬瓒呴暱鍙傛暟鏄惁鍒囧垎涓哄浠斤紝榛樿涓篺alse锛堝浗鍐呴偖绠遍檮浠朵笉鏀寔鍒囧垎鐨勯檮浠跺悕锛� - * - * @return 瀵逛簬瓒呴暱鍙傛暟鏄惁鍒囧垎涓哄浠� - */ - public boolean isSplitlongparameters() { - return splitlongparameters; - } + /** + * 瀵逛簬瓒呴暱鍙傛暟鏄惁鍒囧垎涓哄浠斤紝榛樿涓篺alse锛堝浗鍐呴偖绠遍檮浠朵笉鏀寔鍒囧垎鐨勯檮浠跺悕锛� + * + * @return 瀵逛簬瓒呴暱鍙傛暟鏄惁鍒囧垎涓哄浠� + */ + public boolean isSplitlongparameters() { + return splitlongparameters; + } - /** - * 璁剧疆瀵逛簬瓒呴暱鍙傛暟鏄惁鍒囧垎涓哄浠斤紝榛樿涓篺alse锛堝浗鍐呴偖绠遍檮浠朵笉鏀寔鍒囧垎鐨勯檮浠跺悕锛�<br> - * 娉ㄦ剰姝ら」涓哄叏灞�璁剧疆锛屾椤逛細璋冪敤 - * <pre> - * System.setProperty("mail.mime.splitlongparameters", true) - * </pre> - * - * @param splitlongparameters 瀵逛簬瓒呴暱鍙傛暟鏄惁鍒囧垎涓哄浠� - */ - public void setSplitlongparameters(boolean splitlongparameters) { - this.splitlongparameters = splitlongparameters; - } + /** + * 璁剧疆瀵逛簬瓒呴暱鍙傛暟鏄惁鍒囧垎涓哄浠斤紝榛樿涓篺alse锛堝浗鍐呴偖绠遍檮浠朵笉鏀寔鍒囧垎鐨勯檮浠跺悕锛�<br> + * 娉ㄦ剰姝ら」涓哄叏灞�璁剧疆锛屾椤逛細璋冪敤 + * <pre> + * System.setProperty("mail.mime.splitlongparameters", true) + * </pre> + * + * @param splitlongparameters 瀵逛簬瓒呴暱鍙傛暟鏄惁鍒囧垎涓哄浠� + */ + public void setSplitlongparameters(boolean splitlongparameters) { + this.splitlongparameters = splitlongparameters; + } - /** - * 瀵逛簬鏂囦欢鍚嶆槸鍚︿娇鐢▄@link #charset}缂栫爜锛岄粯璁や负 {@code true} - * - * @return 瀵逛簬鏂囦欢鍚嶆槸鍚︿娇鐢▄@link #charset}缂栫爜锛岄粯璁や负 {@code true} - * @since 5.7.16 - */ - public boolean isEncodefilename() { + /** + * 瀵逛簬鏂囦欢鍚嶆槸鍚︿娇鐢▄@link #charset}缂栫爜锛岄粯璁や负 {@code true} + * + * @return 瀵逛簬鏂囦欢鍚嶆槸鍚︿娇鐢▄@link #charset}缂栫爜锛岄粯璁や负 {@code true} + * @since 5.7.16 + */ + public boolean isEncodefilename() { - return encodefilename; - } + return encodefilename; + } - /** - * 璁剧疆瀵逛簬鏂囦欢鍚嶆槸鍚︿娇鐢▄@link #charset}缂栫爜锛屾閫夐」涓嶄細淇敼鍏ㄥ眬閰嶇疆<br> - * 濡傛灉姝ら�夐」璁剧疆涓簕@code false}锛屽垯鏄惁缂栫爜鍙栧喅浜庝袱涓郴缁熷睘鎬э細 - * <ul> - * <li>mail.mime.encodefilename 鏄惁缂栫爜闄勪欢鏂囦欢鍚�</li> - * <li>mail.mime.charset 缂栫爜鏂囦欢鍚嶇殑缂栫爜</li> - * </ul> - * - * @param encodefilename 瀵逛簬鏂囦欢鍚嶆槸鍚︿娇鐢▄@link #charset}缂栫爜 - * @since 5.7.16 - */ - public void setEncodefilename(boolean encodefilename) { - this.encodefilename = encodefilename; - } + /** + * 璁剧疆瀵逛簬鏂囦欢鍚嶆槸鍚︿娇鐢▄@link #charset}缂栫爜锛屾閫夐」涓嶄細淇敼鍏ㄥ眬閰嶇疆<br> + * 濡傛灉姝ら�夐」璁剧疆涓簕@code false}锛屽垯鏄惁缂栫爜鍙栧喅浜庝袱涓郴缁熷睘鎬э細 + * <ul> + * <li>mail.mime.encodefilename 鏄惁缂栫爜闄勪欢鏂囦欢鍚�</li> + * <li>mail.mime.charset 缂栫爜鏂囦欢鍚嶇殑缂栫爜</li> + * </ul> + * + * @param encodefilename 瀵逛簬鏂囦欢鍚嶆槸鍚︿娇鐢▄@link #charset}缂栫爜 + * @since 5.7.16 + */ + public void setEncodefilename(boolean encodefilename) { + this.encodefilename = encodefilename; + } - /** - * 鏄惁浣跨敤 STARTTLS瀹夊叏杩炴帴锛孲TARTTLS鏄绾枃鏈�氫俊鍗忚鐨勬墿灞曘�傚畠灏嗙函鏂囨湰杩炴帴鍗囩骇涓哄姞瀵嗚繛鎺ワ紙TLS鎴朣SL锛夛紝 鑰屼笉鏄娇鐢ㄤ竴涓崟鐙殑鍔犲瘑閫氫俊绔彛銆� - * - * @return 鏄惁浣跨敤 STARTTLS瀹夊叏杩炴帴 - */ - public boolean isStarttlsEnable() { - return this.starttlsEnable; - } + /** + * 鏄惁浣跨敤 STARTTLS瀹夊叏杩炴帴锛孲TARTTLS鏄绾枃鏈�氫俊鍗忚鐨勬墿灞曘�傚畠灏嗙函鏂囨湰杩炴帴鍗囩骇涓哄姞瀵嗚繛鎺ワ紙TLS鎴朣SL锛夛紝 鑰屼笉鏄娇鐢ㄤ竴涓崟鐙殑鍔犲瘑閫氫俊绔彛銆� + * + * @return 鏄惁浣跨敤 STARTTLS瀹夊叏杩炴帴 + */ + public boolean isStarttlsEnable() { + return this.starttlsEnable; + } - /** - * 璁剧疆鏄惁浣跨敤STARTTLS瀹夊叏杩炴帴锛孲TARTTLS鏄绾枃鏈�氫俊鍗忚鐨勬墿灞曘�傚畠灏嗙函鏂囨湰杩炴帴鍗囩骇涓哄姞瀵嗚繛鎺ワ紙TLS鎴朣SL锛夛紝 鑰屼笉鏄娇鐢ㄤ竴涓崟鐙殑鍔犲瘑閫氫俊绔彛銆� - * - * @param startttlsEnable 鏄惁浣跨敤STARTTLS瀹夊叏杩炴帴 - * @return this - */ - public MailAccount setStarttlsEnable(boolean startttlsEnable) { - this.starttlsEnable = startttlsEnable; - return this; - } + /** + * 璁剧疆鏄惁浣跨敤STARTTLS瀹夊叏杩炴帴锛孲TARTTLS鏄绾枃鏈�氫俊鍗忚鐨勬墿灞曘�傚畠灏嗙函鏂囨湰杩炴帴鍗囩骇涓哄姞瀵嗚繛鎺ワ紙TLS鎴朣SL锛夛紝 鑰屼笉鏄娇鐢ㄤ竴涓崟鐙殑鍔犲瘑閫氫俊绔彛銆� + * + * @param startttlsEnable 鏄惁浣跨敤STARTTLS瀹夊叏杩炴帴 + * @return this + */ + public MailAccount setStarttlsEnable(boolean startttlsEnable) { + this.starttlsEnable = startttlsEnable; + return this; + } - /** - * 鏄惁浣跨敤 SSL瀹夊叏杩炴帴 - * - * @return 鏄惁浣跨敤 SSL瀹夊叏杩炴帴 - */ - public Boolean isSslEnable() { - return this.sslEnable; - } + /** + * 鏄惁浣跨敤 SSL瀹夊叏杩炴帴 + * + * @return 鏄惁浣跨敤 SSL瀹夊叏杩炴帴 + */ + public Boolean isSslEnable() { + return this.sslEnable; + } - /** - * 璁剧疆鏄惁浣跨敤SSL瀹夊叏杩炴帴 - * - * @param sslEnable 鏄惁浣跨敤SSL瀹夊叏杩炴帴 - * @return this - */ - public MailAccount setSslEnable(Boolean sslEnable) { - this.sslEnable = sslEnable; - return this; - } + /** + * 璁剧疆鏄惁浣跨敤SSL瀹夊叏杩炴帴 + * + * @param sslEnable 鏄惁浣跨敤SSL瀹夊叏杩炴帴 + * @return this + */ + public MailAccount setSslEnable(Boolean sslEnable) { + this.sslEnable = sslEnable; + return this; + } - /** - * 鑾峰彇SSL鍗忚锛屽涓崗璁敤绌烘牸鍒嗛殧 - * - * @return SSL鍗忚锛屽涓崗璁敤绌烘牸鍒嗛殧 - * @since 5.5.7 - */ - public String getSslProtocols() { - return sslProtocols; - } + /** + * 鑾峰彇SSL鍗忚锛屽涓崗璁敤绌烘牸鍒嗛殧 + * + * @return SSL鍗忚锛屽涓崗璁敤绌烘牸鍒嗛殧 + * @since 5.5.7 + */ + public String getSslProtocols() { + return sslProtocols; + } - /** - * 璁剧疆SSL鍗忚锛屽涓崗璁敤绌烘牸鍒嗛殧 - * - * @param sslProtocols SSL鍗忚锛屽涓崗璁敤绌烘牸鍒嗛殧 - * @since 5.5.7 - */ - public void setSslProtocols(String sslProtocols) { - this.sslProtocols = sslProtocols; - } + /** + * 璁剧疆SSL鍗忚锛屽涓崗璁敤绌烘牸鍒嗛殧 + * + * @param sslProtocols SSL鍗忚锛屽涓崗璁敤绌烘牸鍒嗛殧 + * @since 5.5.7 + */ + public void setSslProtocols(String sslProtocols) { + this.sslProtocols = sslProtocols; + } - /** - * 鑾峰彇鎸囧畾瀹炵幇javax.net.SocketFactory鎺ュ彛鐨勭被鐨勫悕绉�,杩欎釜绫诲皢琚敤浜庡垱寤篠MTP鐨勫鎺ュ瓧 - * - * @return 鎸囧畾瀹炵幇javax.net.SocketFactory鎺ュ彛鐨勭被鐨勫悕绉�, 杩欎釜绫诲皢琚敤浜庡垱寤篠MTP鐨勫鎺ュ瓧 - */ - public String getSocketFactoryClass() { - return socketFactoryClass; - } + /** + * 鑾峰彇鎸囧畾瀹炵幇javax.net.SocketFactory鎺ュ彛鐨勭被鐨勫悕绉�,杩欎釜绫诲皢琚敤浜庡垱寤篠MTP鐨勫鎺ュ瓧 + * + * @return 鎸囧畾瀹炵幇javax.net.SocketFactory鎺ュ彛鐨勭被鐨勫悕绉�, 杩欎釜绫诲皢琚敤浜庡垱寤篠MTP鐨勫鎺ュ瓧 + */ + public String getSocketFactoryClass() { + return socketFactoryClass; + } - /** - * 璁剧疆鎸囧畾瀹炵幇javax.net.SocketFactory鎺ュ彛鐨勭被鐨勫悕绉�,杩欎釜绫诲皢琚敤浜庡垱寤篠MTP鐨勫鎺ュ瓧 - * - * @param socketFactoryClass 鎸囧畾瀹炵幇javax.net.SocketFactory鎺ュ彛鐨勭被鐨勫悕绉�,杩欎釜绫诲皢琚敤浜庡垱寤篠MTP鐨勫鎺ュ瓧 - * @return this - */ - public MailAccount setSocketFactoryClass(String socketFactoryClass) { - this.socketFactoryClass = socketFactoryClass; - return this; - } + /** + * 璁剧疆鎸囧畾瀹炵幇javax.net.SocketFactory鎺ュ彛鐨勭被鐨勫悕绉�,杩欎釜绫诲皢琚敤浜庡垱寤篠MTP鐨勫鎺ュ瓧 + * + * @param socketFactoryClass 鎸囧畾瀹炵幇javax.net.SocketFactory鎺ュ彛鐨勭被鐨勫悕绉�,杩欎釜绫诲皢琚敤浜庡垱寤篠MTP鐨勫鎺ュ瓧 + * @return this + */ + public MailAccount setSocketFactoryClass(String socketFactoryClass) { + this.socketFactoryClass = socketFactoryClass; + return this; + } - /** - * 濡傛灉璁剧疆涓簍rue,鏈兘鍒涘缓涓�涓鎺ュ瓧浣跨敤鎸囧畾鐨勫鎺ュ瓧宸ュ巶绫诲皢瀵艰嚧浣跨敤java.net.Socket鍒涘缓鐨勫鎺ュ瓧绫�, 榛樿鍊间负true - * - * @return 濡傛灉璁剧疆涓簍rue, 鏈兘鍒涘缓涓�涓鎺ュ瓧浣跨敤鎸囧畾鐨勫鎺ュ瓧宸ュ巶绫诲皢瀵艰嚧浣跨敤java.net.Socket鍒涘缓鐨勫鎺ュ瓧绫�, 榛樿鍊间负true - */ - public boolean isSocketFactoryFallback() { - return socketFactoryFallback; - } + /** + * 濡傛灉璁剧疆涓簍rue,鏈兘鍒涘缓涓�涓鎺ュ瓧浣跨敤鎸囧畾鐨勫鎺ュ瓧宸ュ巶绫诲皢瀵艰嚧浣跨敤java.net.Socket鍒涘缓鐨勫鎺ュ瓧绫�, 榛樿鍊间负true + * + * @return 濡傛灉璁剧疆涓簍rue, 鏈兘鍒涘缓涓�涓鎺ュ瓧浣跨敤鎸囧畾鐨勫鎺ュ瓧宸ュ巶绫诲皢瀵艰嚧浣跨敤java.net.Socket鍒涘缓鐨勫鎺ュ瓧绫�, 榛樿鍊间负true + */ + public boolean isSocketFactoryFallback() { + return socketFactoryFallback; + } - /** - * 濡傛灉璁剧疆涓簍rue,鏈兘鍒涘缓涓�涓鎺ュ瓧浣跨敤鎸囧畾鐨勫鎺ュ瓧宸ュ巶绫诲皢瀵艰嚧浣跨敤java.net.Socket鍒涘缓鐨勫鎺ュ瓧绫�, 榛樿鍊间负true - * - * @param socketFactoryFallback 濡傛灉璁剧疆涓簍rue,鏈兘鍒涘缓涓�涓鎺ュ瓧浣跨敤鎸囧畾鐨勫鎺ュ瓧宸ュ巶绫诲皢瀵艰嚧浣跨敤java.net.Socket鍒涘缓鐨勫鎺ュ瓧绫�, 榛樿鍊间负true - * @return this - */ - public MailAccount setSocketFactoryFallback(boolean socketFactoryFallback) { - this.socketFactoryFallback = socketFactoryFallback; - return this; - } + /** + * 濡傛灉璁剧疆涓簍rue,鏈兘鍒涘缓涓�涓鎺ュ瓧浣跨敤鎸囧畾鐨勫鎺ュ瓧宸ュ巶绫诲皢瀵艰嚧浣跨敤java.net.Socket鍒涘缓鐨勫鎺ュ瓧绫�, 榛樿鍊间负true + * + * @param socketFactoryFallback 濡傛灉璁剧疆涓簍rue,鏈兘鍒涘缓涓�涓鎺ュ瓧浣跨敤鎸囧畾鐨勫鎺ュ瓧宸ュ巶绫诲皢瀵艰嚧浣跨敤java.net.Socket鍒涘缓鐨勫鎺ュ瓧绫�, 榛樿鍊间负true + * @return this + */ + public MailAccount setSocketFactoryFallback(boolean socketFactoryFallback) { + this.socketFactoryFallback = socketFactoryFallback; + return this; + } - /** - * 鑾峰彇鎸囧畾鐨勭鍙h繛鎺ュ埌鍦ㄤ娇鐢ㄦ寚瀹氱殑濂楁帴瀛楀伐鍘傘�傚鏋滄病鏈夎缃�,灏嗕娇鐢ㄩ粯璁ょ鍙� - * - * @return 鎸囧畾鐨勭鍙h繛鎺ュ埌鍦ㄤ娇鐢ㄦ寚瀹氱殑濂楁帴瀛楀伐鍘傘�傚鏋滄病鏈夎缃�,灏嗕娇鐢ㄩ粯璁ょ鍙� - */ - public int getSocketFactoryPort() { - return socketFactoryPort; - } + /** + * 鑾峰彇鎸囧畾鐨勭鍙h繛鎺ュ埌鍦ㄤ娇鐢ㄦ寚瀹氱殑濂楁帴瀛楀伐鍘傘�傚鏋滄病鏈夎缃�,灏嗕娇鐢ㄩ粯璁ょ鍙� + * + * @return 鎸囧畾鐨勭鍙h繛鎺ュ埌鍦ㄤ娇鐢ㄦ寚瀹氱殑濂楁帴瀛楀伐鍘傘�傚鏋滄病鏈夎缃�,灏嗕娇鐢ㄩ粯璁ょ鍙� + */ + public int getSocketFactoryPort() { + return socketFactoryPort; + } - /** - * 鎸囧畾鐨勭鍙h繛鎺ュ埌鍦ㄤ娇鐢ㄦ寚瀹氱殑濂楁帴瀛楀伐鍘傘�傚鏋滄病鏈夎缃�,灏嗕娇鐢ㄩ粯璁ょ鍙� - * - * @param socketFactoryPort 鎸囧畾鐨勭鍙h繛鎺ュ埌鍦ㄤ娇鐢ㄦ寚瀹氱殑濂楁帴瀛楀伐鍘傘�傚鏋滄病鏈夎缃�,灏嗕娇鐢ㄩ粯璁ょ鍙� - * @return this - */ - public MailAccount setSocketFactoryPort(int socketFactoryPort) { - this.socketFactoryPort = socketFactoryPort; - return this; - } + /** + * 鎸囧畾鐨勭鍙h繛鎺ュ埌鍦ㄤ娇鐢ㄦ寚瀹氱殑濂楁帴瀛楀伐鍘傘�傚鏋滄病鏈夎缃�,灏嗕娇鐢ㄩ粯璁ょ鍙� + * + * @param socketFactoryPort 鎸囧畾鐨勭鍙h繛鎺ュ埌鍦ㄤ娇鐢ㄦ寚瀹氱殑濂楁帴瀛楀伐鍘傘�傚鏋滄病鏈夎缃�,灏嗕娇鐢ㄩ粯璁ょ鍙� + * @return this + */ + public MailAccount setSocketFactoryPort(int socketFactoryPort) { + this.socketFactoryPort = socketFactoryPort; + return this; + } - /** - * 璁剧疆SMTP瓒呮椂鏃堕暱锛屽崟浣嶆绉掞紝缂虹渷鍊间笉瓒呮椂 - * - * @param timeout SMTP瓒呮椂鏃堕暱锛屽崟浣嶆绉掞紝缂虹渷鍊间笉瓒呮椂 - * @return this - * @since 4.1.17 - */ - public MailAccount setTimeout(long timeout) { - this.timeout = timeout; - return this; - } + /** + * 璁剧疆SMTP瓒呮椂鏃堕暱锛屽崟浣嶆绉掞紝缂虹渷鍊间笉瓒呮椂 + * + * @param timeout SMTP瓒呮椂鏃堕暱锛屽崟浣嶆绉掞紝缂虹渷鍊间笉瓒呮椂 + * @return this + * @since 4.1.17 + */ + public MailAccount setTimeout(long timeout) { + this.timeout = timeout; + return this; + } - /** - * 璁剧疆Socket杩炴帴瓒呮椂鍊硷紝鍗曚綅姣锛岀己鐪佸�间笉瓒呮椂 - * - * @param connectionTimeout Socket杩炴帴瓒呮椂鍊硷紝鍗曚綅姣锛岀己鐪佸�间笉瓒呮椂 - * @return this - * @since 4.1.17 - */ - public MailAccount setConnectionTimeout(long connectionTimeout) { - this.connectionTimeout = connectionTimeout; - return this; - } + /** + * 璁剧疆Socket杩炴帴瓒呮椂鍊硷紝鍗曚綅姣锛岀己鐪佸�间笉瓒呮椂 + * + * @param connectionTimeout Socket杩炴帴瓒呮椂鍊硷紝鍗曚綅姣锛岀己鐪佸�间笉瓒呮椂 + * @return this + * @since 4.1.17 + */ + public MailAccount setConnectionTimeout(long connectionTimeout) { + this.connectionTimeout = connectionTimeout; + return this; + } - /** - * 璁剧疆Socket鍐欏嚭瓒呮椂鍊硷紝鍗曚綅姣锛岀己鐪佸�间笉瓒呮椂 - * - * @param writeTimeout Socket鍐欏嚭瓒呮椂鍊硷紝鍗曚綅姣锛岀己鐪佸�间笉瓒呮椂 - * @return this - * @since 5.8.3 - */ - public MailAccount setWriteTimeout(long writeTimeout) { - this.writeTimeout = writeTimeout; - return this; - } + /** + * 璁剧疆Socket鍐欏嚭瓒呮椂鍊硷紝鍗曚綅姣锛岀己鐪佸�间笉瓒呮椂 + * + * @param writeTimeout Socket鍐欏嚭瓒呮椂鍊硷紝鍗曚綅姣锛岀己鐪佸�间笉瓒呮椂 + * @return this + * @since 5.8.3 + */ + public MailAccount setWriteTimeout(long writeTimeout) { + this.writeTimeout = writeTimeout; + return this; + } - /** - * 鑾峰彇鑷畾涔夊睘鎬у垪琛� - * - * @return 鑷畾涔夊弬鏁板垪琛� - * @since 5.6.4 - */ - public Map<String, Object> getCustomProperty() { - return customProperty; - } + /** + * 鑾峰彇鑷畾涔夊睘鎬у垪琛� + * + * @return 鑷畾涔夊弬鏁板垪琛� + * @since 5.6.4 + */ + public Map<String, Object> getCustomProperty() { + return customProperty; + } - /** - * 璁剧疆鑷畾涔夊睘鎬э紝濡俶ail.smtp.ssl.socketFactory - * - * @param key 灞炴�у悕锛岀┖鐧借蹇界暐 - * @param value 灞炴�у�硷紝 null琚拷鐣� - * @return this - * @since 5.6.4 - */ - public MailAccount setCustomProperty(String key, Object value) { - if (StrUtil.isNotBlank(key) && ObjectUtil.isNotNull(value)) { - this.customProperty.put(key, value); - } - return this; - } + /** + * 璁剧疆鑷畾涔夊睘鎬э紝濡俶ail.smtp.ssl.socketFactory + * + * @param key 灞炴�у悕锛岀┖鐧借蹇界暐 + * @param value 灞炴�у�硷紝 null琚拷鐣� + * @return this + * @since 5.6.4 + */ + public MailAccount setCustomProperty(String key, Object value) { + if (StrUtil.isNotBlank(key) && ObjectUtil.isNotNull(value)) { + this.customProperty.put(key, value); + } + return this; + } - /** - * 鑾峰緱SMTP鐩稿叧淇℃伅 - * - * @return {@link Properties} - */ - public Properties getSmtpProps() { - //鍏ㄥ眬绯荤粺鍙傛暟 - System.setProperty(SPLIT_LONG_PARAMS, String.valueOf(this.splitlongparameters)); + /** + * 鑾峰緱SMTP鐩稿叧淇℃伅 + * + * @return {@link Properties} + */ + public Properties getSmtpProps() { + //鍏ㄥ眬绯荤粺鍙傛暟 + System.setProperty(SPLIT_LONG_PARAMS, String.valueOf(this.splitlongparameters)); - final Properties p = new Properties(); - p.put(MAIL_PROTOCOL, "smtp"); - p.put(SMTP_HOST, this.host); - p.put(SMTP_PORT, String.valueOf(this.port)); - p.put(SMTP_AUTH, String.valueOf(this.auth)); - if (this.timeout > 0) { - p.put(SMTP_TIMEOUT, String.valueOf(this.timeout)); - } - if (this.connectionTimeout > 0) { - p.put(SMTP_CONNECTION_TIMEOUT, String.valueOf(this.connectionTimeout)); - } - // issue#2355 - if (this.writeTimeout > 0) { - p.put(SMTP_WRITE_TIMEOUT, String.valueOf(this.writeTimeout)); - } + final Properties p = new Properties(); + p.put(MAIL_PROTOCOL, "smtp"); + p.put(SMTP_HOST, this.host); + p.put(SMTP_PORT, String.valueOf(this.port)); + p.put(SMTP_AUTH, String.valueOf(this.auth)); + if (this.timeout > 0) { + p.put(SMTP_TIMEOUT, String.valueOf(this.timeout)); + } + if (this.connectionTimeout > 0) { + p.put(SMTP_CONNECTION_TIMEOUT, String.valueOf(this.connectionTimeout)); + } + // issue#2355 + if (this.writeTimeout > 0) { + p.put(SMTP_WRITE_TIMEOUT, String.valueOf(this.writeTimeout)); + } - p.put(MAIL_DEBUG, String.valueOf(this.debug)); + p.put(MAIL_DEBUG, String.valueOf(this.debug)); - if (this.starttlsEnable) { - //STARTTLS鏄绾枃鏈�氫俊鍗忚鐨勬墿灞曘�傚畠灏嗙函鏂囨湰杩炴帴鍗囩骇涓哄姞瀵嗚繛鎺ワ紙TLS鎴朣SL锛夛紝 鑰屼笉鏄娇鐢ㄤ竴涓崟鐙殑鍔犲瘑閫氫俊绔彛銆� - p.put(STARTTLS_ENABLE, "true"); + if (this.starttlsEnable) { + //STARTTLS鏄绾枃鏈�氫俊鍗忚鐨勬墿灞曘�傚畠灏嗙函鏂囨湰杩炴帴鍗囩骇涓哄姞瀵嗚繛鎺ワ紙TLS鎴朣SL锛夛紝 鑰屼笉鏄娇鐢ㄤ竴涓崟鐙殑鍔犲瘑閫氫俊绔彛銆� + p.put(STARTTLS_ENABLE, "true"); - if (null == this.sslEnable) { - //涓轰簡鍏煎鏃х増鏈紝褰撶敤鎴锋病鏈夋椤归厤缃椂锛屾寜鐓tarttlsEnable寮�鍚姸鎬佹椂瀵瑰緟 - this.sslEnable = true; - } - } + if (null == this.sslEnable) { + //涓轰簡鍏煎鏃х増鏈紝褰撶敤鎴锋病鏈夋椤归厤缃椂锛屾寜鐓tarttlsEnable寮�鍚姸鎬佹椂瀵瑰緟 + this.sslEnable = true; + } + } - // SSL - if (null != this.sslEnable && this.sslEnable) { - p.put(SSL_ENABLE, "true"); - p.put(SOCKET_FACTORY, socketFactoryClass); - p.put(SOCKET_FACTORY_FALLBACK, String.valueOf(this.socketFactoryFallback)); - p.put(SOCKET_FACTORY_PORT, String.valueOf(this.socketFactoryPort)); - // issue#IZN95@Gitee锛屽湪Linux涓嬮渶鑷畾涔塖SL鍗忚鐗堟湰 - if (StrUtil.isNotBlank(this.sslProtocols)) { - p.put(SSL_PROTOCOLS, this.sslProtocols); - } - } + // SSL + if (null != this.sslEnable && this.sslEnable) { + p.put(SSL_ENABLE, "true"); + p.put(SOCKET_FACTORY, socketFactoryClass); + p.put(SOCKET_FACTORY_FALLBACK, String.valueOf(this.socketFactoryFallback)); + p.put(SOCKET_FACTORY_PORT, String.valueOf(this.socketFactoryPort)); + // issue#IZN95@Gitee锛屽湪Linux涓嬮渶鑷畾涔塖SL鍗忚鐗堟湰 + if (StrUtil.isNotBlank(this.sslProtocols)) { + p.put(SSL_PROTOCOLS, this.sslProtocols); + } + } - // 琛ュ厖鑷畾涔夊睘鎬э紝鍏佽鑷畾灞炴�ц鐩栧凡缁忚缃殑鍊� - p.putAll(this.customProperty); + // 琛ュ厖鑷畾涔夊睘鎬э紝鍏佽鑷畾灞炴�ц鐩栧凡缁忚缃殑鍊� + p.putAll(this.customProperty); - return p; - } + return p; + } - /** - * 濡傛灉鏌愪簺鍊间负null锛屼娇鐢ㄩ粯璁ゅ�� - * - * @return this - */ - public MailAccount defaultIfEmpty() { - // 鍘绘帀鍙戜欢浜虹殑濮撳悕閮ㄥ垎 - final String fromAddress = InternalMailUtil.parseFirstAddress(this.from, this.charset).getAddress(); + /** + * 濡傛灉鏌愪簺鍊间负null锛屼娇鐢ㄩ粯璁ゅ�� + * + * @return this + */ + public MailAccount defaultIfEmpty() { + // 鍘绘帀鍙戜欢浜虹殑濮撳悕閮ㄥ垎 + final String fromAddress = InternalMailUtil.parseFirstAddress(this.from, this.charset).getAddress(); - if (StrUtil.isBlank(this.host)) { - // 濡傛灉SMTP鍦板潃涓虹┖锛岄粯璁や娇鐢╯mtp.<鍙戜欢浜洪偖绠卞悗缂�> - this.host = StrUtil.format("smtp.{}", StrUtil.subSuf(fromAddress, fromAddress.indexOf('@') + 1)); - } - if (StrUtil.isBlank(user)) { - // 濡傛灉鐢ㄦ埛鍚嶄负绌猴紝榛樿涓哄彂浠朵汉锛坕ssue#I4FYVY@Gitee锛� - //this.user = StrUtil.subPre(fromAddress, fromAddress.indexOf('@')); - this.user = fromAddress; - } - if (null == this.auth) { - // 濡傛灉瀵嗙爜闈炵┖鐧斤紝鍒欎娇鐢ㄨ璇佹ā寮� - this.auth = (false == StrUtil.isBlank(this.pass)); - } - if (null == this.port) { - // 绔彛鍦⊿SL鐘舵�佷笅榛樿涓巗ocketFactoryPort涓�鑷达紝闈濻SL鐘舵�佷笅榛樿涓�25 - this.port = (null != this.sslEnable && this.sslEnable) ? this.socketFactoryPort : 25; - } - if (null == this.charset) { - // 榛樿UTF-8缂栫爜 - this.charset = CharsetUtil.CHARSET_UTF_8; - } + if (StrUtil.isBlank(this.host)) { + // 濡傛灉SMTP鍦板潃涓虹┖锛岄粯璁や娇鐢╯mtp.<鍙戜欢浜洪偖绠卞悗缂�> + this.host = StrUtil.format("smtp.{}", StrUtil.subSuf(fromAddress, fromAddress.indexOf('@') + 1)); + } + if (StrUtil.isBlank(user)) { + // 濡傛灉鐢ㄦ埛鍚嶄负绌猴紝榛樿涓哄彂浠朵汉锛坕ssue#I4FYVY@Gitee锛� + //this.user = StrUtil.subPre(fromAddress, fromAddress.indexOf('@')); + this.user = fromAddress; + } + if (null == this.auth) { + // 濡傛灉瀵嗙爜闈炵┖鐧斤紝鍒欎娇鐢ㄨ璇佹ā寮� + this.auth = (false == StrUtil.isBlank(this.pass)); + } + if (null == this.port) { + // 绔彛鍦⊿SL鐘舵�佷笅榛樿涓巗ocketFactoryPort涓�鑷达紝闈濻SL鐘舵�佷笅榛樿涓�25 + this.port = (null != this.sslEnable && this.sslEnable) ? this.socketFactoryPort : 25; + } + if (null == this.charset) { + // 榛樿UTF-8缂栫爜 + this.charset = CharsetUtil.CHARSET_UTF_8; + } - return this; - } + return this; + } - @Override - public String toString() { - return "MailAccount [host=" + host + ", port=" + port + ", auth=" + auth + ", user=" + user + ", pass=" + (StrUtil.isEmpty(this.pass) ? "" : "******") + ", from=" + from + ", startttlsEnable=" - + starttlsEnable + ", socketFactoryClass=" + socketFactoryClass + ", socketFactoryFallback=" + socketFactoryFallback + ", socketFactoryPort=" + socketFactoryPort + "]"; - } + @Override + public String toString() { + return "MailAccount [host=" + host + ", port=" + port + ", auth=" + auth + ", user=" + user + ", pass=" + (StrUtil.isEmpty(this.pass) ? "" : "******") + ", from=" + from + ", startttlsEnable=" + + starttlsEnable + ", socketFactoryClass=" + socketFactoryClass + ", socketFactoryFallback=" + socketFactoryFallback + ", socketFactoryPort=" + socketFactoryPort + "]"; + } } -- Gitblit v1.9.3