From 79d3a6bec7537aef55c237192bea1512d20665ae Mon Sep 17 00:00:00 2001 From: jinyu Date: Thu, 4 Jun 2015 22:00:38 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E6=B3=A8=E9=87=8A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../messagekey/DefaultMessageKeyDefiner.java | 5 +++ .../messagekey/WeixinMessageKeyDefiner.java | 4 +- .../startup/WeixinServerBootstrap.java | 38 +++++++++++++++++++ 3 files changed, 45 insertions(+), 2 deletions(-) diff --git a/weixin4j-server/src/main/java/com/foxinmy/weixin4j/messagekey/DefaultMessageKeyDefiner.java b/weixin4j-server/src/main/java/com/foxinmy/weixin4j/messagekey/DefaultMessageKeyDefiner.java index 8fc55c55..a1598966 100644 --- a/weixin4j-server/src/main/java/com/foxinmy/weixin4j/messagekey/DefaultMessageKeyDefiner.java +++ b/weixin4j-server/src/main/java/com/foxinmy/weixin4j/messagekey/DefaultMessageKeyDefiner.java @@ -7,6 +7,11 @@ import com.foxinmy.weixin4j.util.StringUtil; /** * 默认的messageKey实现 * + *

+ * 普通消息key=messageType.toLowerCase();
+ * 事件消息key=accountType:eventType:messageType.toLowerCase(); + *

+ * * @className DefaultMessageKeyDefiner * @author jy * @date 2015年5月18日 diff --git a/weixin4j-server/src/main/java/com/foxinmy/weixin4j/messagekey/WeixinMessageKeyDefiner.java b/weixin4j-server/src/main/java/com/foxinmy/weixin4j/messagekey/WeixinMessageKeyDefiner.java index 7372e280..2612ca85 100644 --- a/weixin4j-server/src/main/java/com/foxinmy/weixin4j/messagekey/WeixinMessageKeyDefiner.java +++ b/weixin4j-server/src/main/java/com/foxinmy/weixin4j/messagekey/WeixinMessageKeyDefiner.java @@ -5,11 +5,11 @@ import com.foxinmy.weixin4j.type.AccountType; /** * 微信消息key的定义 * - * @className WeixinMessageKey + * @className WeixinMessageKeyDefiner * @author jy * @date 2015年5月18日 * @since JDK 1.7 - * @see + * @see com.foxinmy.weixin4j.messagekey.DefaultMessageKeyDefiner */ public interface WeixinMessageKeyDefiner { diff --git a/weixin4j-server/src/main/java/com/foxinmy/weixin4j/startup/WeixinServerBootstrap.java b/weixin4j-server/src/main/java/com/foxinmy/weixin4j/startup/WeixinServerBootstrap.java index 7a8a80b4..094f6a51 100644 --- a/weixin4j-server/src/main/java/com/foxinmy/weixin4j/startup/WeixinServerBootstrap.java +++ b/weixin4j-server/src/main/java/com/foxinmy/weixin4j/startup/WeixinServerBootstrap.java @@ -22,6 +22,7 @@ import com.foxinmy.weixin4j.interceptor.WeixinMessageInterceptor; import com.foxinmy.weixin4j.messagekey.DefaultMessageKeyDefiner; import com.foxinmy.weixin4j.messagekey.WeixinMessageKeyDefiner; import com.foxinmy.weixin4j.socket.WeixinServerInitializer; +import com.foxinmy.weixin4j.type.AccountType; import com.foxinmy.weixin4j.util.AesToken; /** @@ -248,4 +249,41 @@ public final class WeixinServerBootstrap { messageDispatcher.setBeanFactory(beanFactory); return this; } + + /** + * 注册消息类型 + * + * @param messageType + * 消息类型 + * @param eventType + * 事件类型 + * @param accountType + * 账号类型 + * @param messageClass + * 消息类 + * @see com.foxinmy.weixin4j.messagekey.WeixinMessageKeyDefiner + * @return + */ + public WeixinServerBootstrap registMessageClass(String messageType, + String eventType, AccountType accountType, Class messageClass) { + messageDispatcher.registMessageMatch(messageType, eventType, + accountType, messageClass); + return this; + } + + /** + * 注册消息类型 + * + * @param messageKey + * 消息的key + * @param messageClass + * 消息类 + * @see com.foxinmy.weixin4j.messagekey.WeixinMessageKeyDefiner + * @return + */ + public WeixinServerBootstrap registMessageClass(String messageKey, + Class messageClass) { + messageDispatcher.registMessageMatch(messageKey, messageClass); + return this; + } } \ No newline at end of file