Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- @Override
- public String editGame(String[] tokens) {
- StringBuilder sb = new StringBuilder();
- String id = tokens[1];
- Game game = this.gameRepository.findById(Long.parseLong(id)).orElse(null);
- if (game == null) {
- return "Game not found!";
- }
- GameEditDto gameToEdit = modelMapper.map(game, GameEditDto.class);
- gameToEdit.setId(Long.parseLong(id));
- for (int i = 2; i < tokens.length; i++) {
- String[] propertiesElements = tokens[i].split("=");
- String propertyName = propertiesElements[0];
- String propertyKey = propertiesElements[1];
- switch (propertyName) {
- case "title":
- return "Title cannot be edited!";
- case "price":
- gameToEdit.setPrice(new BigDecimal(propertyKey));
- break;
- case "size":
- gameToEdit.setSize(new BigDecimal(propertyKey));
- break;
- case "trailer":
- gameToEdit.setTrailer(propertyKey);
- break;
- case "thumbnailUrl":
- gameToEdit.setThumbnailUrl(propertyKey);
- break;
- case "description":
- gameToEdit.setDescription(propertyKey);
- break;
- }
- }
- Set<ConstraintViolation<GameEditDto>> violations = this.validator.validate(gameToEdit);
- if (violations.size() > 0) {
- for (ConstraintViolation<GameEditDto> violation : violations) {
- sb.append(violation.getMessage()).append(System.lineSeparator());
- }
- return sb.toString().trim();
- } else {
- Game editedGame = this.modelMapper.map(gameToEdit, Game.class);
- if (editedGame != null) {
- Game savedGame = this.gameRepository.saveAndFlush(editedGame);
- if (savedGame != null) {
- return String.format("Edited %s", savedGame.getTitle());
- }
- }
- }
- return null;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement