added a isPresent() check and unregistered users are able start a cache now
This commit is contained in:
parent
07010e9899
commit
5b6fe52a04
@ -34,33 +34,57 @@ public class Controller {
|
|||||||
|
|
||||||
@RequestMapping("/allCaches")
|
@RequestMapping("/allCaches")
|
||||||
@ResponseBody
|
@ResponseBody
|
||||||
public String getAllCaches(){
|
public String getAllCaches() {
|
||||||
return new Gson().toJson(cacheRepository.findAll());
|
return new Gson().toJson(cacheRepository.findAll());
|
||||||
}
|
}
|
||||||
|
|
||||||
@RequestMapping("/startCache")
|
@RequestMapping("/startCache")
|
||||||
public @ResponseBody
|
public @ResponseBody
|
||||||
Bearbeitet startCache(@RequestParam String userID,
|
String startCache(@RequestParam(value = "userID", defaultValue = "-1") String userID,
|
||||||
@RequestParam String cacheID,
|
@RequestParam String cacheID,
|
||||||
@RequestParam String cacheAccesDefinitionID) {
|
@RequestParam String cacheAccesDefinitionID) {
|
||||||
|
|
||||||
Optional<User> userOptional = userRepository.findById(Integer.valueOf(userID));
|
if (!userID.equals("-1")) { // ein angemeldeter User startet den Cache
|
||||||
User user = userOptional.get();
|
|
||||||
|
|
||||||
Optional<Cache> cacheOptional = cacheRepository.findById(Integer.valueOf(cacheID));
|
Bearbeitet bearbeitet = new Bearbeitet();
|
||||||
Cache cache = cacheOptional.get();
|
|
||||||
|
|
||||||
Optional<CacheAccesDefinition> cacheAccesDefinitionOptional =
|
Optional<User> userOptional = userRepository.findById(Integer.valueOf(userID));
|
||||||
cacheAccesDefinitionRepository.findById(Integer.valueOf(cacheAccesDefinitionID));
|
if (userOptional.isPresent()) {
|
||||||
CacheAccesDefinition cacheAccesDefinition = cacheAccesDefinitionOptional.get();
|
User user = userOptional.get();
|
||||||
|
bearbeitet.setUser(user);
|
||||||
|
} else {
|
||||||
|
return "There is no user with the ID " + userID;
|
||||||
|
}
|
||||||
|
|
||||||
Bearbeitet bearbeitet = new Bearbeitet();
|
Optional<Cache> cacheOptional = cacheRepository.findById(Integer.valueOf(cacheID));
|
||||||
bearbeitet.setUser(user);
|
if (cacheOptional.isPresent()) {
|
||||||
bearbeitet.setCache(cache);
|
Cache cache = cacheOptional.get();
|
||||||
bearbeitet.setCacheAccesDefinition(cacheAccesDefinition);
|
bearbeitet.setCache(cache);
|
||||||
|
} else {
|
||||||
|
return "There is no cache with the ID " + cacheID;
|
||||||
|
}
|
||||||
|
|
||||||
bearbeitetRepository.save(bearbeitet);
|
Optional<CacheAccesDefinition> cacheAccesDefinitionOptional =
|
||||||
|
cacheAccesDefinitionRepository.findById(Integer.valueOf(cacheAccesDefinitionID));
|
||||||
|
if (cacheAccesDefinitionOptional.isPresent()) {
|
||||||
|
CacheAccesDefinition cacheAccesDefinition = cacheAccesDefinitionOptional.get();
|
||||||
|
bearbeitet.setCacheAccesDefinition(cacheAccesDefinition);
|
||||||
|
} else {
|
||||||
|
return "There is no cacheAccesDefinition with the ID " + cacheAccesDefinitionID;
|
||||||
|
}
|
||||||
|
|
||||||
return bearbeitet;
|
bearbeitetRepository.save(bearbeitet);
|
||||||
|
|
||||||
|
return new Gson().toJson(bearbeitet);
|
||||||
|
|
||||||
|
} else { // kein angemeldeter User startet den Cache
|
||||||
|
Optional<Cache> cacheOptional = cacheRepository.findById(Integer.valueOf(cacheID));
|
||||||
|
if (cacheOptional.isPresent()) {
|
||||||
|
Cache cache = cacheOptional.get();
|
||||||
|
return new Gson().toJson(cache);
|
||||||
|
} else {
|
||||||
|
return "There is no cache with the ID " + cacheID;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user