mirror of
https://github.com/plan-player-analytics/Plan.git
synced 2024-11-12 21:54:02 +01:00
IsOnlineWebAPI and Removed all JsonResponse APIs (response body not used)
This commit is contained in:
parent
7d5ccd2d0f
commit
06eb66047b
@ -8,18 +8,18 @@ import main.java.com.djrapitops.plan.Log;
|
|||||||
import main.java.com.djrapitops.plan.PlanBungee;
|
import main.java.com.djrapitops.plan.PlanBungee;
|
||||||
import main.java.com.djrapitops.plan.api.exceptions.WebAPIConnectionFailException;
|
import main.java.com.djrapitops.plan.api.exceptions.WebAPIConnectionFailException;
|
||||||
import main.java.com.djrapitops.plan.api.exceptions.WebAPIException;
|
import main.java.com.djrapitops.plan.api.exceptions.WebAPIException;
|
||||||
|
import main.java.com.djrapitops.plan.api.exceptions.WebAPINotFoundException;
|
||||||
import main.java.com.djrapitops.plan.systems.cache.DataCache;
|
import main.java.com.djrapitops.plan.systems.cache.DataCache;
|
||||||
import main.java.com.djrapitops.plan.systems.info.server.ServerInfo;
|
import main.java.com.djrapitops.plan.systems.info.server.ServerInfo;
|
||||||
import main.java.com.djrapitops.plan.systems.webserver.PageCache;
|
import main.java.com.djrapitops.plan.systems.webserver.PageCache;
|
||||||
import main.java.com.djrapitops.plan.systems.webserver.webapi.WebAPIManager;
|
import main.java.com.djrapitops.plan.systems.webserver.webapi.WebAPIManager;
|
||||||
import main.java.com.djrapitops.plan.systems.webserver.webapi.bukkit.AnalyzeWebAPI;
|
import main.java.com.djrapitops.plan.systems.webserver.webapi.bukkit.AnalyzeWebAPI;
|
||||||
|
import main.java.com.djrapitops.plan.systems.webserver.webapi.bukkit.IsOnlineWebAPI;
|
||||||
import main.java.com.djrapitops.plan.systems.webserver.webapi.bungee.RequestPluginsTabWebAPI;
|
import main.java.com.djrapitops.plan.systems.webserver.webapi.bungee.RequestPluginsTabWebAPI;
|
||||||
import main.java.com.djrapitops.plan.utilities.html.HtmlStructure;
|
import main.java.com.djrapitops.plan.utilities.html.HtmlStructure;
|
||||||
|
|
||||||
import java.sql.SQLException;
|
import java.sql.SQLException;
|
||||||
import java.util.HashMap;
|
import java.util.*;
|
||||||
import java.util.Map;
|
|
||||||
import java.util.UUID;
|
|
||||||
import java.util.function.Function;
|
import java.util.function.Function;
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
@ -82,6 +82,21 @@ public class BungeeInformationManager extends InformationManager {
|
|||||||
getWebAPI().getAPI(RequestPluginsTabWebAPI.class).sendRequestsToBukkitServers(plugin, uuid);
|
getWebAPI().getAPI(RequestPluginsTabWebAPI.class).sendRequestsToBukkitServers(plugin, uuid);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public ServerInfo getInspectRequestProcessorServer(UUID uuid) throws SQLException {
|
||||||
|
List<ServerInfo> bukkitServers = plugin.getDB().getServerTable().getBukkitServers();
|
||||||
|
for (ServerInfo server : bukkitServers) {
|
||||||
|
try {
|
||||||
|
getWebAPI().getAPI(IsOnlineWebAPI.class).sendRequest(server.getWebAddress());
|
||||||
|
return server;
|
||||||
|
} catch (WebAPINotFoundException e) {
|
||||||
|
/*continue*/
|
||||||
|
} catch (WebAPIException e) {
|
||||||
|
Log.toLog(this.getClass().getName(), e);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return bukkitServers.get(new Random().nextInt(bukkitServers.size()));
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public DataCache getDataCache() {
|
public DataCache getDataCache() {
|
||||||
return null;
|
return null;
|
||||||
|
@ -60,8 +60,7 @@ public class WebServer {
|
|||||||
webAPI.registerNewAPI(new AnalyzeWebAPI());
|
webAPI.registerNewAPI(new AnalyzeWebAPI());
|
||||||
webAPI.registerNewAPI(new ConfigurationWebAPI());
|
webAPI.registerNewAPI(new ConfigurationWebAPI());
|
||||||
webAPI.registerNewAPI(new InspectWebAPI());
|
webAPI.registerNewAPI(new InspectWebAPI());
|
||||||
webAPI.registerNewAPI(new GetOnlinePlayersWebAPI());
|
webAPI.registerNewAPI(new IsOnlineWebAPI());
|
||||||
webAPI.registerNewAPI(new GetMaxPlayersWebAPI());
|
|
||||||
webAPI.registerNewAPI(new PingWebAPI());
|
webAPI.registerNewAPI(new PingWebAPI());
|
||||||
webAPI.registerNewAPI(new RequestInspectPluginsTabBukkitWebAPI());
|
webAPI.registerNewAPI(new RequestInspectPluginsTabBukkitWebAPI());
|
||||||
|
|
||||||
|
@ -1,22 +0,0 @@
|
|||||||
/*
|
|
||||||
* Licence is provided in the jar as license.yml also here:
|
|
||||||
* https://github.com/Rsl1122/Plan-PlayerAnalytics/blob/master/Plan/src/main/resources/license.yml
|
|
||||||
*/
|
|
||||||
package main.java.com.djrapitops.plan.systems.webserver.webapi.bukkit;
|
|
||||||
|
|
||||||
import main.java.com.djrapitops.plan.api.IPlan;
|
|
||||||
import main.java.com.djrapitops.plan.systems.webserver.response.Response;
|
|
||||||
import main.java.com.djrapitops.plan.systems.webserver.response.api.JsonResponse;
|
|
||||||
import main.java.com.djrapitops.plan.systems.webserver.webapi.WebAPI;
|
|
||||||
|
|
||||||
import java.util.Map;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @author Rsl1122
|
|
||||||
*/
|
|
||||||
public class GetMaxPlayersWebAPI extends WebAPI {
|
|
||||||
@Override
|
|
||||||
public Response onRequest(IPlan plugin, Map<String, String> variables) {
|
|
||||||
return new JsonResponse(plugin.getVariable().getMaxPlayers());
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,23 +0,0 @@
|
|||||||
/*
|
|
||||||
* Licence is provided in the jar as license.yml also here:
|
|
||||||
* https://github.com/Rsl1122/Plan-PlayerAnalytics/blob/master/Plan/src/main/resources/license.yml
|
|
||||||
*/
|
|
||||||
package main.java.com.djrapitops.plan.systems.webserver.webapi.bukkit;
|
|
||||||
|
|
||||||
import main.java.com.djrapitops.plan.Plan;
|
|
||||||
import main.java.com.djrapitops.plan.api.IPlan;
|
|
||||||
import main.java.com.djrapitops.plan.systems.webserver.response.Response;
|
|
||||||
import main.java.com.djrapitops.plan.systems.webserver.response.api.JsonResponse;
|
|
||||||
import main.java.com.djrapitops.plan.systems.webserver.webapi.WebAPI;
|
|
||||||
|
|
||||||
import java.util.Map;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @author Fuzzlemann
|
|
||||||
*/
|
|
||||||
public class GetOnlinePlayersWebAPI extends WebAPI {
|
|
||||||
@Override
|
|
||||||
public Response onRequest(IPlan plugin, Map<String, String> variables) {
|
|
||||||
return new JsonResponse(((Plan) plugin).getServer().getOnlinePlayers());
|
|
||||||
}
|
|
||||||
}
|
|
@ -0,0 +1,47 @@
|
|||||||
|
/*
|
||||||
|
* Licence is provided in the jar as license.yml also here:
|
||||||
|
* https://github.com/Rsl1122/Plan-PlayerAnalytics/blob/master/Plan/src/main/resources/license.yml
|
||||||
|
*/
|
||||||
|
package main.java.com.djrapitops.plan.systems.webserver.webapi.bukkit;
|
||||||
|
|
||||||
|
import main.java.com.djrapitops.plan.Plan;
|
||||||
|
import main.java.com.djrapitops.plan.api.IPlan;
|
||||||
|
import main.java.com.djrapitops.plan.api.exceptions.WebAPIException;
|
||||||
|
import main.java.com.djrapitops.plan.systems.webserver.response.Response;
|
||||||
|
import main.java.com.djrapitops.plan.systems.webserver.webapi.WebAPI;
|
||||||
|
import org.bukkit.entity.Player;
|
||||||
|
|
||||||
|
import java.util.Map;
|
||||||
|
import java.util.UUID;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author Fuzzlemann
|
||||||
|
*/
|
||||||
|
public class IsOnlineWebAPI extends WebAPI {
|
||||||
|
@Override
|
||||||
|
public Response onRequest(IPlan plugin, Map<String, String> variables) {
|
||||||
|
String uuidS = variables.get("uuid");
|
||||||
|
if (uuidS == null) {
|
||||||
|
return badRequest("UUID not included");
|
||||||
|
}
|
||||||
|
UUID uuid = UUID.fromString(uuidS);
|
||||||
|
|
||||||
|
Player player = Plan.getInstance().getServer().getPlayer(uuid);
|
||||||
|
|
||||||
|
if (player != null && player.isOnline()) {
|
||||||
|
return success();
|
||||||
|
} else {
|
||||||
|
return fail("Not Online");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void sendRequest(String address) throws WebAPIException {
|
||||||
|
throw new IllegalStateException("Wrong method call for this WebAPI, call sendRequest(String, UUID, UUID) instead.");
|
||||||
|
}
|
||||||
|
|
||||||
|
public void sendRequest(String address, UUID uuid) throws WebAPIException {
|
||||||
|
addVariable("uuid", uuid.toString());
|
||||||
|
super.sendRequest(address);
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user