Skip to content
Snippets Groups Projects
Commit f5952338 authored by Martin Slovík's avatar Martin Slovík
Browse files

Adding update to AirplaneTypeFacade

parent 12d4b858
No related branches found
No related tags found
No related merge requests found
package cz.muni.fi.pa165.core.exceptions;
public class ResourceNotFoundException extends RuntimeException {
public ResourceNotFoundException() {
}
public ResourceNotFoundException(String message) {
super(message);
}
public ResourceNotFoundException(String message, Throwable cause) {
super(message, cause);
}
public ResourceNotFoundException(Throwable cause) {
super(cause);
}
public ResourceNotFoundException(String message, Throwable cause, boolean enableSuppression, boolean writableStackTrace) {
super(message, cause, enableSuppression, writableStackTrace);
}
}
...@@ -21,4 +21,6 @@ public interface AirplaneTypeFacade<K> { ...@@ -21,4 +21,6 @@ public interface AirplaneTypeFacade<K> {
void deleteById(K id); void deleteById(K id);
void deleteAll(); void deleteAll();
AirplaneTypeDto update(K id, AirplaneTypeDto newAirplaneTypeDto);
} }
\ No newline at end of file
package cz.muni.fi.pa165.core.facade.airplanetype; package cz.muni.fi.pa165.core.facade.airplanetype;
import cz.muni.fi.pa165.core.data.domain.AirplaneType; import cz.muni.fi.pa165.core.data.domain.AirplaneType;
import cz.muni.fi.pa165.core.exceptions.ResourceNotFoundException;
import cz.muni.fi.pa165.core.model.AirplaneTypeDto; import cz.muni.fi.pa165.core.model.AirplaneTypeDto;
import cz.muni.fi.pa165.core.model.NewAirplaneTypeDtoRequest; import cz.muni.fi.pa165.core.model.NewAirplaneTypeDtoRequest;
import cz.muni.fi.pa165.core.service.airplanetype.AirplaneTypeService; import cz.muni.fi.pa165.core.service.airplanetype.AirplaneTypeService;
...@@ -53,4 +54,16 @@ public class AirplaneTypeFacadeImpl implements AirplaneTypeFacade<Long> { ...@@ -53,4 +54,16 @@ public class AirplaneTypeFacadeImpl implements AirplaneTypeFacade<Long> {
public void deleteAll() { public void deleteAll() {
airplaneTypeService.deleteAll(); airplaneTypeService.deleteAll();
} }
@Override
public AirplaneTypeDto update(Long id, AirplaneTypeDto newAirplaneTypeDto) {
var entityToUpdate = airplaneTypeService.findById(id)
.orElseThrow(() -> new ResourceNotFoundException("Not Found."));
var newAirplaneTypeEntity = modelMapper.map(newAirplaneTypeDto, AirplaneType.class);
entityToUpdate.setName(newAirplaneTypeEntity.getName());
return modelMapper.map(airplaneTypeService.save(entityToUpdate), AirplaneTypeDto.class);
}
} }
...@@ -86,6 +86,6 @@ public class AirplaneTypeController implements AirplaneTypeApiDelegate { ...@@ -86,6 +86,6 @@ public class AirplaneTypeController implements AirplaneTypeApiDelegate {
*/ */
@Override @Override
public ResponseEntity<AirplaneTypeDto> updateAirplaneType(Long id, AirplaneTypeDto airplaneTypeDto) { public ResponseEntity<AirplaneTypeDto> updateAirplaneType(Long id, AirplaneTypeDto airplaneTypeDto) {
return AirplaneTypeApiDelegate.super.updateAirplaneType(id, airplaneTypeDto); return ResponseEntity.ok(airplaneTypeFacade.update(id, airplaneTypeDto));
} }
} }
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment