mirror of
				https://gitee.com/binary/weixin-java-tools.git
				synced 2025-11-01 03:25:35 +08:00 
			
		
		
		
	规范部分代码
This commit is contained in:
		| @ -23,9 +23,6 @@ package me.chanjar.weixin.common.session; | |||||||
|  * |  * | ||||||
|  * @author Craig R. McClanahan |  * @author Craig R. McClanahan | ||||||
|  */ |  */ | ||||||
|  |  | ||||||
| public class Constants { | public class Constants { | ||||||
|  |   public static final String PACKAGE = "me.chanjar.weixin.common.session"; | ||||||
|   public static final String Package = "me.chanjar.weixin.common.session"; |  | ||||||
|  |  | ||||||
| } | } | ||||||
|  | |||||||
| @ -11,13 +11,12 @@ public class StandardSession implements WxSession, InternalSession { | |||||||
|   /** |   /** | ||||||
|    * The string manager for this package. |    * The string manager for this package. | ||||||
|    */ |    */ | ||||||
|   protected static final StringManager sm = StringManager.getManager(Constants.Package); |   protected static final StringManager SM = StringManager.getManager(Constants.PACKAGE); | ||||||
|   /** |   /** | ||||||
|    * Type array. |    * Type array. | ||||||
|    */ |    */ | ||||||
|   private static final String[] EMPTY_ARRAY = new String[0]; |   private static final String[] EMPTY_ARRAY = new String[0]; | ||||||
|  |  | ||||||
|   // ------------------------------ WxSession |  | ||||||
|   protected Map<String, Object> attributes = new ConcurrentHashMap<>(); |   protected Map<String, Object> attributes = new ConcurrentHashMap<>(); | ||||||
|   /** |   /** | ||||||
|    * The session identifier of this Session. |    * The session identifier of this Session. | ||||||
| @ -73,7 +72,7 @@ public class StandardSession implements WxSession, InternalSession { | |||||||
|  |  | ||||||
|     if (!isValidInternal()) { |     if (!isValidInternal()) { | ||||||
|       throw new IllegalStateException |       throw new IllegalStateException | ||||||
|         (sm.getString("sessionImpl.getAttribute.ise")); |         (SM.getString("sessionImpl.getAttribute.ise")); | ||||||
|     } |     } | ||||||
|  |  | ||||||
|     if (name == null) { |     if (name == null) { | ||||||
| @ -86,7 +85,7 @@ public class StandardSession implements WxSession, InternalSession { | |||||||
|   @Override |   @Override | ||||||
|   public Enumeration<String> getAttributeNames() { |   public Enumeration<String> getAttributeNames() { | ||||||
|     if (!isValidInternal()) { |     if (!isValidInternal()) { | ||||||
|       throw new IllegalStateException(sm.getString("sessionImpl.getAttributeNames.ise")); |       throw new IllegalStateException(SM.getString("sessionImpl.getAttributeNames.ise")); | ||||||
|     } |     } | ||||||
|  |  | ||||||
|     Set<String> names = new HashSet<>(); |     Set<String> names = new HashSet<>(); | ||||||
| @ -98,7 +97,7 @@ public class StandardSession implements WxSession, InternalSession { | |||||||
|   public void setAttribute(String name, Object value) { |   public void setAttribute(String name, Object value) { | ||||||
|     // Name cannot be null |     // Name cannot be null | ||||||
|     if (name == null) { |     if (name == null) { | ||||||
|       throw new IllegalArgumentException(sm.getString("sessionImpl.setAttribute.namenull")); |       throw new IllegalArgumentException(SM.getString("sessionImpl.setAttribute.namenull")); | ||||||
|     } |     } | ||||||
|  |  | ||||||
|     // Null value is the same as removeAttribute() |     // Null value is the same as removeAttribute() | ||||||
| @ -109,7 +108,7 @@ public class StandardSession implements WxSession, InternalSession { | |||||||
|  |  | ||||||
|     // Validate our current state |     // Validate our current state | ||||||
|     if (!isValidInternal()) { |     if (!isValidInternal()) { | ||||||
|       throw new IllegalStateException(sm.getString("sessionImpl.setAttribute.ise", getIdInternal())); |       throw new IllegalStateException(SM.getString("sessionImpl.setAttribute.ise", getIdInternal())); | ||||||
|     } |     } | ||||||
|  |  | ||||||
|     this.attributes.put(name, value); |     this.attributes.put(name, value); | ||||||
| @ -123,8 +122,9 @@ public class StandardSession implements WxSession, InternalSession { | |||||||
|  |  | ||||||
|   @Override |   @Override | ||||||
|   public void invalidate() { |   public void invalidate() { | ||||||
|     if (!isValidInternal()) |     if (!isValidInternal()) { | ||||||
|       throw new IllegalStateException(sm.getString("sessionImpl.invalidate.ise")); |       throw new IllegalStateException(SM.getString("sessionImpl.invalidate.ise")); | ||||||
|  |     } | ||||||
|  |  | ||||||
|     // Cause this session to expire |     // Cause this session to expire | ||||||
|     expire(); |     expire(); | ||||||
|  | |||||||
| @ -13,8 +13,7 @@ import java.util.concurrent.atomic.AtomicBoolean; | |||||||
|  */ |  */ | ||||||
| public class StandardSessionManager implements WxSessionManager, InternalSessionManager { | public class StandardSessionManager implements WxSessionManager, InternalSessionManager { | ||||||
|  |  | ||||||
|   protected static final StringManager sm = |   protected static final StringManager SM = StringManager.getManager(Constants.PACKAGE); | ||||||
|     StringManager.getManager(Constants.Package); |  | ||||||
|   /** |   /** | ||||||
|    * The descriptive name of this Manager implementation (for logging). |    * The descriptive name of this Manager implementation (for logging). | ||||||
|    */ |    */ | ||||||
| @ -82,7 +81,7 @@ public class StandardSessionManager implements WxSessionManager, InternalSession | |||||||
|   public WxSession getSession(String sessionId, boolean create) { |   public WxSession getSession(String sessionId, boolean create) { | ||||||
|     if (sessionId == null) { |     if (sessionId == null) { | ||||||
|       throw new IllegalStateException |       throw new IllegalStateException | ||||||
|         (sm.getString("sessionManagerImpl.getSession.ise")); |         (SM.getString("sessionManagerImpl.getSession.ise")); | ||||||
|     } |     } | ||||||
|  |  | ||||||
|     InternalSession session = findSession(sessionId); |     InternalSession session = findSession(sessionId); | ||||||
| @ -124,25 +123,24 @@ public class StandardSessionManager implements WxSessionManager, InternalSession | |||||||
|  |  | ||||||
|   @Override |   @Override | ||||||
|   public InternalSession findSession(String id) { |   public InternalSession findSession(String id) { | ||||||
|  |     if (id == null) { | ||||||
|     if (id == null) |  | ||||||
|       return (null); |       return (null); | ||||||
|  |     } | ||||||
|     return this.sessions.get(id); |     return this.sessions.get(id); | ||||||
|  |  | ||||||
|   } |   } | ||||||
|  |  | ||||||
|   @Override |   @Override | ||||||
|   public InternalSession createSession(String sessionId) { |   public InternalSession createSession(String sessionId) { | ||||||
|     if (sessionId == null) { |     if (sessionId == null) { | ||||||
|       throw new IllegalStateException |       throw new IllegalStateException | ||||||
|         (sm.getString("sessionManagerImpl.createSession.ise")); |         (SM.getString("sessionManagerImpl.createSession.ise")); | ||||||
|     } |     } | ||||||
|  |  | ||||||
|     if ((this.maxActiveSessions >= 0) && |     if ((this.maxActiveSessions >= 0) && | ||||||
|       (getActiveSessions() >= this.maxActiveSessions)) { |       (getActiveSessions() >= this.maxActiveSessions)) { | ||||||
|       this.rejectedSessions++; |       this.rejectedSessions++; | ||||||
|       throw new TooManyActiveSessionsException( |       throw new TooManyActiveSessionsException( | ||||||
|         sm.getString("sessionManagerImpl.createSession.tmase"), |         SM.getString("sessionManagerImpl.createSession.tmase"), | ||||||
|         this.maxActiveSessions); |         this.maxActiveSessions); | ||||||
|     } |     } | ||||||
|  |  | ||||||
| @ -230,8 +228,9 @@ public class StandardSessionManager implements WxSessionManager, InternalSession | |||||||
|   @Override |   @Override | ||||||
|   public void backgroundProcess() { |   public void backgroundProcess() { | ||||||
|     this.count = (this.count + 1) % this.processExpiresFrequency; |     this.count = (this.count + 1) % this.processExpiresFrequency; | ||||||
|     if (this.count == 0) |     if (this.count == 0) { | ||||||
|       processExpires(); |       processExpires(); | ||||||
|  |     } | ||||||
|   } |   } | ||||||
|  |  | ||||||
|   /** |   /** | ||||||
| @ -243,16 +242,18 @@ public class StandardSessionManager implements WxSessionManager, InternalSession | |||||||
|     InternalSession sessions[] = findSessions(); |     InternalSession sessions[] = findSessions(); | ||||||
|     int expireHere = 0; |     int expireHere = 0; | ||||||
|  |  | ||||||
|     if (this.log.isDebugEnabled()) |     if (this.log.isDebugEnabled()) { | ||||||
|       this.log.debug("Start expire sessions {} at {} sessioncount {}", getName(), timeNow, sessions.length); |       this.log.debug("Start expire sessions {} at {} sessioncount {}", getName(), timeNow, sessions.length); | ||||||
|     for (int i = 0; i < sessions.length; i++) { |     } | ||||||
|       if (sessions[i] != null && !sessions[i].isValid()) { |     for (InternalSession session : sessions) { | ||||||
|  |       if (session != null && !session.isValid()) { | ||||||
|         expireHere++; |         expireHere++; | ||||||
|       } |       } | ||||||
|     } |     } | ||||||
|     long timeEnd = System.currentTimeMillis(); |     long timeEnd = System.currentTimeMillis(); | ||||||
|     if (this.log.isDebugEnabled()) |     if (this.log.isDebugEnabled()) { | ||||||
|       this.log.debug("End expire sessions {} processingTime {} expired sessions: {}", getName(), timeEnd - timeNow, expireHere); |       this.log.debug("End expire sessions {} processingTime {} expired sessions: {}", getName(), timeEnd - timeNow, expireHere); | ||||||
|  |     } | ||||||
|     this.processingTime += (timeEnd - timeNow); |     this.processingTime += (timeEnd - timeNow); | ||||||
|  |  | ||||||
|   } |   } | ||||||
|  | |||||||
| @ -28,10 +28,10 @@ import java.util.Random; | |||||||
|  */ |  */ | ||||||
| public class WxCryptUtil { | public class WxCryptUtil { | ||||||
|  |  | ||||||
|   private static final Base64 base64 = new Base64(); |   private static final Base64 BASE64 = new Base64(); | ||||||
|   private static final Charset CHARSET = StandardCharsets.UTF_8; |   private static final Charset CHARSET = StandardCharsets.UTF_8; | ||||||
|  |  | ||||||
|   private static final ThreadLocal<DocumentBuilder> builderLocal = new ThreadLocal<DocumentBuilder>() { |   private static final ThreadLocal<DocumentBuilder> BUILDER_LOCAL = new ThreadLocal<DocumentBuilder>() { | ||||||
|     @Override |     @Override | ||||||
|     protected DocumentBuilder initialValue() { |     protected DocumentBuilder initialValue() { | ||||||
|       try { |       try { | ||||||
| @ -65,7 +65,7 @@ public class WxCryptUtil { | |||||||
|  |  | ||||||
|   static String extractEncryptPart(String xml) { |   static String extractEncryptPart(String xml) { | ||||||
|     try { |     try { | ||||||
|       DocumentBuilder db = builderLocal.get(); |       DocumentBuilder db = BUILDER_LOCAL.get(); | ||||||
|       Document document = db.parse(new InputSource(new StringReader(xml))); |       Document document = db.parse(new InputSource(new StringReader(xml))); | ||||||
|  |  | ||||||
|       Element root = document.getDocumentElement(); |       Element root = document.getDocumentElement(); | ||||||
| @ -192,7 +192,7 @@ public class WxCryptUtil { | |||||||
|       byte[] encrypted = cipher.doFinal(unencrypted); |       byte[] encrypted = cipher.doFinal(unencrypted); | ||||||
|  |  | ||||||
|       // 使用BASE64对加密后的字符串进行编码 |       // 使用BASE64对加密后的字符串进行编码 | ||||||
|       return base64.encodeToString(encrypted); |       return BASE64.encodeToString(encrypted); | ||||||
|     } catch (Exception e) { |     } catch (Exception e) { | ||||||
|       throw new RuntimeException(e); |       throw new RuntimeException(e); | ||||||
|     } |     } | ||||||
|  | |||||||
| @ -4,5 +4,16 @@ package me.chanjar.weixin.common.util.http; | |||||||
|  * Created by ecoolper on 2017/4/28. |  * Created by ecoolper on 2017/4/28. | ||||||
|  */ |  */ | ||||||
| public enum HttpType { | public enum HttpType { | ||||||
|   JODD_HTTP, APACHE_HTTP, OK_HTTP; |   /** | ||||||
|  |    * jodd-http. | ||||||
|  |    */ | ||||||
|  |   JODD_HTTP, | ||||||
|  |   /** | ||||||
|  |    * apache httpclient. | ||||||
|  |    */ | ||||||
|  |   APACHE_HTTP, | ||||||
|  |   /** | ||||||
|  |    * okhttp. | ||||||
|  |    */ | ||||||
|  |   OK_HTTP | ||||||
| } | } | ||||||
|  | |||||||
| @ -46,8 +46,7 @@ import java.util.*; | |||||||
|  */ |  */ | ||||||
| public class StringManager { | public class StringManager { | ||||||
|  |  | ||||||
|   private static final Map<String, Map<Locale, StringManager>> managers = |   private static final Map<String, Map<Locale, StringManager>> MANAGERS = new Hashtable<>(); | ||||||
|     new Hashtable<>(); |  | ||||||
|   private static int LOCALE_CACHE_SIZE = 10; |   private static int LOCALE_CACHE_SIZE = 10; | ||||||
|   /** |   /** | ||||||
|    * The ResourceBundle for this StringManager. |    * The ResourceBundle for this StringManager. | ||||||
| @ -118,16 +117,16 @@ public class StringManager { | |||||||
|   public static final synchronized StringManager getManager( |   public static final synchronized StringManager getManager( | ||||||
|     String packageName, Locale locale) { |     String packageName, Locale locale) { | ||||||
|  |  | ||||||
|     Map<Locale, StringManager> map = managers.get(packageName); |     Map<Locale, StringManager> map = MANAGERS.get(packageName); | ||||||
|     if (map == null) { |     if (map == null) { | ||||||
|             /* |       /* | ||||||
|              * Don't want the HashMap to be expanded beyond LOCALE_CACHE_SIZE. |        * Don't want the HashMap to be expanded beyond LOCALE_CACHE_SIZE. | ||||||
|              * Expansion occurs when size() exceeds capacity. Therefore keep |        * Expansion occurs when size() exceeds capacity. Therefore keep | ||||||
|              * size at or below capacity. |        * size at or below capacity. | ||||||
|              * removeEldestEntry() executes after insertion therefore the test |        * removeEldestEntry() executes after insertion therefore the test | ||||||
|              * for removal needs to use one less than the maximum desired size |        * for removal needs to use one less than the maximum desired size | ||||||
|              * |        * | ||||||
|              */ |        */ | ||||||
|       map = new LinkedHashMap<Locale, StringManager>(LOCALE_CACHE_SIZE, 1, true) { |       map = new LinkedHashMap<Locale, StringManager>(LOCALE_CACHE_SIZE, 1, true) { | ||||||
|         private static final long serialVersionUID = 1L; |         private static final long serialVersionUID = 1L; | ||||||
|  |  | ||||||
| @ -137,7 +136,7 @@ public class StringManager { | |||||||
|           return size() > (LOCALE_CACHE_SIZE - 1); |           return size() > (LOCALE_CACHE_SIZE - 1); | ||||||
|         } |         } | ||||||
|       }; |       }; | ||||||
|       managers.put(packageName, map); |       MANAGERS.put(packageName, map); | ||||||
|     } |     } | ||||||
|  |  | ||||||
|     StringManager mgr = map.get(locale); |     StringManager mgr = map.get(locale); | ||||||
|  | |||||||
| @ -16,8 +16,14 @@ import java.util.List; | |||||||
| @Data | @Data | ||||||
| public class WxCpUser implements Serializable { | public class WxCpUser implements Serializable { | ||||||
|   public enum Gender { |   public enum Gender { | ||||||
|  |     /** | ||||||
|  |      * 男 | ||||||
|  |      */ | ||||||
|     MALE("男", "1"), |     MALE("男", "1"), | ||||||
|     FEMAIL("女", "2"); |     /** | ||||||
|  |      * 女 | ||||||
|  |      */ | ||||||
|  |     FEMALE("女", "2"); | ||||||
|  |  | ||||||
|     private String genderName; |     private String genderName; | ||||||
|     private String code; |     private String code; | ||||||
| @ -40,7 +46,7 @@ public class WxCpUser implements Serializable { | |||||||
|         return Gender.MALE; |         return Gender.MALE; | ||||||
|       } |       } | ||||||
|       if ("2".equals(code)) { |       if ("2".equals(code)) { | ||||||
|         return Gender.FEMAIL; |         return Gender.FEMALE; | ||||||
|       } |       } | ||||||
|  |  | ||||||
|       return null; |       return null; | ||||||
|  | |||||||
| @ -37,7 +37,7 @@ public class WxCpUserServiceImplTest { | |||||||
|     user.setName("Some Woman"); |     user.setName("Some Woman"); | ||||||
|     user.setDepartIds(new Integer[]{2}); |     user.setDepartIds(new Integer[]{2}); | ||||||
|     user.setEmail("none@none.com"); |     user.setEmail("none@none.com"); | ||||||
|     user.setGender(WxCpUser.Gender.FEMAIL); |     user.setGender(WxCpUser.Gender.FEMALE); | ||||||
|     user.setMobile("13560084979"); |     user.setMobile("13560084979"); | ||||||
|     user.setPosition("woman"); |     user.setPosition("woman"); | ||||||
|     user.setTelephone("3300393"); |     user.setTelephone("3300393"); | ||||||
|  | |||||||
| @ -213,7 +213,7 @@ public class WxMpCardServiceImpl implements WxMpCardService { | |||||||
|     WxMpCardResult cardResult = WxMpGsonBuilder.INSTANCE.create().fromJson(tmpJsonElement, |     WxMpCardResult cardResult = WxMpGsonBuilder.INSTANCE.create().fromJson(tmpJsonElement, | ||||||
|       new TypeToken<WxMpCardResult>() { |       new TypeToken<WxMpCardResult>() { | ||||||
|       }.getType()); |       }.getType()); | ||||||
|     if (!cardResult.getErrorCode().equals("0")) { |     if (!"0".equals(cardResult.getErrorCode())) { | ||||||
|       this.log.warn("朋友的券mark失败:{}", cardResult.getErrorMsg()); |       this.log.warn("朋友的券mark失败:{}", cardResult.getErrorMsg()); | ||||||
|     } |     } | ||||||
|   } |   } | ||||||
|  | |||||||
| @ -227,6 +227,7 @@ public abstract class WxMpServiceAbstractImpl<H, P> implements WxMpService, Requ | |||||||
|   /** |   /** | ||||||
|    * 向微信端发送请求,在这里执行的策略是当发生access_token过期时才去刷新,然后重新执行请求,而不是全局定时请求 |    * 向微信端发送请求,在这里执行的策略是当发生access_token过期时才去刷新,然后重新执行请求,而不是全局定时请求 | ||||||
|    */ |    */ | ||||||
|  |   @Override | ||||||
|   public <T, E> T execute(RequestExecutor<T, E> executor, String uri, E data) throws WxErrorException { |   public <T, E> T execute(RequestExecutor<T, E> executor, String uri, E data) throws WxErrorException { | ||||||
|     int retryTimes = 0; |     int retryTimes = 0; | ||||||
|     do { |     do { | ||||||
|  | |||||||
| @ -30,7 +30,7 @@ import java.util.Map; | |||||||
|  * @author <a href="https://github.com/007gzs">007</a> |  * @author <a href="https://github.com/007gzs">007</a> | ||||||
|  */ |  */ | ||||||
| public class WxOpenComponentServiceImpl implements WxOpenComponentService { | public class WxOpenComponentServiceImpl implements WxOpenComponentService { | ||||||
|   private static final Map<String, WxMpService> wxOpenMpServiceMap = new Hashtable<>(); |   private static final Map<String, WxMpService> WX_OPEN_MP_SERVICE_MAP = new Hashtable<>(); | ||||||
|   protected final Logger log = LoggerFactory.getLogger(this.getClass()); |   protected final Logger log = LoggerFactory.getLogger(this.getClass()); | ||||||
|   private WxOpenService wxOpenService; |   private WxOpenService wxOpenService; | ||||||
|  |  | ||||||
| @ -40,14 +40,14 @@ public class WxOpenComponentServiceImpl implements WxOpenComponentService { | |||||||
|  |  | ||||||
|   @Override |   @Override | ||||||
|   public WxMpService getWxMpServiceByAppid(String appId) { |   public WxMpService getWxMpServiceByAppid(String appId) { | ||||||
|     WxMpService wxMpService = wxOpenMpServiceMap.get(appId); |     WxMpService wxMpService = WX_OPEN_MP_SERVICE_MAP.get(appId); | ||||||
|     if (wxMpService == null) { |     if (wxMpService == null) { | ||||||
|       synchronized (wxOpenMpServiceMap) { |       synchronized (WX_OPEN_MP_SERVICE_MAP) { | ||||||
|         wxMpService = wxOpenMpServiceMap.get(appId); |         wxMpService = WX_OPEN_MP_SERVICE_MAP.get(appId); | ||||||
|         if (wxMpService == null) { |         if (wxMpService == null) { | ||||||
|           wxMpService = new WxOpenMpServiceImpl(this, appId, getWxOpenConfigStorage().getWxMpConfigStorage(appId)); |           wxMpService = new WxOpenMpServiceImpl(this, appId, getWxOpenConfigStorage().getWxMpConfigStorage(appId)); | ||||||
|  |  | ||||||
|           wxOpenMpServiceMap.put(appId, wxMpService); |           WX_OPEN_MP_SERVICE_MAP.put(appId, wxMpService); | ||||||
|         } |         } | ||||||
|       } |       } | ||||||
|     } |     } | ||||||
|  | |||||||
| @ -30,6 +30,7 @@ public abstract class WxOpenServiceAbstractImpl<H, P> implements WxOpenService, | |||||||
|     return wxOpenConfigStorage; |     return wxOpenConfigStorage; | ||||||
|   } |   } | ||||||
|  |  | ||||||
|  |   @Override | ||||||
|   public void setWxOpenConfigStorage(WxOpenConfigStorage wxOpenConfigStorage) { |   public void setWxOpenConfigStorage(WxOpenConfigStorage wxOpenConfigStorage) { | ||||||
|     this.wxOpenConfigStorage = wxOpenConfigStorage; |     this.wxOpenConfigStorage = wxOpenConfigStorage; | ||||||
|   } |   } | ||||||
|  | |||||||
		Reference in New Issue
	
	Block a user
	 Binary Wang
					Binary Wang