Skip to content
Snippets Groups Projects
Commit 7690443e authored by Lukasz Lopatowski's avatar Lukasz Lopatowski
Browse files

Refactor

parent c60cc3bc
No related branches found
No related tags found
1 merge request!273Release 1.8.0 update
Pipeline #94419 failed
...@@ -243,9 +243,11 @@ public class RemoteClusterManager implements ClusterMonitoringService { ...@@ -243,9 +243,11 @@ public class RemoteClusterManager implements ClusterMonitoringService {
} }
} }
private RemoteClusterView toView(KCluster KCluster) { private RemoteClusterView toView(KCluster kCluster) {
RemoteClusterView view = modelMapper.map(KCluster, RemoteClusterView.class); RemoteClusterView view = modelMapper.map(kCluster, RemoteClusterView.class);
view.setDomainNames(KCluster.getDomains().stream().map(Domain::getName).toList()); if (Objects.nonNull(kCluster.getDomains())) {
view.setDomainNames(kCluster.getDomains().stream().map(Domain::getName).toList());
}
return view; return view;
} }
......
package net.geant.nmaas.portal.api.configuration; package net.geant.nmaas.portal.api.configuration;
import jakarta.validation.Valid;
import lombok.RequiredArgsConstructor;
import net.geant.nmaas.portal.exceptions.ConfigurationNotFoundException; import net.geant.nmaas.portal.exceptions.ConfigurationNotFoundException;
import net.geant.nmaas.portal.exceptions.OnlyOneConfigurationSupportedException; import net.geant.nmaas.portal.exceptions.OnlyOneConfigurationSupportedException;
import net.geant.nmaas.portal.service.ConfigurationManager; import net.geant.nmaas.portal.service.ConfigurationManager;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpStatus; import org.springframework.http.HttpStatus;
import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.ExceptionHandler;
import org.springframework.web.bind.annotation.GetMapping;
import jakarta.validation.Valid; import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.PutMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseStatus;
import org.springframework.web.bind.annotation.RestController;
@RestController @RestController
@RequestMapping(value = "/api/configuration") @RequestMapping(value = "/api/configuration")
@RequiredArgsConstructor
public class ConfigurationController { public class ConfigurationController {
private ConfigurationManager configurationManager; private final ConfigurationManager configurationManager;
@Autowired
public ConfigurationController(ConfigurationManager configurationManager) {
this.configurationManager = configurationManager;
}
@GetMapping @GetMapping
public ConfigurationView getConfiguration(){ public ConfigurationView getConfiguration() {
return this.configurationManager.getConfiguration(); return this.configurationManager.getConfiguration();
} }
...@@ -33,7 +36,7 @@ public class ConfigurationController { ...@@ -33,7 +36,7 @@ public class ConfigurationController {
return this.configurationManager.setConfiguration(configuration); return this.configurationManager.setConfiguration(configuration);
} }
@PutMapping(value="/{id}") @PutMapping(value = "/{id}")
@PreAuthorize("hasRole('ROLE_SYSTEM_ADMIN')") @PreAuthorize("hasRole('ROLE_SYSTEM_ADMIN')")
@ResponseStatus(code = HttpStatus.NO_CONTENT) @ResponseStatus(code = HttpStatus.NO_CONTENT)
public void updateConfiguration(@PathVariable("id") Long id, @RequestBody @Valid ConfigurationView configuration) { public void updateConfiguration(@PathVariable("id") Long id, @RequestBody @Valid ConfigurationView configuration) {
...@@ -42,13 +45,13 @@ public class ConfigurationController { ...@@ -42,13 +45,13 @@ public class ConfigurationController {
@ExceptionHandler(OnlyOneConfigurationSupportedException.class) @ExceptionHandler(OnlyOneConfigurationSupportedException.class)
@ResponseStatus(code = HttpStatus.NOT_FOUND) @ResponseStatus(code = HttpStatus.NOT_FOUND)
public String handleOnlyOneConfigurationSupportedException(OnlyOneConfigurationSupportedException e){ public String handleOnlyOneConfigurationSupportedException(OnlyOneConfigurationSupportedException e) {
return e.getMessage(); return e.getMessage();
} }
@ExceptionHandler(ConfigurationNotFoundException.class) @ExceptionHandler(ConfigurationNotFoundException.class)
@ResponseStatus(code = HttpStatus.NOT_ACCEPTABLE) @ResponseStatus(code = HttpStatus.NOT_ACCEPTABLE)
public String handleConfigurationNotFoundException(ConfigurationNotFoundException e){ public String handleConfigurationNotFoundException(ConfigurationNotFoundException e) {
return e.getMessage(); return e.getMessage();
} }
} }
...@@ -26,8 +26,8 @@ public class GeneralInformationController { ...@@ -26,8 +26,8 @@ public class GeneralInformationController {
@GetMapping(value = "/changelog", produces = "application/json") @GetMapping(value = "/changelog", produces = "application/json")
public FileSystemResource getChangelog() throws IOException { public FileSystemResource getChangelog() throws IOException {
Path tempJsonFile = Files.createTempFile("changelog",".json"); Path tempJsonFile = Files.createTempFile("changelog", ".json");
try(InputStream inputStream = changelogPath.getInputStream()) { try (InputStream inputStream = changelogPath.getInputStream()) {
Files.copy(inputStream, tempJsonFile, StandardCopyOption.REPLACE_EXISTING); Files.copy(inputStream, tempJsonFile, StandardCopyOption.REPLACE_EXISTING);
} }
return new FileSystemResource(tempJsonFile); return new FileSystemResource(tempJsonFile);
......
...@@ -41,7 +41,7 @@ public interface AppInstanceRepository extends JpaRepository<AppInstance, Long> ...@@ -41,7 +41,7 @@ public interface AppInstanceRepository extends JpaRepository<AppInstance, Long>
@Modifying @Modifying
@Query("update AppInstance ai set ai.application = :application, ai.previousApplicationId = :previousApplicationId where ai.id = :id") @Query("update AppInstance ai set ai.application = :application, ai.previousApplicationId = :previousApplicationId where ai.id = :id")
void updateApplication(@Param(value = "id") long id, @Param(value = "previousApplicationId") long previousApplicationId, @Param(value = "application") Application application); void updateApplication(@Param(value = "id") Long id, @Param(value = "previousApplicationId") Long previousApplicationId, @Param(value = "application") Application application);
@Query("SELECT COUNT(ai.id) FROM AppInstance ai JOIN AppDeployment ad ON ad.deploymentId = ai.internalId WHERE ai.name = :name AND ai.domain.codename = :domain AND ad.state NOT IN" + @Query("SELECT COUNT(ai.id) FROM AppInstance ai JOIN AppDeployment ad ON ad.deploymentId = ai.internalId WHERE ai.name = :name AND ai.domain.codename = :domain AND ad.state NOT IN" +
"('APPLICATION_REMOVED'," + "('APPLICATION_REMOVED'," +
...@@ -51,16 +51,16 @@ public interface AppInstanceRepository extends JpaRepository<AppInstance, Long> ...@@ -51,16 +51,16 @@ public interface AppInstanceRepository extends JpaRepository<AppInstance, Long>
int isNameAvailableInDomain(@Param(value = "name") String name, @Param(value = "domain") String domain); int isNameAvailableInDomain(@Param(value = "name") String name, @Param(value = "domain") String domain);
@Query("SELECT COUNT(ai.id) FROM AppInstance ai WHERE ai.createdAt >= :sinceTime") @Query("SELECT COUNT(ai.id) FROM AppInstance ai WHERE ai.createdAt >= :sinceTime")
int countAllDeployedSince(@Param("sinceTime") long sinceTime); int countAllDeployedSince(@Param("sinceTime") Long sinceTime);
@Query("SELECT COUNT(ai.id) FROM AppInstance ai WHERE ai.createdAt >= :sinceTime AND ai.createdAt < :endTime") @Query("SELECT COUNT(ai.id) FROM AppInstance ai WHERE ai.createdAt >= :sinceTime AND ai.createdAt < :endTime")
int countAllDeployedInTimePeriod(@Param("sinceTime") long sinceTime, @Param("endTime") long endTime); int countAllDeployedInTimePeriod(@Param("sinceTime") Long sinceTime, @Param("endTime") Long endTime);
@Query("SELECT COUNT(ai.id) FROM AppInstance ai JOIN AppDeployment ad ON ad.deploymentId = ai.internalId WHERE ai.application.name = ?1") @Query("SELECT COUNT(ai.id) FROM AppInstance ai JOIN AppDeployment ad ON ad.deploymentId = ai.internalId WHERE ai.application.name = ?1")
int countByName(String name); int countByName(String name);
@Query("SELECT ai FROM AppInstance ai WHERE ai.createdAt >= :sinceTime AND ai.createdAt <= :endTime") @Query("SELECT ai FROM AppInstance ai WHERE ai.createdAt >= :sinceTime AND ai.createdAt <= :endTime")
List<AppInstance> findAllInTimePeriod(@Param("sinceTime") long sinceTime, @Param("endTime") long endTime); List<AppInstance> findAllInTimePeriod(@Param("sinceTime") Long sinceTime, @Param("endTime") Long endTime);
int countAllByOwner(User user); int countAllByOwner(User user);
......
...@@ -75,7 +75,7 @@ public class DashboardServiceImpl implements DashboardService { ...@@ -75,7 +75,7 @@ public class DashboardServiceImpl implements DashboardService {
.instanceCountInPeriod(appInstanceRepository.countAllDeployedInTimePeriod(startTimeStamp, endTimeStamp)) .instanceCountInPeriod(appInstanceRepository.countAllDeployedInTimePeriod(startTimeStamp, endTimeStamp))
.instanceCountInPeriodDetails(deploymentsViews) .instanceCountInPeriodDetails(deploymentsViews)
.popularApps(applicationDeploymentCountPerName).build(); .popularApps(applicationDeploymentCountPerName).build();
log.info("Response: {}", systemView.toString()); log.debug("Response: {}", systemView.toString());
return systemView; return systemView;
} }
...@@ -116,7 +116,7 @@ public class DashboardServiceImpl implements DashboardService { ...@@ -116,7 +116,7 @@ public class DashboardServiceImpl implements DashboardService {
.applicationDeployed(appsDeployed) .applicationDeployed(appsDeployed)
.applicationUpgradeStatus(upgradePossible) .applicationUpgradeStatus(upgradePossible)
.build(); .build();
log.info("Response: {}", view.toString()); log.debug("Response: {}", view.toString());
return view; return view;
} else { } else {
log.error("Domain {} not present. Returning empty...", domainId); log.error("Domain {} not present. Returning empty...", domainId);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment