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