Module-HTTPD/src/main/java/dev/plex/request/impl/ListEndpoint.java

29 lines
923 B
Java
Raw Normal View History

2022-04-02 21:34:29 +00:00
package dev.plex.request.impl;
import com.google.gson.GsonBuilder;
import dev.plex.request.AbstractServlet;
import dev.plex.request.GetMapping;
import dev.plex.request.MappingHeaders;
2022-04-02 21:34:29 +00:00
import jakarta.servlet.http.HttpServletRequest;
import java.util.ArrayList;
import java.util.List;
2022-04-17 23:21:44 +00:00
import jakarta.servlet.http.HttpServletResponse;
2022-04-02 21:34:29 +00:00
import org.bukkit.Bukkit;
import org.bukkit.entity.Player;
public class ListEndpoint extends AbstractServlet
{
@GetMapping(endpoint = "/api/list/")
@MappingHeaders(headers = "content-type;application/json")
2022-04-17 23:21:44 +00:00
public String getOnlinePlayers(HttpServletRequest request, HttpServletResponse response)
2022-04-02 21:34:29 +00:00
{
2022-04-17 23:44:42 +00:00
List<String> players = new ArrayList<>();
2022-04-02 21:34:29 +00:00
for (Player player : Bukkit.getOnlinePlayers())
{
players.add(player.getName());
}
2022-04-17 21:39:08 +00:00
return new GsonBuilder().setPrettyPrinting().create().toJson(players.stream().toList());
2022-04-02 21:34:29 +00:00
}
}