Skip to content
Snippets Groups Projects

Résolution bug/modif UX mineurs (nom des composants renommé si besoin, l'écran...

Merged Axel Carayon requested to merge GenericiteCartes into main
Files
32
@@ -2,25 +2,24 @@ package com.irit.mapsender.controller;
import com.irit.mapsender.model.components.ComponentsManager;
import com.irit.mapsender.model.beans.Position;
import com.irit.mapsender.model.components.cartes.MapSupervisor;
import com.irit.mapsender.model.exceptions.ErrorWhileCreatingComponentException;
import com.irit.mapsender.model.exceptions.MissingConstructorForParametrableComponentException;
import com.irit.mapsender.model.exceptions.NoParametrableComponentFoundException;
import com.irit.mapsender.model.exceptions.NoParametrableComponentFoundException;import com.irit.mapsender.model.tools.ComponentDiagramDrawer;
import com.irit.mapsender.model.tools.Pair;
import com.irit.mapsender.model.tools.ParametrableComponentsScanner;
import org.apache.commons.io.IOUtils;
import org.json.JSONObject;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.*;
import java.util.HashMap;
import java.io.IOException;
import java.io.InputStream;
import java.util.List;
import java.util.Map;
@Controller
public class MainController {
private MapSupervisor mapSupervisor;
private ComponentsManager componentsManager;
private ParametrableComponentsScanner scanner;
@@ -28,7 +27,6 @@ public class MainController {
public MainController(){
componentsManager = new ComponentsManager();
scanner = new ParametrableComponentsScanner();
mapSupervisor = new MapSupervisor();
}
@GetMapping("/")
@@ -72,34 +70,22 @@ public class MainController {
return new JSONObject(scanner.getAllAnnotations()).toMap();
}
@GetMapping("/activeMaps")
@ResponseBody
public List<String> activeMaps() {
return mapSupervisor.getAllMaps();
}
@PutMapping("/map")
@ResponseBody
public void addAMap(@RequestBody String body) {
JSONObject json = new JSONObject(body);
mapSupervisor.addMap(json.getString("name"));
}
@PostMapping("/map")
@ResponseBody
public void updateMap(@RequestBody String body) {
JSONObject json = new JSONObject(body);
Position pos = new Position(json.getDouble("lat"),json.getDouble("lng"), null);
mapSupervisor.updatePosition(json.getString("name"), pos);
componentsManager.updatePosition(json.getString("name"), pos);
}
@DeleteMapping("/map")
@GetMapping("/activeMaps")
@ResponseBody
public void deleteMap(@RequestBody String body) {
JSONObject json = new JSONObject(body);
mapSupervisor.removeMap(json.getString("name"));
public List<String> activeMaps() {
return componentsManager.getAllMaps();
}
@GetMapping("/components")
@ResponseBody
public Map<String,List<Pair<String,Boolean>>> getAllComponents() {
@@ -134,4 +120,12 @@ public class MainController {
JSONObject json = new JSONObject(body);
componentsManager.turnOffAComponent(json.getString("componentCategory"), json.getString("name"));
}
@GetMapping(value = "/image",
produces = "image/svg+xml")
@ResponseBody
public byte[] sendSVG(@RequestParam String component) throws IOException {
InputStream in = getClass().getResourceAsStream("/images/"+component+".svg");
return IOUtils.toByteArray(in);
}
}
\ No newline at end of file
Loading