@@ -107,7 +107,7 @@ public class WxCpMessageRouter { | |||||
* @return | * @return | ||||
*/ | */ | ||||
public Rule rule() { | public Rule rule() { | ||||
return new Rule(this, wxCpService, sessionManager); | |||||
return new Rule(this); | |||||
} | } | ||||
/** | /** | ||||
@@ -143,12 +143,12 @@ public class WxCpMessageRouter { | |||||
futures.add( | futures.add( | ||||
executorService.submit(new Runnable() { | executorService.submit(new Runnable() { | ||||
public void run() { | public void run() { | ||||
rule.service(wxMessage); | |||||
rule.service(wxMessage, wxCpService, sessionManager); | |||||
} | } | ||||
}) | }) | ||||
); | ); | ||||
} else { | } else { | ||||
res = rule.service(wxMessage); | |||||
res = rule.service(wxMessage, wxCpService, sessionManager); | |||||
// 在同步操作结束,session访问结束 | // 在同步操作结束,session访问结束 | ||||
log.debug("End session access: async=false, sessionId={}", wxMessage.getFromUserName()); | log.debug("End session access: async=false, sessionId={}", wxMessage.getFromUserName()); | ||||
sessionEndAccess(wxMessage); | sessionEndAccess(wxMessage); | ||||
@@ -214,10 +214,6 @@ public class WxCpMessageRouter { | |||||
private final WxCpMessageRouter routerBuilder; | private final WxCpMessageRouter routerBuilder; | ||||
private final WxCpService wxCpService; | |||||
private final WxSessionManager sessionManager; | |||||
private boolean async = true; | private boolean async = true; | ||||
private String fromUser; | private String fromUser; | ||||
@@ -240,10 +236,8 @@ public class WxCpMessageRouter { | |||||
private List<WxCpMessageInterceptor> interceptors = new ArrayList<WxCpMessageInterceptor>(); | private List<WxCpMessageInterceptor> interceptors = new ArrayList<WxCpMessageInterceptor>(); | ||||
protected Rule(WxCpMessageRouter routerBuilder, WxCpService wxCpService, WxSessionManager sessionManager) { | |||||
protected Rule(WxCpMessageRouter routerBuilder) { | |||||
this.routerBuilder = routerBuilder; | this.routerBuilder = routerBuilder; | ||||
this.wxCpService = wxCpService; | |||||
this.sessionManager = sessionManager; | |||||
} | } | ||||
/** | /** | ||||
@@ -417,7 +411,7 @@ public class WxCpMessageRouter { | |||||
* @param wxMessage | * @param wxMessage | ||||
* @return true 代表继续执行别的router,false 代表停止执行别的router | * @return true 代表继续执行别的router,false 代表停止执行别的router | ||||
*/ | */ | ||||
protected WxCpXmlOutMessage service(WxCpXmlMessage wxMessage) { | |||||
protected WxCpXmlOutMessage service(WxCpXmlMessage wxMessage, WxCpService wxCpService, WxSessionManager sessionManager) { | |||||
Map<String, Object> context = new HashMap<String, Object>(); | Map<String, Object> context = new HashMap<String, Object>(); | ||||
// 如果拦截器不通过 | // 如果拦截器不通过 | ||||
for (WxCpMessageInterceptor interceptor : this.interceptors) { | for (WxCpMessageInterceptor interceptor : this.interceptors) { | ||||
@@ -106,7 +106,7 @@ public class WxMpMessageRouter { | |||||
* @return | * @return | ||||
*/ | */ | ||||
public Rule rule() { | public Rule rule() { | ||||
return new Rule(this, wxMpService, sessionManager); | |||||
return new Rule(this); | |||||
} | } | ||||
/** | /** | ||||
@@ -142,12 +142,12 @@ public class WxMpMessageRouter { | |||||
futures.add( | futures.add( | ||||
executorService.submit(new Runnable() { | executorService.submit(new Runnable() { | ||||
public void run() { | public void run() { | ||||
rule.service(wxMessage); | |||||
rule.service(wxMessage, wxMpService, sessionManager); | |||||
} | } | ||||
}) | }) | ||||
); | ); | ||||
} else { | } else { | ||||
res = rule.service(wxMessage); | |||||
res = rule.service(wxMessage, wxMpService, sessionManager); | |||||
// 在同步操作结束,session访问结束 | // 在同步操作结束,session访问结束 | ||||
log.debug("End session access: async=false, sessionId={}", wxMessage.getFromUserName()); | log.debug("End session access: async=false, sessionId={}", wxMessage.getFromUserName()); | ||||
sessionEndAccess(wxMessage); | sessionEndAccess(wxMessage); | ||||
@@ -212,10 +212,6 @@ public class WxMpMessageRouter { | |||||
private final WxMpMessageRouter routerBuilder; | private final WxMpMessageRouter routerBuilder; | ||||
private final WxMpService wxMpService; | |||||
private final WxSessionManager sessionManager; | |||||
private boolean async = true; | private boolean async = true; | ||||
private String fromUser; | private String fromUser; | ||||
@@ -236,10 +232,8 @@ public class WxMpMessageRouter { | |||||
private List<WxMpMessageInterceptor> interceptors = new ArrayList<WxMpMessageInterceptor>(); | private List<WxMpMessageInterceptor> interceptors = new ArrayList<WxMpMessageInterceptor>(); | ||||
protected Rule(WxMpMessageRouter routerBuilder, WxMpService wxMpService, WxSessionManager sessionManager) { | |||||
protected Rule(WxMpMessageRouter routerBuilder) { | |||||
this.routerBuilder = routerBuilder; | this.routerBuilder = routerBuilder; | ||||
this.wxMpService = wxMpService; | |||||
this.sessionManager = sessionManager; | |||||
} | } | ||||
/** | /** | ||||
@@ -401,7 +395,7 @@ public class WxMpMessageRouter { | |||||
* @param wxMessage | * @param wxMessage | ||||
* @return true 代表继续执行别的router,false 代表停止执行别的router | * @return true 代表继续执行别的router,false 代表停止执行别的router | ||||
*/ | */ | ||||
protected WxMpXmlOutMessage service(WxMpXmlMessage wxMessage) { | |||||
protected WxMpXmlOutMessage service(WxMpXmlMessage wxMessage, WxMpService wxMpService, WxSessionManager sessionManager) { | |||||
Map<String, Object> context = new HashMap<String, Object>(); | Map<String, Object> context = new HashMap<String, Object>(); | ||||
// 如果拦截器不通过 | // 如果拦截器不通过 | ||||
for (WxMpMessageInterceptor interceptor : this.interceptors) { | for (WxMpMessageInterceptor interceptor : this.interceptors) { | ||||