Files
PhotonVision/chameleon-server/src/main/java/com/chameleonvision/web/RequestHandler.java

61 lines
2.3 KiB
Java
Raw Normal View History

2019-11-27 18:09:27 -05:00
package com.chameleonvision.web;
import com.chameleonvision.config.ConfigManager;
import com.chameleonvision.network.NetworkIPMode;
import com.chameleonvision.vision.VisionManager;
import com.chameleonvision.vision.VisionProcess;
import com.chameleonvision.vision.camera.CameraCapture;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;
import io.javalin.http.Context;
import java.util.Map;
public class RequestHandler {
public static void onGeneralSettings(Context ctx) {
ObjectMapper objectMapper = new ObjectMapper();
try {
Map map = objectMapper.readValue(ctx.body(), Map.class);
2019-11-27 18:16:00 -05:00
2019-11-27 18:09:27 -05:00
// TODO: change to function, to restart NetworkTables
ConfigManager.settings.teamNumber = (int) map.get("teamNumber");
ConfigManager.settings.connectionType = NetworkIPMode.values()[(int) map.get("connectionType")];
ConfigManager.settings.ip = (String) map.get("ip");
ConfigManager.settings.netmask = (String) map.get("netmask");
ConfigManager.settings.gateway = (String) map.get("gateway");
ConfigManager.settings.hostname = (String) map.get("hostname");
ConfigManager.saveGeneralSettings();
SocketHandler.sendFullSettings();
ctx.status(200);
} catch (JsonProcessingException e) {
ctx.status(500);
}
}
public static void onCameraSettings(Context ctx) {
ObjectMapper objectMapper = new ObjectMapper();
try {
Map camSettings = objectMapper.readValue(ctx.body(), Map.class);
VisionProcess currentVisionProcess = VisionManager.getCurrentUIVisionProcess();
CameraCapture currentCamera = currentVisionProcess.getCamera();
2019-11-29 21:41:12 -08:00
double newFOV;
try {
newFOV = (Double) camSettings.get("fov");
} catch (Exception ignored) {
newFOV = (Integer) camSettings.get("fov");
}
currentCamera.getProperties().setFOV(newFOV);
VisionManager.saveCurrentCameraSettings();
2019-11-27 18:09:27 -05:00
SocketHandler.sendFullSettings();
ctx.status(200);
} catch (JsonProcessingException e) {
e.printStackTrace();
ctx.status(500);
}
}
}