diff --git a/weixin-graal/src/main/java/cn/binarywang/wx/graal/GraalProcessor.java b/weixin-graal/src/main/java/cn/binarywang/wx/graal/GraalProcessor.java index 2cf569187..4eaddadf2 100644 --- a/weixin-graal/src/main/java/cn/binarywang/wx/graal/GraalProcessor.java +++ b/weixin-graal/src/main/java/cn/binarywang/wx/graal/GraalProcessor.java @@ -1,6 +1,7 @@ package cn.binarywang.wx.graal; import lombok.Data; +import lombok.extern.slf4j.Slf4j; import javax.annotation.processing.AbstractProcessor; import javax.annotation.processing.RoundEnvironment; @@ -25,7 +26,6 @@ import java.util.TreeSet; * * @author outersky */ - @SupportedAnnotationTypes("lombok.Data") @SupportedSourceVersion(SourceVersion.RELEASE_7) public class GraalProcessor extends AbstractProcessor { @@ -38,7 +38,6 @@ public class GraalProcessor extends AbstractProcessor { @Override public boolean process(Set annotations, RoundEnvironment roundEnv) { for (TypeElement annotatedClass : ElementFilter.typesIn(roundEnv.getElementsAnnotatedWith(Data.class))) { - registerClass(annotatedClass.getQualifiedName().toString()); handleSuperClass(annotatedClass); } @@ -108,29 +107,29 @@ public class GraalProcessor extends AbstractProcessor { String propsFile = path + NATIVE_IMAGE_PROPERTIES; try { FileObject fileObject = processingEnv.getFiler().createResource(StandardLocation.CLASS_OUTPUT, "", propsFile); - Writer writer = fileObject.openWriter(); - writer.append("Args = -H:ReflectionConfigurationResources=${.}/" + REFLECTION_CONFIG_JSON); - writer.close(); + try (Writer writer = fileObject.openWriter();) { + writer.append("Args = -H:ReflectionConfigurationResources=${.}/" + REFLECTION_CONFIG_JSON); + } } catch (IOException e) { e.printStackTrace(); } try { FileObject fileObject = processingEnv.getFiler().createResource(StandardLocation.CLASS_OUTPUT, "", reflectFile); - Writer writer = fileObject.openWriter(); - writer.write("[\n"); - boolean first = true; - for (String name : classSet) { - if (first) { - first = false; - } else { - writer.write(","); + try (Writer writer = fileObject.openWriter();) { + writer.write("[\n"); + boolean first = true; + for (String name : classSet) { + if (first) { + first = false; + } else { + writer.write(","); + } + writer.write(assetGraalJsonElement(name)); + writer.append('\n'); } - writer.write(assetGraalJsonElement(name)); - writer.append('\n'); + writer.write("]"); } - writer.write("]"); - writer.close(); } catch (IOException e) { e.printStackTrace(); } diff --git a/weixin-java-common/src/main/java/me/chanjar/weixin/common/session/StandardSessionManager.java b/weixin-java-common/src/main/java/me/chanjar/weixin/common/session/StandardSessionManager.java index 2472cb44b..591b7025d 100644 --- a/weixin-java-common/src/main/java/me/chanjar/weixin/common/session/StandardSessionManager.java +++ b/weixin-java-common/src/main/java/me/chanjar/weixin/common/session/StandardSessionManager.java @@ -1,21 +1,19 @@ package me.chanjar.weixin.common.session; +import me.chanjar.weixin.common.util.res.StringManager; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + import java.util.Map; import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.atomic.AtomicBoolean; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -import me.chanjar.weixin.common.util.res.StringManager; - /** * 基于内存的session manager. * * @author Daniel Qian */ public class StandardSessionManager implements WxSessionManager, InternalSessionManager { - protected static final StringManager SM = StringManager.getManager(Constants.PACKAGE); /** * The descriptive name of this Manager implementation (for logging). @@ -51,7 +49,9 @@ public class StandardSessionManager implements WxSessionManager, InternalSession */ protected int maxInactiveInterval = 30 * 60; - // Number of sessions created by this manager + /** + * Number of sessions created by this manager + */ protected long sessionCounter = 0; protected volatile int maxActive = 0; @@ -154,12 +154,10 @@ public class StandardSessionManager implements WxSessionManager, InternalSession session.setValid(true); session.setCreationTime(System.currentTimeMillis()); session.setMaxInactiveInterval(this.maxInactiveInterval); - String id = sessionId; - session.setId(id); + session.setId(sessionId); this.sessionCounter++; - return (session); - + return session; } @@ -181,10 +179,8 @@ public class StandardSessionManager implements WxSessionManager, InternalSession return new StandardSession(this); } - @Override public void add(InternalSession session) { - // 当第一次有session创建的时候,开启session清理线程 if (!this.backgroundProcessStarted.getAndSet(true)) { Thread t = new Thread(new Runnable() {