From 7eeceef2c1a42b5a851966283d6850f339b6c5f1 Mon Sep 17 00:00:00 2001 From: Binary Wang Date: Sat, 23 Mar 2019 19:01:58 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=E9=83=A8=E5=88=86=E4=BB=A3?= =?UTF-8?q?=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../me/chanjar/weixin/mp/api/WxMpService.java | 3 +- .../mp/api/impl/BaseWxMpServiceImpl.java | 33 ++++++++----------- 2 files changed, 16 insertions(+), 20 deletions(-) diff --git a/weixin-java-mp/src/main/java/me/chanjar/weixin/mp/api/WxMpService.java b/weixin-java-mp/src/main/java/me/chanjar/weixin/mp/api/WxMpService.java index 307ab0dc..01faeb84 100644 --- a/weixin-java-mp/src/main/java/me/chanjar/weixin/mp/api/WxMpService.java +++ b/weixin-java-mp/src/main/java/me/chanjar/weixin/mp/api/WxMpService.java @@ -13,6 +13,7 @@ import me.chanjar.weixin.mp.bean.result.WxMpUser; import me.chanjar.weixin.mp.enums.TicketType; import java.util.HashMap; +import java.util.Map; /** * 微信公众号API的Service. @@ -312,7 +313,7 @@ public interface WxMpService { * 注入多个 {@link WxMpConfigStorage} 的实现. 并为每个 {@link WxMpConfigStorage} 赋予不同的 {@link String label} 值 * @return */ - void setMultiWxMpConfigStorage(HashMap configStorages); + void setMultiWxMpConfigStorage(Map configStorages); /** * 进行相应的 WxApp 切换 diff --git a/weixin-java-mp/src/main/java/me/chanjar/weixin/mp/api/impl/BaseWxMpServiceImpl.java b/weixin-java-mp/src/main/java/me/chanjar/weixin/mp/api/impl/BaseWxMpServiceImpl.java index a5f163b4..1a313def 100644 --- a/weixin-java-mp/src/main/java/me/chanjar/weixin/mp/api/impl/BaseWxMpServiceImpl.java +++ b/weixin-java-mp/src/main/java/me/chanjar/weixin/mp/api/impl/BaseWxMpServiceImpl.java @@ -1,15 +1,5 @@ package me.chanjar.weixin.mp.api.impl; -import java.io.IOException; -import java.util.HashMap; -import java.util.concurrent.locks.Lock; - -import me.chanjar.weixin.mp.api.*; -import me.chanjar.weixin.mp.util.WxMpConfigStorageHolder; -import org.apache.commons.lang3.StringUtils; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - import com.google.gson.JsonArray; import com.google.gson.JsonElement; import com.google.gson.JsonObject; @@ -22,17 +12,22 @@ import me.chanjar.weixin.common.session.WxSessionManager; import me.chanjar.weixin.common.util.DataUtils; import me.chanjar.weixin.common.util.RandomUtils; import me.chanjar.weixin.common.util.crypto.SHA1; -import me.chanjar.weixin.common.util.http.RequestExecutor; -import me.chanjar.weixin.common.util.http.RequestHttp; -import me.chanjar.weixin.common.util.http.SimpleGetRequestExecutor; -import me.chanjar.weixin.common.util.http.SimplePostRequestExecutor; -import me.chanjar.weixin.common.util.http.URIUtil; +import me.chanjar.weixin.common.util.http.*; +import me.chanjar.weixin.mp.api.*; import me.chanjar.weixin.mp.bean.WxMpSemanticQuery; import me.chanjar.weixin.mp.bean.result.WxMpCurrentAutoReplyInfo; import me.chanjar.weixin.mp.bean.result.WxMpOAuth2AccessToken; import me.chanjar.weixin.mp.bean.result.WxMpSemanticQueryResult; import me.chanjar.weixin.mp.bean.result.WxMpUser; import me.chanjar.weixin.mp.enums.TicketType; +import me.chanjar.weixin.mp.util.WxMpConfigStorageHolder; +import org.apache.commons.lang3.StringUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import java.io.IOException; +import java.util.Map; +import java.util.concurrent.locks.Lock; /** * 基础实现类. @@ -66,7 +61,7 @@ public abstract class BaseWxMpServiceImpl implements WxMpService, RequestH private WxMpWifiService wifiService = new WxMpWifiServiceImpl(this); private WxMpMarketingService marketingService = new WxMpMarketingServiceImpl(this); - private HashMap wxMpConfigStoragePool; + private Map wxMpConfigStoragePool; private boolean isMultiWxApp = false; private int retrySleepMillis = 1000; @@ -340,9 +335,9 @@ public abstract class BaseWxMpServiceImpl implements WxMpService, RequestH @Override public WxMpConfigStorage getWxMpConfigStorage() { if (isMultiWxApp) { - String label = WxMpConfigStorageHolder.get(); - return wxMpConfigStoragePool.getOrDefault(label, null); + return wxMpConfigStoragePool.get(WxMpConfigStorageHolder.get()); } + return this.wxMpConfigStorage; } @@ -353,7 +348,7 @@ public abstract class BaseWxMpServiceImpl implements WxMpService, RequestH } @Override - public void setMultiWxMpConfigStorage(HashMap configStorages) { + public void setMultiWxMpConfigStorage(Map configStorages) { wxMpConfigStoragePool = configStorages; isMultiWxApp = true; this.initHttp();