Skip to content

Commit 708c1a3

Browse files
committed
Started work on new command viewer webpage
1 parent 0f97a1f commit 708c1a3

11 files changed

Lines changed: 137 additions & 17 deletions

File tree

build.gradle

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -92,7 +92,7 @@ dependencies {
9292

9393
launchtarget("org.mangorage:mangobotlaunchtarget:0.1.8")
9494

95-
plugin('org.mangorage:mangobot:12.0.109')
95+
plugin('org.mangorage:mangobot:12.0.113')
9696
plugin('org.mangorage:mangobotplugin:12.0.63')
9797

9898
library('org.eclipse.jetty:jetty-server:11.0.16')

src/main/java/module-info.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@
2828
exports org.mangorage.mangobotsite.website.servlet to org.eclipse.jetty.server;
2929

3030
exports org.mangorage.mangobotsite.website to freemarker;
31-
exports org.mangorage.mangobotsite.website.impl to freemarker;
31+
exports org.mangorage.mangobotsite.website.servlet.impl to freemarker;
3232
exports org.mangorage.mangobotsite.website.util to freemarker;
3333

3434

src/main/java/org/mangorage/mangobotsite/MangoBotSite.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
import org.mangorage.mangobotplugin.entrypoint.MangoBot;
88
import org.mangorage.mangobotsite.website.WebServer;
99
import org.mangorage.mangobotsite.website.file.FileUploadManager;
10-
import org.mangorage.mangobotsite.website.impl.ObjectMap;
10+
import org.mangorage.mangobotsite.website.util.ObjectMap;
1111
import org.mangorage.mangobotsite.website.util.WebConstants;
1212

1313
import java.nio.file.Path;

src/main/java/org/mangorage/mangobotsite/website/WebServer.java

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@
33

44

55
import jakarta.servlet.DispatcherType;
6-
import jakarta.servlet.MultipartConfigElement;
76
import org.eclipse.jetty.security.authentication.BasicAuthenticator;
87
import org.eclipse.jetty.server.Server;
98
import org.eclipse.jetty.server.ServerConnector;
@@ -15,17 +14,16 @@
1514
import org.jetbrains.annotations.NotNull;
1615
import org.mangorage.mangobotcore.api.util.log.LogHelper;
1716
import org.mangorage.mangobotsite.Helper;
18-
import org.mangorage.mangobotsite.website.file.FileUploadManager;
1917
import org.mangorage.mangobotsite.website.filters.RequestInterceptorFilter;
2018
import org.mangorage.mangobotsite.website.handlers.DefaultErrorHandler;
21-
import org.mangorage.mangobotsite.website.impl.ObjectMap;
19+
import org.mangorage.mangobotsite.website.servlet.CommandsServlet;
20+
import org.mangorage.mangobotsite.website.util.ObjectMap;
2221
import org.mangorage.mangobotsite.website.servlet.HomeServlet;
2322
import org.mangorage.mangobotsite.website.servlet.TricksServlet;
2423
import org.mangorage.mangobotsite.website.util.ResolveString;
2524
import org.mangorage.mangobotsite.website.util.ServletContextHandlerBuilder;
2625
import org.mangorage.mangobotsite.website.util.WebConstants;
2726

28-
import java.nio.file.Path;
2927
import java.util.EnumSet;
3028
import java.util.Set;
3129

@@ -104,6 +102,7 @@ public static void startWebServer(ObjectMap objectMap) throws Exception {
104102

105103
.addHttpServlet(HomeServlet.class, "/home")
106104
.addServlet(TricksServlet.class, "/tricks")
105+
.addServlet(CommandsServlet.class, "/commands")
107106

108107
.setAttribute(WebConstants.WEB_OBJECT_ID, objectMap)
109108
.addFilter(RequestInterceptorFilter.class, "/*", EnumSet.of(DispatcherType.REQUEST))
Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
package org.mangorage.mangobotsite.website.servlet;
2+
3+
import jakarta.servlet.ServletException;
4+
import jakarta.servlet.http.HttpServletRequest;
5+
import jakarta.servlet.http.HttpServletResponse;
6+
import org.mangorage.mangobotcore.api.command.v1.AbstractCommand;
7+
import org.mangorage.mangobotcore.api.plugin.v1.PluginManager;
8+
import org.mangorage.mangobotplugin.entrypoint.MangoBot;
9+
import org.mangorage.mangobotsite.website.servlet.impl.StandardHttpServlet;
10+
import org.mangorage.mangobotsite.website.util.MapBuilder;
11+
import org.mangorage.mangobotsite.website.util.WebUtil;
12+
import java.io.IOException;
13+
14+
public final class CommandsServlet extends StandardHttpServlet {
15+
@Override
16+
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
17+
final var plugin = PluginManager.getInstance().getPlugin("mangobot").getInstance(MangoBot.class);
18+
final var dispatcher = plugin.getCommandDispatcher();
19+
final var command = dispatcher.getCommand("trick").buildCommandParts();
20+
21+
WebUtil.processTemplate(
22+
MapBuilder.of()
23+
.put("commandDataList",
24+
dispatcher.getAllRegisteredCommands()
25+
.stream()
26+
.map(AbstractCommand::buildCommandParts)
27+
.toList()
28+
)
29+
.get(),
30+
"commands.ftl",
31+
resp.getWriter()
32+
);
33+
}
34+
}

src/main/java/org/mangorage/mangobotsite/website/servlet/HomeServlet.java

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,16 +6,13 @@
66
import org.mangorage.mangobotcore.api.plugin.v1.PluginContainer;
77
import org.mangorage.mangobotcore.api.plugin.v1.PluginManager;
88
import org.mangorage.mangobotplugin.entrypoint.MangoBot;
9-
import org.mangorage.mangobotsite.website.Header;
109
import org.mangorage.mangobotsite.website.WebsiteConstants;
11-
import org.mangorage.mangobotsite.website.impl.StandardHttpServlet;
12-
import org.mangorage.mangobotsite.website.servlet.data.HeaderData;
10+
import org.mangorage.mangobotsite.website.servlet.impl.StandardHttpServlet;
1311
import org.mangorage.mangobotsite.website.servlet.data.PluginData;
1412
import org.mangorage.mangobotsite.website.util.MapBuilder;
1513
import org.mangorage.mangobotsite.website.util.WebUtil;
1614

1715
import java.io.IOException;
18-
import java.util.List;
1916

2017
public class HomeServlet extends StandardHttpServlet {
2118

src/main/java/org/mangorage/mangobotsite/website/servlet/TricksServlet.java

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,17 +6,15 @@
66
import org.mangorage.mangobotcore.api.plugin.v1.PluginManager;
77
import org.mangorage.mangobotplugin.entrypoint.MangoBot;
88
import org.mangorage.mangobotsite.website.WebsiteConstants;
9-
import org.mangorage.mangobotsite.website.impl.StandardHttpServlet;
9+
import org.mangorage.mangobotsite.website.servlet.impl.StandardHttpServlet;
1010
import org.mangorage.mangobotsite.website.servlet.data.GuildsData;
1111
import org.mangorage.mangobotsite.website.servlet.data.category.CategoryData;
12-
import org.mangorage.mangobotsite.website.servlet.data.category.CategoryItemData;
1312
import org.mangorage.mangobotsite.website.servlet.data.trick.TrickData;
1413
import org.mangorage.mangobotsite.website.servlet.data.trick.TrickInfoData;
1514
import org.mangorage.mangobotsite.website.util.MapBuilder;
1615
import org.mangorage.mangobotsite.website.util.WebUtil;
1716

1817
import java.io.IOException;
19-
import java.util.List;
2018

2119
public final class TricksServlet extends StandardHttpServlet {
2220

src/main/java/org/mangorage/mangobotsite/website/impl/StandardHttpServlet.java renamed to src/main/java/org/mangorage/mangobotsite/website/servlet/impl/StandardHttpServlet.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,12 @@
1-
package org.mangorage.mangobotsite.website.impl;
1+
package org.mangorage.mangobotsite.website.servlet.impl;
22

33
import jakarta.servlet.ServletException;
44
import jakarta.servlet.ServletRequest;
55
import jakarta.servlet.ServletResponse;
66
import jakarta.servlet.http.HttpServlet;
77
import jakarta.servlet.http.HttpServletRequest;
88
import jakarta.servlet.http.HttpServletResponse;
9+
import org.mangorage.mangobotsite.website.util.ObjectMap;
910
import org.mangorage.mangobotsite.website.util.WebConstants;
1011

1112
import java.io.IOException;

src/main/java/org/mangorage/mangobotsite/website/impl/ObjectMap.java renamed to src/main/java/org/mangorage/mangobotsite/website/util/ObjectMap.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package org.mangorage.mangobotsite.website.impl;
1+
package org.mangorage.mangobotsite.website.util;
22

33
import java.util.HashMap;
44

src/main/java/org/mangorage/mangobotsite/website/util/ServletContextHandlerBuilder.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
import org.eclipse.jetty.security.ConstraintSecurityHandler;
77
import org.eclipse.jetty.servlet.ServletContextHandler;
88
import org.eclipse.jetty.servlet.ServletHolder;
9-
import org.mangorage.mangobotsite.website.impl.StandardHttpServlet;
9+
import org.mangorage.mangobotsite.website.servlet.impl.StandardHttpServlet;
1010

1111
import java.util.EnumSet;
1212
import java.util.function.Consumer;

0 commit comments

Comments
 (0)