parent
8ac3305646
commit
4f3085b52b
|
|
@ -0,0 +1,7 @@
|
|||
package eu.csc.ODPAppVehOwnServer.data;
|
||||
|
||||
import java.util.concurrent.atomic.AtomicInteger;
|
||||
|
||||
public class LicensePlate {
|
||||
|
||||
}
|
||||
|
|
@ -1,5 +1,6 @@
|
|||
package eu.csc.ODPAppVehOwnServer.persistence.services.storage;
|
||||
|
||||
import com.google.gson.reflect.TypeToken;
|
||||
import eu.csc.ODPAppVehOwnServer.models.VehicleBrandDto;
|
||||
import eu.csc.ODPAppVehOwnServer.models.VehicleModelDto;
|
||||
import eu.csc.ODPAppVehOwnServer.models.data.DeviceDto;
|
||||
|
|
@ -137,7 +138,7 @@ public class MetaDataStorageService
|
|||
@Override
|
||||
public List<LanguageDto> openLanguages(String filename) throws FileNotFoundException {
|
||||
|
||||
return gsonService.readJson(gsonService.getTypeTokenList(), storageService.load(filename).toFile());
|
||||
return gsonService.readJson(new TypeToken<List<LanguageDto>>(){}.getType(), storageService.load(filename).toFile());
|
||||
}
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -0,0 +1,20 @@
|
|||
package eu.csc.ODPAppVehOwnServer.services;
|
||||
|
||||
import java.io.IOException;
|
||||
|
||||
public final class DatabaseUtil {
|
||||
public static boolean restore(String dbUsername, String dbPassword, String dbName, String sourceFile)
|
||||
throws IOException, InterruptedException {
|
||||
String[] command = new String[]{
|
||||
"mysql",
|
||||
"-u" + dbUsername,
|
||||
"-p" + dbPassword,
|
||||
"-e",
|
||||
" source " + sourceFile,
|
||||
dbName
|
||||
};
|
||||
Process runtimeProcess = Runtime.getRuntime().exec(command);
|
||||
int processComplete = runtimeProcess.waitFor();
|
||||
return processComplete == 0;
|
||||
}
|
||||
}
|
||||
Binary file not shown.
Binary file not shown.
|
|
@ -0,0 +1,26 @@
|
|||
package eu.csc.ODPAppVehOwnServer.persistence.entity;
|
||||
|
||||
import lombok.Getter;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.Setter;
|
||||
|
||||
import javax.persistence.Column;
|
||||
import javax.persistence.Embeddable;
|
||||
import javax.persistence.Lob;
|
||||
|
||||
@Embeddable
|
||||
@Getter
|
||||
@Setter
|
||||
@NoArgsConstructor
|
||||
public class EmbImageDataEntity {
|
||||
|
||||
@Column
|
||||
private String imageName;
|
||||
|
||||
@Column
|
||||
private String imageType;
|
||||
|
||||
@Lob
|
||||
private byte[] imageData;
|
||||
|
||||
}
|
||||
|
|
@ -1,6 +1,7 @@
|
|||
package eu.csc.ODPAppVehOwnServer.persistence.entity.data;
|
||||
|
||||
import eu.csc.ODPAppVehOwnServer.persistence.entity.AbstractEntity;
|
||||
import eu.csc.ODPAppVehOwnServer.persistence.entity.EmbImageDataEntity;
|
||||
import lombok.Getter;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.Setter;
|
||||
|
|
@ -17,7 +18,6 @@ import java.util.List;
|
|||
@Table(name = "tvehicle_brands")
|
||||
|
||||
@ToString(callSuper = true, onlyExplicitlyIncluded = true)
|
||||
//@ToString(callSuper = true, onlyExplicitlyIncluded = true)
|
||||
public class VehicleBrandEntity extends AbstractEntity {
|
||||
|
||||
@Column(name = "brand_id", unique = true, nullable = false)
|
||||
|
|
@ -26,10 +26,20 @@ public class VehicleBrandEntity extends AbstractEntity {
|
|||
@Column(nullable = false)
|
||||
private String name;
|
||||
|
||||
@Column(nullable = true)
|
||||
private String imageName;
|
||||
@Embedded
|
||||
private EmbImageDataEntity imageData;
|
||||
|
||||
@OneToMany(fetch = FetchType.EAGER, mappedBy = "brand", cascade = CascadeType.ALL)
|
||||
private List<VehicleModelEntity> modelEntities;
|
||||
|
||||
public void setImageName(String imageName) {
|
||||
if (this.imageData == null)
|
||||
this.imageData = new EmbImageDataEntity();
|
||||
|
||||
this.imageData.setImageName(imageName);
|
||||
}
|
||||
|
||||
public String getImageName() {
|
||||
return this.imageData != null ? this.imageData.getImageName() : null;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -15,6 +15,6 @@ public interface LanguageRepository extends JpaRepository<LanguageEntity, Long>
|
|||
|
||||
LanguageEntity getByLocale(String locale);
|
||||
|
||||
@Query(value = "select e from LanguageEntity e where e.isStandard")
|
||||
@Query(value = "select e from LanguageEntity e where e.isStandard = true ")
|
||||
Optional<LanguageEntity> findDefaultLanguage();
|
||||
}
|
||||
|
|
|
|||
|
|
@ -10,7 +10,6 @@ import java.util.Optional;
|
|||
@Repository
|
||||
public interface PropulsionTypeRepository extends JpaRepository<PropulsionTypeEntity, Long> {
|
||||
|
||||
|
||||
Optional<PropulsionTypeEntity> findByTypeId(String propulsionId);
|
||||
|
||||
PropulsionTypeEntity getByTypeId(String propulsionId);
|
||||
|
|
|
|||
|
|
@ -2,12 +2,14 @@ package eu.csc.ODPAppVehOwnServer.persistence.services;
|
|||
|
||||
import eu.csc.ODPAppVehOwnServer.persistence.entity.data.LanguageEntity;
|
||||
import eu.csc.ODPAppVehOwnServer.persistence.entity.data.PropulsionTypeEntity;
|
||||
import eu.csc.ODPAppVehOwnServer.persistence.entity.data.VehicleBrandEntity;
|
||||
import eu.csc.ODPAppVehOwnServer.persistence.respository.LanguageRepository;
|
||||
import eu.csc.ODPAppVehOwnServer.persistence.respository.PropulsionTypeRepository;
|
||||
import lombok.Getter;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
import java.util.Optional;
|
||||
|
||||
|
|
@ -61,6 +63,7 @@ public class DataService {
|
|||
var defLanguage = getDefaultLanguage();
|
||||
if (!defLanguage.isPresent())
|
||||
return;
|
||||
|
||||
defLanguage.get().setStandard(false);
|
||||
languageRepository.save(defLanguage.get());
|
||||
}
|
||||
|
|
@ -80,4 +83,8 @@ public class DataService {
|
|||
public Optional<LanguageEntity> getDefaultLanguage() {
|
||||
return languageRepository.findDefaultLanguage();
|
||||
}
|
||||
|
||||
public List<VehicleBrandEntity> getBrands() {
|
||||
return vehicleService.findAllBrands();
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -26,12 +26,11 @@ public class VehicleService {
|
|||
private PropulsionTypeRepository propulsionTypeRepository;
|
||||
|
||||
|
||||
|
||||
|
||||
public List<VehicleBrandEntity> findAllBrands(){
|
||||
public List<VehicleBrandEntity> findAllBrands() {
|
||||
return vehicleBrandRepository.findAll();
|
||||
}
|
||||
public VehicleBrandEntity addVehicle(String brand, String name){
|
||||
|
||||
public VehicleBrandEntity addVehicle(String brand, String name) {
|
||||
|
||||
VehicleBrandEntity vb = new VehicleBrandEntity();
|
||||
vb.setName(name);
|
||||
|
|
@ -45,7 +44,7 @@ public class VehicleService {
|
|||
|
||||
}
|
||||
|
||||
public VehicleModelEntity addVehicleModel(String brand, String model, String name){
|
||||
public VehicleModelEntity addVehicleModel(String brand, String model, String name) {
|
||||
|
||||
|
||||
var parent = vehicleBrandRepository.findOneByBrandId(brand);
|
||||
|
|
@ -73,13 +72,13 @@ public class VehicleService {
|
|||
return vehicleModelRepository.findAllByBrand_BrandId(brand);
|
||||
}
|
||||
|
||||
public List<PropulsionTypeEntity> findAllPropulsionTypes() {
|
||||
public List<PropulsionTypeEntity> findAllPropulsionTypes() {
|
||||
|
||||
return propulsionTypeRepository.findAll();
|
||||
}
|
||||
|
||||
public VehicleBrandEntity addVehicleIfNotExists(String brandId, String name) {
|
||||
if(vehicleBrandRepository.findOneByBrandId(brandId).isPresent())
|
||||
if (vehicleBrandRepository.findOneByBrandId(brandId).isPresent())
|
||||
return vehicleBrandRepository.getOneByBrandId(brandId);
|
||||
|
||||
return addVehicle(brandId, name);
|
||||
|
|
@ -90,15 +89,14 @@ public class VehicleService {
|
|||
|
||||
var brand = vehicleBrandRepository.findOneByBrandId(brandId);
|
||||
|
||||
if(!brand.isPresent())
|
||||
if (!brand.isPresent())
|
||||
throw new EntityNotFoundException();
|
||||
|
||||
brand.get().setImageName(brandId + "." + fileExtension);
|
||||
|
||||
|
||||
vehicleBrandRepository.save(brand.get());
|
||||
|
||||
|
||||
return brand.get().getImageName();
|
||||
return brand.get().getImageName();
|
||||
}
|
||||
}
|
||||
|
|
|
|||
17
pom.xml
17
pom.xml
|
|
@ -29,7 +29,8 @@
|
|||
<tomcat.configuration.url>http://configuration:8080/manager/text</tomcat.configuration.url>
|
||||
<files.sqls>${project.basedir}/gen</files.sqls>
|
||||
|
||||
<asncore.version>0.9.0-SNAPSHOT</asncore.version>
|
||||
<asncore.version>0.9.1-SNAPSHOT</asncore.version>
|
||||
|
||||
|
||||
</properties>
|
||||
|
||||
|
|
@ -60,10 +61,12 @@
|
|||
<groupId>org.springframework.boot</groupId>
|
||||
<artifactId>spring-boot-starter-mail</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<!--
|
||||
<dependency>
|
||||
<groupId>org.springframework.boot</groupId>
|
||||
<artifactId>spring-boot-starter-data-mongodb</artifactId>
|
||||
</dependency>
|
||||
-->
|
||||
|
||||
<dependency>
|
||||
<groupId>org.springframework.boot</groupId>
|
||||
|
|
@ -122,11 +125,6 @@
|
|||
<optional>true</optional>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>eu.csc.core</groupId>
|
||||
<artifactId>asnfilehandler</artifactId>
|
||||
<version>${asncore.version}</version>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>eu.csc.core</groupId>
|
||||
|
|
@ -149,6 +147,11 @@
|
|||
<artifactId>asnfilegenerator</artifactId>
|
||||
<version>${asncore.version}</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>eu.csc.core</groupId>
|
||||
<artifactId>asnfilehandler</artifactId>
|
||||
<version>${asncore.version}</version>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>eu.csc.core</groupId>
|
||||
|
|
|
|||
|
|
@ -27,6 +27,7 @@ public class WebSecurityConfig extends WebSecurityConfigurerAdapter {
|
|||
new AntPathRequestMatcher("/login/**"),
|
||||
new AntPathRequestMatcher("/devices/**"),
|
||||
new AntPathRequestMatcher("/vehicles/**"),
|
||||
new AntPathRequestMatcher("/leasgen/**"),
|
||||
new AntPathRequestMatcher("/languages/**"),
|
||||
new AntPathRequestMatcher("/signup/**")
|
||||
);
|
||||
|
|
|
|||
|
|
@ -0,0 +1,77 @@
|
|||
package eu.csc.ODPAppVehOwnServer.controller.customer;
|
||||
|
||||
import asn.GTMaintenance.Lease;
|
||||
import eu.csc.ODPAppVehOwnServer.controller.AbstractRestController;
|
||||
import eu.csc.ODPAppVehOwnServer.models.lease.CustomLeaseGenDto;
|
||||
import eu.csc.ODPAppVehOwnServer.persistence.services.StorageService;
|
||||
import eu.csc.ODPAppVehOwnServer.persistence.services.storage.FileSystemStorageService;
|
||||
import eu.csc.ODPAppVehOwnServer.services.LeaseServices;
|
||||
import eu.csc.asn.Asn1FileBase;
|
||||
import eu.csc.util.LeaseUtils;
|
||||
import org.apache.commons.logging.Log;
|
||||
import org.apache.commons.logging.LogFactory;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.core.io.ByteArrayResource;
|
||||
import org.springframework.core.io.Resource;
|
||||
import org.springframework.http.MediaType;
|
||||
import org.springframework.http.ResponseEntity;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
import java.io.ByteArrayOutputStream;
|
||||
|
||||
@RestController
|
||||
@RequestMapping(value = "/leasgen")
|
||||
public class LeaseGeneratorController extends AbstractRestController {
|
||||
|
||||
private final StorageService storageService;
|
||||
|
||||
private final LeaseServices leaseServices;
|
||||
|
||||
private final Log logger = LogFactory.getLog(LeaseGeneratorController.class);
|
||||
|
||||
@Autowired
|
||||
public LeaseGeneratorController(FileSystemStorageService storageService, LeaseServices leaseServices) {
|
||||
this.storageService = storageService;
|
||||
this.leaseServices = leaseServices;
|
||||
}
|
||||
|
||||
@PostMapping
|
||||
@RequestMapping("custom")
|
||||
public ResponseEntity<Resource> generateLease(@RequestBody CustomLeaseGenDto body) {
|
||||
|
||||
Lease lease = new Lease();
|
||||
|
||||
lease.setIssuer(body.getIssuer());
|
||||
lease.setSystems(body.getSystems());
|
||||
lease.setStartTime(body.getStartTime());
|
||||
lease.setExpirationTime(body.getExpirationTime());
|
||||
lease.setUser(body.getUser());
|
||||
|
||||
if (body.getToken() != null) {
|
||||
lease.setToken(body.getToken());
|
||||
} else {
|
||||
lease.setToken(LeaseUtils.generateNewToken());
|
||||
}
|
||||
|
||||
ByteArrayOutputStream stream = new ByteArrayOutputStream();
|
||||
|
||||
try {
|
||||
logger.info("GENERATING LEASE");
|
||||
Asn1FileBase.getInstance().encode(lease, stream);
|
||||
} catch (Exception ex) {
|
||||
logger.error("LeaseGen Error", ex);
|
||||
return getErrorOkResponse(ex);
|
||||
}
|
||||
|
||||
ByteArrayResource resource = new ByteArrayResource(stream.toByteArray());
|
||||
|
||||
return ResponseEntity.ok()
|
||||
//.headers(headers)
|
||||
.contentLength(stream.size())
|
||||
.contentType(MediaType.APPLICATION_OCTET_STREAM)
|
||||
.body(resource);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,16 @@
|
|||
package eu.csc.ODPAppVehOwnServer.controller.data;
|
||||
|
||||
import eu.csc.ODPAppVehOwnServer.controller.AbstractRestController;
|
||||
import org.slf4j.LoggerFactory;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
//@RestController
|
||||
//@RequestMapping("/vin")
|
||||
public class VinController extends AbstractRestController {
|
||||
|
||||
|
||||
}
|
||||
|
|
@ -1,5 +1,6 @@
|
|||
package eu.csc.ODPAppVehOwnServer.controller.registration;
|
||||
|
||||
import eu.csc.ODPAppVehOwnServer.models.MessageDto;
|
||||
import eu.csc.ODPAppVehOwnServer.models.UserRegistrationDto;
|
||||
import eu.csc.ODPAppVehOwnServer.persistence.entity.UserEntity;
|
||||
import eu.csc.ODPAppVehOwnServer.persistence.respository.UserRepository;
|
||||
|
|
@ -30,7 +31,7 @@ public class RegistrationController {
|
|||
|
||||
// add check for email exists in DB
|
||||
if (userRepository.existsByEmail(signUpDto.getEmail())) {
|
||||
return new ResponseEntity<>("Email is already taken!", HttpStatus.BAD_REQUEST);
|
||||
return new ResponseEntity<>(new MessageDto(1, "Email is already taken!"), HttpStatus.BAD_REQUEST);
|
||||
}
|
||||
|
||||
// create user object
|
||||
|
|
@ -42,6 +43,7 @@ public class RegistrationController {
|
|||
|
||||
user.setPhone(signUpDto.getPhone());
|
||||
user.setStreet(signUpDto.getStreet());
|
||||
//user.setPostal(signUpDto.getStreet());
|
||||
|
||||
userRepository.save(user);
|
||||
|
||||
|
|
|
|||
|
|
@ -25,6 +25,7 @@ public class MetaDataTester {
|
|||
|
||||
Assertions.assertNotNull(resource);
|
||||
}
|
||||
|
||||
@Test
|
||||
void testLanguages(){
|
||||
|
||||
|
|
@ -35,4 +36,6 @@ public class MetaDataTester {
|
|||
|
||||
System.out.println(items);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
import com.mongodb.assertions.Assertions;
|
||||
import org.junit.jupiter.api.Assertions;
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
import java.net.URL;
|
||||
|
|
@ -28,4 +28,11 @@ public class RegExTester {
|
|||
|
||||
Assertions.assertNotNull(resource);
|
||||
}
|
||||
|
||||
@Test
|
||||
void testLocation(){
|
||||
URL resouce = getClass().getClassLoader().getResource("");
|
||||
|
||||
System.out.println(resouce.getPath().toString());
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -0,0 +1,42 @@
|
|||
package eu.csc.ODPAppVehOwnServer.shell;
|
||||
|
||||
import eu.csc.ODPAppVehOwnServer.persistence.services.GsonService;
|
||||
import eu.csc.ODPAppVehOwnServer.services.ExportDataService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.shell.standard.ShellComponent;
|
||||
import org.springframework.shell.standard.ShellMethod;
|
||||
|
||||
@ShellComponent
|
||||
public class ExportCommands extends BaseCommands{
|
||||
|
||||
@Autowired
|
||||
private ExportDataService exportDataService;
|
||||
|
||||
@Autowired
|
||||
private GsonService gsonService;
|
||||
|
||||
@ShellMethod(value = "export All", key = {"export_all"})
|
||||
public String exportAll(){
|
||||
addMessageString(exportLanguages());
|
||||
addMessageString(exportBrands());
|
||||
|
||||
return getMessageString();
|
||||
}
|
||||
|
||||
@ShellMethod(value = "export Languages", key = {"export_languages"})
|
||||
public String exportLanguages(){
|
||||
getStartMessages("Export Languages");
|
||||
addMessageString(gsonService.getJsonString(exportDataService.getLanguages()));
|
||||
|
||||
return getMessageString();
|
||||
}
|
||||
@ShellMethod(value = "export exportBrands", key = {"export_brands"})
|
||||
public String exportBrands(){
|
||||
|
||||
getStartMessages("Export Brands");
|
||||
addMessageString(gsonService.getJsonString(exportDataService.getBrands()));
|
||||
|
||||
return getMessageString();
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -81,10 +81,10 @@ public class InfoCommands extends BaseCommands {
|
|||
|
||||
for (var language : languages
|
||||
) {
|
||||
if (language.getId().equals("en"))
|
||||
dataService.getOrAddLanguage(language.getId(), language.getName(), true);
|
||||
if (language.getLocale().equals("en"))
|
||||
dataService.getOrAddLanguage(language.getLocale(), language.getName(), true);
|
||||
else
|
||||
dataService.getOrAddLanguage(language.getId(), language.getName());
|
||||
dataService.getOrAddLanguage(language.getLocale(), language.getName());
|
||||
}
|
||||
|
||||
for (var brand : brands
|
||||
|
|
|
|||
|
|
@ -51,10 +51,10 @@ public class InitCommands
|
|||
for (var language:languages
|
||||
) {
|
||||
addMessageString(" - ADDING LANGUAGE: " + language.toString());
|
||||
if (language.getId().equals("en"))
|
||||
dataService.getOrAddLanguage(language.getId(), language.getName(), true);
|
||||
if (language.getLocale().equals("en"))
|
||||
dataService.getOrAddLanguage(language.getLocale(), language.getName(), true);
|
||||
else
|
||||
dataService.getOrAddLanguage(language.getId(), language.getName());
|
||||
dataService.getOrAddLanguage(language.getLocale(), language.getName());
|
||||
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -12,6 +12,7 @@ import eu.csc.ODPAppVehOwnServer.persistence.entity.data.DeviceEntity;
|
|||
import eu.csc.ODPAppVehOwnServer.persistence.entity.data.LanguageEntity;
|
||||
import eu.csc.ODPAppVehOwnServer.persistence.entity.data.VehicleBrandEntity;
|
||||
import lombok.var;
|
||||
import org.mapstruct.Mapping;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
|
@ -65,7 +66,7 @@ public class DtoMapper {
|
|||
|
||||
result.setDefault(item.isStandard());
|
||||
result.setName(item.getName());
|
||||
result.setId(item.getLocale());
|
||||
result.setLocale(item.getLocale());
|
||||
|
||||
return result;
|
||||
}
|
||||
|
|
@ -91,4 +92,15 @@ public class DtoMapper {
|
|||
|
||||
return result;
|
||||
}
|
||||
|
||||
public VehicleBrandDto mapVehicleBrandToDto(VehicleBrandEntity item) {
|
||||
var result = new VehicleBrandDto();
|
||||
|
||||
result.setBrandId(item.getBrandId());
|
||||
result.setName(item.getName());
|
||||
result.setId(item.getId());
|
||||
result.setImageName(item.getImageName());
|
||||
|
||||
return result;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -0,0 +1,40 @@
|
|||
package eu.csc.ODPAppVehOwnServer.services;
|
||||
|
||||
import eu.csc.ODPAppVehOwnServer.mapper.DtoMapper;
|
||||
import eu.csc.ODPAppVehOwnServer.models.VehicleBrandDto;
|
||||
import eu.csc.ODPAppVehOwnServer.models.data.LanguageDto;
|
||||
import eu.csc.ODPAppVehOwnServer.persistence.services.DataService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
@Service
|
||||
public class ExportDataService {
|
||||
|
||||
private final DataService dataService;
|
||||
|
||||
private final DtoMapper dtoMapper = DtoMapper.getInstance();
|
||||
|
||||
@Autowired
|
||||
public ExportDataService(DataService dataService) {
|
||||
this.dataService = dataService;
|
||||
}
|
||||
|
||||
|
||||
public List<LanguageDto> getLanguages(){
|
||||
return dataService.getLanguages()
|
||||
.stream().map(dtoMapper::mapLanguageToDto)
|
||||
.collect(Collectors.toList());
|
||||
}
|
||||
|
||||
|
||||
public List<VehicleBrandDto> getBrands(){
|
||||
return dataService.getBrands()
|
||||
.stream().map(dtoMapper::mapVehicleBrandToDto)
|
||||
.collect(Collectors.toList());
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
|
@ -16,7 +16,6 @@ import lombok.var;
|
|||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.io.FileNotFoundException;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.logging.Logger;
|
||||
|
|
@ -33,8 +32,6 @@ public class ImportContentService {
|
|||
private final VehicleService vehicleService;
|
||||
|
||||
|
||||
|
||||
|
||||
@Autowired
|
||||
public ImportContentService(DataService dataService, DeviceService deviceService, VehicleService vehicleService) {
|
||||
this.dataService = dataService;
|
||||
|
|
@ -42,7 +39,7 @@ public class ImportContentService {
|
|||
this.vehicleService = vehicleService;
|
||||
}
|
||||
|
||||
public void importFromFiles(IMetaDataStorage metaDataStorage){
|
||||
public void importFromFiles(IMetaDataStorage metaDataStorage) {
|
||||
|
||||
|
||||
importLanguages(metaDataStorage.openLanguagesOrEmpty());
|
||||
|
|
@ -50,14 +47,13 @@ public class ImportContentService {
|
|||
importVehicleBrands(metaDataStorage.openBrandsOrEmpty());
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
public List<PropulsionTypeEntity> importPropulsionTypes(List<PropulsionTypeDto> items) {
|
||||
|
||||
List<PropulsionTypeEntity> result = new ArrayList<>();
|
||||
for (var item:items
|
||||
) {
|
||||
for (var item : items
|
||||
) {
|
||||
result.add(dataService.getOrCreatePropulsionType(item.getPropulsionId(), item.getName()));
|
||||
}
|
||||
|
||||
|
|
@ -68,7 +64,7 @@ public class ImportContentService {
|
|||
|
||||
var result = new ArrayList<VehicleBrandEntity>();
|
||||
|
||||
for (var item:items
|
||||
for (var item : items
|
||||
) {
|
||||
result.add(importVehicleBrand(item));
|
||||
}
|
||||
|
|
@ -81,11 +77,11 @@ public class ImportContentService {
|
|||
return vehicleService.addVehicleIfNotExists(item.getBrandId(), item.getName());
|
||||
}
|
||||
|
||||
public List<DeviceEntity> importDevices(List<DeviceDto> items){
|
||||
public List<DeviceEntity> importDevices(List<DeviceDto> items) {
|
||||
|
||||
var result = new ArrayList<DeviceEntity>();
|
||||
|
||||
for (var item:items
|
||||
for (var item : items
|
||||
) {
|
||||
result.add(importDevice(item));
|
||||
}
|
||||
|
|
@ -93,8 +89,9 @@ public class ImportContentService {
|
|||
return result;
|
||||
}
|
||||
|
||||
public DeviceEntity importDevice(DeviceDto item){
|
||||
public DeviceEntity importDevice(DeviceDto item) {
|
||||
var device = DtoMapper.getInstance().mapDeviceFromDto(item);
|
||||
|
||||
return deviceService.getOrAddDevice(device);
|
||||
}
|
||||
|
||||
|
|
@ -102,24 +99,22 @@ public class ImportContentService {
|
|||
public void importLanguages(List<LanguageDto> languages) {
|
||||
logger.info("IMPORTING LANGUAGES");
|
||||
|
||||
|
||||
var defaultLanguage = languages.stream().filter(x -> x.isDefault()).findFirst();
|
||||
|
||||
if (defaultLanguage.isPresent())
|
||||
{
|
||||
if (defaultLanguage.isPresent()) {
|
||||
importLanguage(defaultLanguage.get());
|
||||
}
|
||||
|
||||
for (var language : languages) {
|
||||
importLanguage(language);
|
||||
}
|
||||
|
||||
throw new UnsupportedOperationException();
|
||||
for (var language : languages) {
|
||||
importLanguage(language);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public LanguageEntity importLanguage(LanguageDto item) {
|
||||
|
||||
return dataService.getOrAddLanguage(item.getId(), item.getName(), item.isDefault());
|
||||
return dataService.getOrAddLanguage(item.getLocale(), item.getName(), item.isDefault());
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -0,0 +1,17 @@
|
|||
package eu.csc.ODPAppVehOwnServer.services;
|
||||
|
||||
import asn.GTMaintenance.Lease;
|
||||
import eu.csc.odpconfigserver.persistence.leases.ASNLeaseEntity;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
@Service
|
||||
public class LeaseServices {
|
||||
|
||||
|
||||
|
||||
public Lease generateASNLease(){
|
||||
throw new UnsupportedOperationException();
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
|
@ -5,13 +5,24 @@ import eu.csc.ODPAppVehOwnServer.models.VehicleModelDto;
|
|||
import eu.csc.ODPAppVehOwnServer.models.data.DeviceDto;
|
||||
import eu.csc.ODPAppVehOwnServer.models.data.LanguageDto;
|
||||
import eu.csc.ODPAppVehOwnServer.models.data.PropulsionTypeDto;
|
||||
import eu.csc.ODPAppVehOwnServer.models.lease.CustomLeaseGenDto;
|
||||
import okhttp3.ResponseBody;
|
||||
import retrofit2.Call;
|
||||
import retrofit2.http.Body;
|
||||
import retrofit2.http.GET;
|
||||
import retrofit2.http.POST;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public interface DataClientService extends IApiService {
|
||||
|
||||
//region leases (tmp)
|
||||
|
||||
@POST("api/leasgen/custom")
|
||||
Call<ResponseBody> customLease(@Body CustomLeaseGenDto dto);
|
||||
|
||||
//endregion
|
||||
|
||||
//region Vehicle
|
||||
|
||||
@GET("/api/vehicles/brands")
|
||||
|
|
|
|||
|
|
@ -7,14 +7,13 @@ import lombok.NoArgsConstructor;
|
|||
@Data
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
|
||||
public class LanguageDto {
|
||||
private String id;
|
||||
private String locale;
|
||||
private String name;
|
||||
private boolean isDefault = false;
|
||||
|
||||
public LanguageDto(String id, String name){
|
||||
this.id = id;
|
||||
public LanguageDto(String locale, String name){
|
||||
this.locale = locale;
|
||||
this.name = name;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -0,0 +1,25 @@
|
|||
package eu.csc.ODPAppVehOwnServer.models.lease;
|
||||
|
||||
import lombok.Data;
|
||||
import lombok.ToString;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Data
|
||||
@ToString
|
||||
public class CustomLeaseGenDto {
|
||||
|
||||
private String token;
|
||||
|
||||
private String issuer;
|
||||
|
||||
private String user;
|
||||
|
||||
private Long startTime;
|
||||
|
||||
private Long expirationTime;
|
||||
|
||||
private List<String> systems;
|
||||
|
||||
|
||||
}
|
||||
Loading…
Reference in New Issue