added client

add methods
This commit is contained in:
yannick.blanken@csc-online.eu 2022-06-15 09:46:06 +02:00
parent 2c0f0f2c14
commit 7f1edaa972
6 changed files with 42 additions and 2 deletions

View File

@ -3,6 +3,7 @@ package eu.csc.ODPAppVehOwnServer.persistence.respository;
import eu.csc.ODPAppVehOwnServer.persistence.entity.data.DeviceEntity;
import eu.csc.ODPAppVehOwnServer.persistence.entity.data.LanguageEntity;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.Query;
import org.springframework.stereotype.Repository;
import java.util.Optional;
@ -13,4 +14,7 @@ public interface LanguageRepository extends JpaRepository<LanguageEntity, Long>
Optional<LanguageEntity> findByLocale(String locale);
LanguageEntity getByLocale(String locale);
@Query(value = "select e from LanguageEntity e where e.isStandard")
Optional<LanguageEntity> findDefaultLanguage();
}

View File

@ -7,7 +7,9 @@ import eu.csc.ODPAppVehOwnServer.persistence.respository.PropulsionTypeRepositor
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.awt.font.OpenType;
import java.util.List;
import java.util.Optional;
@Service
public class DataService {
@ -56,4 +58,8 @@ public class DataService {
return entity;
}
public Optional<LanguageEntity> getDefaultLanguage() {
return languageRepository.findDefaultLanguage();
}
}

View File

@ -2,6 +2,7 @@ package eu.csc.ODPAppVehOwnServer.controller.data;
import eu.csc.ODPAppVehOwnServer.models.data.LanguageDto;
import eu.csc.ODPAppVehOwnServer.persistence.services.DataService;
import lombok.var;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.GetMapping;
@ -19,7 +20,7 @@ public class LanguageController {
private DataService dataService;
@GetMapping
public ResponseEntity<List<LanguageDto>> showLanguages(){
public ResponseEntity<List<LanguageDto>> showLanguages() {
List<LanguageDto> result = new ArrayList<>();
result.add(new LanguageDto("en", "English"));
@ -28,4 +29,13 @@ public class LanguageController {
}
@GetMapping
@RequestMapping("/def")
public ResponseEntity<LanguageDto> showDefaultLanguage() {
var defLanguage = dataService.getDefaultLanguage();
return defLanguage.map(languageEntity -> ResponseEntity.ok(new LanguageDto(languageEntity.getLocale(), languageEntity.getName()))).orElseGet(() -> ResponseEntity.ok(null));
}
}

View File

@ -19,7 +19,9 @@ import java.io.IOException;
import java.util.List;
public class VehOwnAppClient extends AbstractClient implements IDataClient {
public class VehOwnAppClient
extends AbstractClient
implements IDataClient {
private final ClientService clientService;

View File

@ -0,0 +1,15 @@
package eu.csc.ODPAppVehOwnServer.client.clients;
import eu.csc.ODPAppVehOwnServer.client.service.DataClientService;
public class VehOwnAppDataClient extends AbstractClient{
private final DataClientService dataClientService;
public VehOwnAppDataClient(DataClientService dataClientService) {
this.dataClientService = dataClientService;
}
}

View File

@ -34,6 +34,9 @@ public interface DataClientService extends IApiService {
@GET("/api/languages")
Call<List<LanguageDto>> listLanguages();
@GET("/api/languages/def")
Call<LanguageDto> listDefaultLanguage();
//endregion
}