diff --git a/notify-core/src/main/java/com/cicdi/notify/util/StringUtils.java b/notify-core/src/main/java/com/cicdi/notify/util/StringUtils.java new file mode 100644 index 0000000..bfe6236 --- /dev/null +++ b/notify-core/src/main/java/com/cicdi/notify/util/StringUtils.java @@ -0,0 +1,33 @@ +package com.cicdi.notify.util; + +/** + * @author Yaser Hsueh + */ +public abstract class StringUtils { + + public static boolean isEmpty(Object str) { + return (str == null || "".equals(str)); + } + + public static boolean hasLength(CharSequence str) { + return (str != null && str.length() > 0); + } + + public static boolean hasLength(String str) { + return (str != null && !str.isEmpty()); + } + + public static boolean isBlank(String str) { + int strLen; + if (str == null || (strLen = str.length()) == 0) { + return true; + } + for (int i = 0; i < strLen; i++) { + if ((!Character.isWhitespace(str.charAt(i)))) { + return false; + } + } + return true; + } + +} diff --git a/notify-email/pom.xml b/notify-email/pom.xml index 7db5059..43555df 100644 --- a/notify-email/pom.xml +++ b/notify-email/pom.xml @@ -29,12 +29,6 @@ provided - - org.springframework - spring-web - provided - - com.alibaba fastjson diff --git a/notify-email/src/main/java/com/cicdi/notify/email/embedded/DefaultEmailNotifier.java b/notify-email/src/main/java/com/cicdi/notify/email/embedded/DefaultEmailNotifier.java index 6ef1e08..715550d 100644 --- a/notify-email/src/main/java/com/cicdi/notify/email/embedded/DefaultEmailNotifier.java +++ b/notify-email/src/main/java/com/cicdi/notify/email/embedded/DefaultEmailNotifier.java @@ -6,6 +6,7 @@ import com.cicdi.notify.email.EmailProvider; import com.cicdi.notify.email.EmailTemplate; import com.cicdi.notify.email.EmailTemplateParsed; import com.cicdi.notify.util.ExpressionUtils; +import com.cicdi.notify.util.StringUtils; import org.apache.http.HttpHeaders; import org.apache.http.HttpResponse; import org.apache.http.client.HttpClient; @@ -19,7 +20,6 @@ import org.springframework.core.io.InputStreamSource; import org.springframework.mail.javamail.JavaMailSender; import org.springframework.mail.javamail.JavaMailSenderImpl; import org.springframework.mail.javamail.MimeMessageHelper; -import org.springframework.util.StringUtils; import javax.mail.MessagingException; import javax.mail.internet.MimeMessage; diff --git a/notify-email/src/test/java/com/cicdi/notify/email/DefaultEmailTest.java b/notify-email/src/test/java/com/cicdi/notify/email/DefaultEmailTest.java index e0a1635..68a3ef0 100644 --- a/notify-email/src/test/java/com/cicdi/notify/email/DefaultEmailTest.java +++ b/notify-email/src/test/java/com/cicdi/notify/email/DefaultEmailTest.java @@ -23,31 +23,28 @@ public class DefaultEmailTest { @Test public void testSend() { // 通知器配置管理器 - NotifyConfigManager notifyConfigManager = new NotifyConfigManager() { - @Override - public NotifierProperties getNotifyConfig(NotifyType notifyType, String configId) { - NotifierProperties notifierProperties = new NotifierProperties(); - notifierProperties.setType(DefaultNotifyType.email.getId()); - notifierProperties.setProvider(EmailProvider.embedded.getId()); - notifierProperties.setId("12"); + NotifyConfigManager notifyConfigManager = (notifyType, configId) -> { + NotifierProperties notifierProperties = new NotifierProperties(); + notifierProperties.setType(DefaultNotifyType.email.getId()); + notifierProperties.setProvider(EmailProvider.embedded.getId()); + notifierProperties.setId("12"); - Map config = new HashMap<>(); + Map config = new HashMap<>(); - config.put("host", "nas.xueye.io"); - config.put("port", 587); - config.put("username", "xueye"); - config.put("password", "snow@PX1314"); - config.put("sender", "master@simaek.com"); - Map p1 = new HashMap<>(); - p1.put("name", "mail.smtp.starttls.enable"); - p1.put("value", "true"); - Map p2 = new HashMap<>(); - p2.put("name", "mail.smtp.auth"); - p2.put("value", "true"); - config.put("properties", Arrays.asList(p1, p2)); - notifierProperties.setConfiguration(config); - return notifierProperties; - } + config.put("host", "nas.xueye.io"); + config.put("port", 587); + config.put("username", "xueye"); + config.put("password", "snow@PX1314"); + config.put("sender", "master@simaek.com"); + Map p1 = new HashMap<>(); + p1.put("name", "mail.smtp.starttls.enable"); + p1.put("value", "true"); + Map p2 = new HashMap<>(); + p2.put("name", "mail.smtp.auth"); + p2.put("value", "true"); + config.put("properties", Arrays.asList(p1, p2)); + notifierProperties.setConfiguration(config); + return notifierProperties; }; // 模板管理器 diff --git a/notify-wechat/pom.xml b/notify-wechat/pom.xml index 0655c81..488d1e5 100644 --- a/notify-wechat/pom.xml +++ b/notify-wechat/pom.xml @@ -33,11 +33,6 @@ httpclient - - commons-lang - commons-lang - - \ No newline at end of file diff --git a/notify-wechat/src/main/java/com/cicdi/notify/wechat/corp/WechatCorpTemplate.java b/notify-wechat/src/main/java/com/cicdi/notify/wechat/corp/WechatCorpTemplate.java index 359d6cb..671abd6 100644 --- a/notify-wechat/src/main/java/com/cicdi/notify/wechat/corp/WechatCorpTemplate.java +++ b/notify-wechat/src/main/java/com/cicdi/notify/wechat/corp/WechatCorpTemplate.java @@ -2,7 +2,7 @@ package com.cicdi.notify.wechat.corp; import com.alibaba.fastjson.JSONObject; import com.cicdi.notify.template.Template; -import org.apache.commons.lang.StringUtils; +import com.cicdi.notify.util.StringUtils; import java.util.Collections; import java.util.Map; @@ -68,10 +68,10 @@ public class WechatCorpTemplate implements Template { json.put("msgtype", "text"); json.put("text", Collections.singletonMap("content", message)); - if (StringUtils.isNotBlank(toUser)) { + if (!StringUtils.isBlank(toUser)) { json.put("touser", this.createUserIdList(context)); } - if (StringUtils.isNotBlank(toParty)) { + if (!StringUtils.isBlank(toParty)) { json.put("toparty", this.createDepartmentIdList(context)); } diff --git a/pom.xml b/pom.xml index 184b57f..f7213ad 100644 --- a/pom.xml +++ b/pom.xml @@ -76,12 +76,6 @@ test - - commons-lang - commons-lang - 2.6 - - org.apache.httpcomponents httpclient @@ -118,6 +112,12 @@ 1.6.7 + + com.squareup.okhttp3 + okhttp + 4.9.3 + +