diff --git a/car/pom.xml b/car/pom.xml index 108906b91dc88f29a16498d97bfb96d11cdf4082..6e3de5f7b88893d896e43d56380968d13451fffc 100644 --- a/car/pom.xml +++ b/car/pom.xml @@ -47,18 +47,6 @@ <artifactId>spring-data-jpa</artifactId> <version>3.0.3</version> </dependency> - <dependency> - <groupId>fi.muni</groupId> - <artifactId>driver</artifactId> - <version>0.0.1-SNAPSHOT</version> - <scope>compile</scope> - </dependency> - <dependency> - <groupId>fi.muni</groupId> - <artifactId>component</artifactId> - <version>0.0.1-SNAPSHOT</version> - <scope>compile</scope> - </dependency> <dependency> <groupId>org.json</groupId> <artifactId>json</artifactId> diff --git a/car/src/main/java/cz/muni/pa165/car/App.java b/car/src/main/java/cz/muni/pa165/car/App.java index acf19d92fe628aadaa00a9cfbab48f4bcba05208..7895bd37eb0693f14cfff02ac44f7444033a4a9e 100644 --- a/car/src/main/java/cz/muni/pa165/car/App.java +++ b/car/src/main/java/cz/muni/pa165/car/App.java @@ -1,10 +1,7 @@ package cz.muni.pa165.car; import cz.muni.pa165.car.data.model.Car; -import cz.muni.pa165.common_library.client.ClientConfig; import cz.muni.pa165.common_library.exception.RestExceptionHandler; -import cz.muni.pa165.component.data.model.CarComponent; -import cz.muni.pa165.driver.data.model.Driver; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.autoconfigure.domain.EntityScan; @@ -20,7 +17,7 @@ import org.springframework.web.client.RestTemplate; @SpringBootApplication @EnableJpaRepositories(basePackages = {"cz.muni.pa165.car.data.repository"}) @EnableTransactionManagement -@EntityScan(basePackageClasses = {Car.class, Driver.class, CarComponent.class}) +@EntityScan(basePackageClasses = {Car.class}) //@Import({RestExceptionHandler.class, ClientConfig.class}) @Import(RestExceptionHandler.class) public class App { diff --git a/car/src/main/java/cz/muni/pa165/car/data/repository/CarComponentPairRepository.java b/car/src/main/java/cz/muni/pa165/car/data/repository/CarComponentPairRepository.java deleted file mode 100644 index 2a9f5a730a2a61dc484d094c25ac01a4d1dd6911..0000000000000000000000000000000000000000 --- a/car/src/main/java/cz/muni/pa165/car/data/repository/CarComponentPairRepository.java +++ /dev/null @@ -1,11 +0,0 @@ -package cz.muni.pa165.car.data.repository; - -import cz.muni.pa165.car.data.model.Car; -import org.springframework.data.jpa.repository.JpaRepository; -import org.springframework.stereotype.Repository; - -/** - * Repository for manipulation with car's components. - */ -@Repository -public interface CarComponentPairRepository extends JpaRepository<Car, Long> {} diff --git a/car/src/main/java/cz/muni/pa165/car/data/repository/CarDriverPairRepository.java b/car/src/main/java/cz/muni/pa165/car/data/repository/CarDriverPairRepository.java deleted file mode 100644 index 4f8aa431f3ba7bef35b04f5ac6070b30c994bc6c..0000000000000000000000000000000000000000 --- a/car/src/main/java/cz/muni/pa165/car/data/repository/CarDriverPairRepository.java +++ /dev/null @@ -1,11 +0,0 @@ -package cz.muni.pa165.car.data.repository; - -import cz.muni.pa165.car.data.model.Car; -import org.springframework.data.jpa.repository.JpaRepository; -import org.springframework.stereotype.Repository; - -/** - * Repository for manipulation with car's drivers. - */ -@Repository -public interface CarDriverPairRepository extends JpaRepository<Car, Long> {} diff --git a/car/src/main/java/cz/muni/pa165/car/mapper/CarMapper.java b/car/src/main/java/cz/muni/pa165/car/mapper/CarMapper.java index 0349e541db453f6e8d16e9d8043f8a85fb3a4a2f..dd5d13b9f72a9426f880761a81bc296abb75ea87 100644 --- a/car/src/main/java/cz/muni/pa165/car/mapper/CarMapper.java +++ b/car/src/main/java/cz/muni/pa165/car/mapper/CarMapper.java @@ -1,12 +1,8 @@ package cz.muni.pa165.car.mapper; -import static cz.muni.pa165.car.restemplate.DbGetter.getComponentFromDb; - import cz.muni.pa165.car.data.model.Car; import cz.muni.pa165.common_library.dtos.CarRequestDto; import cz.muni.pa165.common_library.dtos.CarResponseDto; -import cz.muni.pa165.common_library.exception.DatabaseException; -import cz.muni.pa165.component.data.model.CarComponent; import java.util.ArrayList; import java.util.HashSet; diff --git a/car/src/main/java/cz/muni/pa165/car/restemplate/DbGetter.java b/car/src/main/java/cz/muni/pa165/car/restemplate/DbGetter.java index 3dda980aa569d0a81ec610a4e4820315e3832ff2..3ee16541c759402000379439d7206a7f09ad6734 100644 --- a/car/src/main/java/cz/muni/pa165/car/restemplate/DbGetter.java +++ b/car/src/main/java/cz/muni/pa165/car/restemplate/DbGetter.java @@ -1,8 +1,7 @@ package cz.muni.pa165.car.restemplate; -import cz.muni.pa165.component.data.model.CarComponent; -import cz.muni.pa165.driver.data.model.Driver; -import org.springframework.beans.factory.annotation.Autowired; +import cz.muni.pa165.common_library.dtos.CarComponentDto; +import cz.muni.pa165.common_library.dtos.DriverInsightDto; import org.springframework.http.ResponseEntity; import org.springframework.stereotype.Component; import org.springframework.web.client.RestTemplate; @@ -24,9 +23,9 @@ public class DbGetter { * @param id driver id * @return Driver object */ - public static Driver getDriverFromDb(Long id) { + public static DriverInsightDto getDriverFromDb(Long id) { String url = GET_DRIVER_URL + id; - ResponseEntity<Driver> response = client.getForEntity(url, Driver.class); + ResponseEntity<DriverInsightDto> response = client.getForEntity(url, DriverInsightDto.class); return response.getBody(); } @@ -36,9 +35,9 @@ public class DbGetter { * @param id component id * @return Component object */ - public static CarComponent getComponentFromDb(Long id) { + public static CarComponentDto getComponentFromDb(Long id) { String url = GET_COMPONENT_URL + id; - ResponseEntity<CarComponent> response = client.getForEntity(url, CarComponent.class); + ResponseEntity<CarComponentDto> response = client.getForEntity(url, CarComponentDto.class); return response.getBody(); } diff --git a/car/src/main/java/cz/muni/pa165/car/service/CarComponentPairServiceImpl.java b/car/src/main/java/cz/muni/pa165/car/service/CarComponentPairServiceImpl.java index b7007a67fde7f088299429a6fa32ff5fb7599b3a..8387e271dcee8a05c1757b6ffe8a068f1547a229 100644 --- a/car/src/main/java/cz/muni/pa165/car/service/CarComponentPairServiceImpl.java +++ b/car/src/main/java/cz/muni/pa165/car/service/CarComponentPairServiceImpl.java @@ -8,7 +8,6 @@ import cz.muni.pa165.car.mapper.CarMapper; import cz.muni.pa165.common_library.dtos.CarComponentDto; import cz.muni.pa165.common_library.dtos.CarResponseDto; import cz.muni.pa165.common_library.exception.DatabaseException; -import cz.muni.pa165.component.data.model.CarComponent; import java.util.ArrayList; import java.util.HashSet; import java.util.List; @@ -41,7 +40,7 @@ public class CarComponentPairServiceImpl implements CarComponentPairService { throw new DatabaseException("Component with id " + componentId + " already in use"); } var components = car.getComponents(); - CarComponent carComponent = getComponentFromDb(componentId); + CarComponentDto carComponent = getComponentFromDb(componentId); components.add(carComponent.getId()); car.setComponents(components); carRepository.save(car); @@ -69,7 +68,7 @@ public class CarComponentPairServiceImpl implements CarComponentPairService { () -> new DatabaseException("Car not found")); var componentDtos = new ArrayList<CarComponentDto>(); for (Long id : car.getComponents()) { - CarComponent carComponent = getComponentFromDb(id); + CarComponentDto carComponent = getComponentFromDb(id); componentDtos.add( new CarComponentDto( carComponent.getId(), diff --git a/car/src/main/java/cz/muni/pa165/car/service/CarDriverPairServiceImpl.java b/car/src/main/java/cz/muni/pa165/car/service/CarDriverPairServiceImpl.java index 013c4eeceae1d2d5cc1041a4bcd3da364f3118a8..543d9dc41a8f8c0e2c5809ae530ba7bdaaaceb5c 100644 --- a/car/src/main/java/cz/muni/pa165/car/service/CarDriverPairServiceImpl.java +++ b/car/src/main/java/cz/muni/pa165/car/service/CarDriverPairServiceImpl.java @@ -6,8 +6,8 @@ import cz.muni.pa165.car.data.repository.CarRepository; import cz.muni.pa165.car.mapper.CarMapper; import cz.muni.pa165.common_library.dtos.CarResponseDto; import cz.muni.pa165.common_library.dtos.DriverDto; +import cz.muni.pa165.common_library.dtos.DriverInsightDto; import cz.muni.pa165.common_library.exception.DatabaseException; -import cz.muni.pa165.driver.data.model.Driver; import java.util.ArrayList; import java.util.HashSet; import java.util.List; @@ -38,7 +38,7 @@ public class CarDriverPairServiceImpl implements CarDriverPairService { var drivers = car.getDrivers(); var savedDriver = getDriverFromDb(driverId); - drivers.add(savedDriver.getId()); + drivers.add(savedDriver.id()); car.setDrivers(drivers); carRepository.save(car); @@ -66,11 +66,11 @@ public class CarDriverPairServiceImpl implements CarDriverPairService { () -> new DatabaseException("Car not found")); var driverDtos = new ArrayList<DriverDto>(); for (Long id : car.getDrivers()) { - Driver driver = getDriverFromDb(id); + DriverInsightDto driver = getDriverFromDb(id); driverDtos.add( - new DriverDto(driver.getId(), - driver.getName(), - driver.getSurname()) + new DriverDto(driver.id(), + driver.name(), + driver.surname()) ); } return driverDtos; @@ -82,7 +82,11 @@ public class CarDriverPairServiceImpl implements CarDriverPairService { () -> new DatabaseException("Car not found")); var savedDriver = getDriverFromDb(driverId); - car.setMainDriverId(savedDriver.getId()); + car.setMainDriverId(savedDriver.id()); + + var drivers = car.getDrivers(); + drivers.add(savedDriver.id()); + car.setDrivers(drivers); carRepository.save(car); return CarMapper.carConverterToDto(car); }