weixin4j-server:优化代码&添加注释

This commit is contained in:
jinyu 2015-05-19 08:30:20 +08:00
parent 5a7b729873
commit f6793fbf51
9 changed files with 20 additions and 16 deletions

View File

@ -107,7 +107,7 @@ assembly打包(辅助)
<descriptors>
<descriptor>src/main/assembly.xml</descriptor>
</descriptors>
<finalName>weixin-server</finalName>
<finalName>weixin4j-server</finalName>
</configuration>
<executions>
<execution>

View File

@ -2,11 +2,11 @@
<project name="weixin-server" default="deploy" basedir=".">
<property name="app.home" value="." />
<property name="target.home" value="${app.home}/target" />
<property name="zip.name" value="assembly打包后的文件名,如weixin-server-bin.zip" />
<property name="zip.name" value="assembly打包后的文件名,如weixin4j-server-bin.zip" />
<property name="host" value="服务器IP" />
<property name="pwd" value="服务器口令" />
<property name="main.dir" value="服务部署的主目录,如/usr/local/weixin" />
<property name="sub.dir" value="服务部署的子目录,如weixin-server" />
<property name="sub.dir" value="服务部署的子目录,如weixin4j-server" />
<target name="removeZip">
<echo>

View File

@ -127,6 +127,8 @@ public class WeixinMessageDispatcher {
if (targetClass != null) {
message = messageRead(request.getOriginalContent(), targetClass);
}
logger.info("define [{}] messageKey matched [{}] unmarshal to {}",
messageKey, targetClass, message);
MessageHandlerExecutor handlerExecutor = getHandlerExecutor(context,
request, messageKey, message);
if (handlerExecutor == null
@ -141,9 +143,6 @@ public class WeixinMessageDispatcher {
try {
WeixinResponse response = handlerExecutor.getMessageHandler()
.doHandle(request, message);
logger.info(
"\n=================message response=================\n{}",
response);
handlerExecutor.applyPostHandle(request, response, message);
context.write(response);
} catch (WeixinException e) {

View File

@ -1,6 +1,7 @@
package com.foxinmy.weixin4j.messagekey;
import com.foxinmy.weixin4j.type.AccountType;
import com.foxinmy.weixin4j.type.MessageType;
import com.foxinmy.weixin4j.util.StringUtil;
/**
@ -22,6 +23,9 @@ public class DefaultMessageKeyDefiner implements WeixinMessageKeyDefiner {
StringBuilder messageKey = new StringBuilder();
if (!StringUtil.isBlank(messageType)) {
messageKey.append(messageType.toLowerCase());
if (!messageType.trim().equalsIgnoreCase(MessageType.event.name())) {
return messageKey.toString();
}
}
if (accountType != null) {
messageKey.insert(0, String.format("%s%s", accountType.name()

View File

@ -47,10 +47,8 @@ public class WeixinMessageDecoder extends
String content = req.content().toString(Consts.UTF_8);
QueryStringDecoder queryDecoder = new QueryStringDecoder(req.getUri(),
true);
logger.info("\n=================receive request=================");
logger.info("{}", req.getMethod());
logger.info("{}", req.getUri());
logger.info("{}", content);
logger.info("decode request:{} use {} method invoking", req.getUri(),
req.getMethod().name());
Map<String, List<String>> parameters = queryDecoder.parameters();
EncryptType encryptType = parameters.containsKey("encrypt_type") ? EncryptType
.valueOf(parameters.get("encrypt_type").get(0).toUpperCase())

View File

@ -56,8 +56,6 @@ public class WeixinRequestHandler extends
@Override
protected void channelRead0(ChannelHandlerContext ctx, WeixinRequest request)
throws WeixinException {
logger.info("\n=================message request=================\n{}",
request);
if (request.getMethod().equals(HttpMethod.GET.name())) {
if (MessageUtil.signature(aesToken.getToken(),
request.getTimeStamp(), request.getNonce()).equals(

View File

@ -94,7 +94,6 @@ public class WeixinResponseEncoder extends
}
ctx.writeAndFlush(HttpUtil.createHttpResponse(content.toString(), OK,
Consts.CONTENTTYPE$APPLICATION_XML));
logger.info("\n=================response message=================");
logger.info("{}", content);
logger.info("{} encode response:{}", encryptType, content);
}
}

View File

@ -7,6 +7,8 @@ import io.netty.channel.EventLoopGroup;
import io.netty.channel.nio.NioEventLoopGroup;
import io.netty.channel.socket.nio.NioServerSocketChannel;
import io.netty.handler.logging.LoggingHandler;
import io.netty.util.internal.logging.InternalLogger;
import io.netty.util.internal.logging.InternalLoggerFactory;
import java.util.Arrays;
import java.util.LinkedList;
@ -36,6 +38,9 @@ import com.foxinmy.weixin4j.util.AesToken;
*/
public final class WeixinServerBootstrap {
private final InternalLogger logger = InternalLoggerFactory
.getInstance(getClass());
/**
* 默认boss线程数,一般设置为cpu的核数
*/
@ -141,6 +146,7 @@ public final class WeixinServerBootstrap {
messageDispatcher));
Channel ch = b.bind(serverPort).sync().channel();
System.err.println("weixin4j server startup OK:" + serverPort);
logger.info("weixin4j server startup OK:{}", serverPort);
ch.closeFuture().sync();
} catch (WeixinException e) {
throw e;

View File

@ -6,10 +6,10 @@ JAVA_HOME="/usr/local/java/"
RUNNING_USER=root
#Run home
APP_HOME="/usr/local/weixin/weixin-server"
APP_HOME="/usr/local/weixin/weixin4j-server"
#main class
APP_MAINCLASS=netty服务启动类
APP_MAINCLASS=微信服务启动类
#classpath
CLASSPATH=$APP_HOME/classes