This is an automated email from the ASF dual-hosted git repository. dyankiv pushed a commit to branch epm-v2.5.2.1 in repository https://gitbox.apache.org/repos/asf/incubator-datalab.git
commit e963c42fc25713e32294ff515a2a7a17bcf86459 Author: Denys Yankiv <[email protected]> AuthorDate: Mon Oct 3 12:26:09 2022 +0300 add info for platforms page --- .../resources/ConnectedPlatformResource.java | 7 ------ .../dto/ConnectedPlatformsInfo.java} | 28 +++++++++++++--------- .../service/ConnectedPlatformsService.java | 3 ++- .../impl/ConnectedPlatformsServiceImpl.java | 13 ++++++++-- 4 files changed, 30 insertions(+), 21 deletions(-) diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/ConnectedPlatformResource.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/ConnectedPlatformResource.java index 9c46e1c8b..e664b8b9d 100644 --- a/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/ConnectedPlatformResource.java +++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/ConnectedPlatformResource.java @@ -53,13 +53,6 @@ public class ConnectedPlatformResource { return Response.ok(connectedPlatformsService.getUserPlatforms(ui.getName())).build(); } - @RolesAllowed("/api/connected_platforms/view") - @GET - @Path("/types") - public Response getConnectedPlatformTypes(@Auth UserInfo ui){ - return Response.ok(ConnectedPlatformType.values()).build(); - } - @RolesAllowed("/api/connected_platforms/add") @POST public Response addConnectedPlatform(@Auth UserInfo ui, @Valid ConnectedPlatformAddFrom from) { diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/service/ConnectedPlatformsService.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/dto/ConnectedPlatformsInfo.java similarity index 61% copy from services/self-service/src/main/java/com/epam/datalab/backendapi/service/ConnectedPlatformsService.java copy to services/self-service/src/main/java/com/epam/datalab/backendapi/resources/dto/ConnectedPlatformsInfo.java index 5042be304..206f00edd 100644 --- a/services/self-service/src/main/java/com/epam/datalab/backendapi/service/ConnectedPlatformsService.java +++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/dto/ConnectedPlatformsInfo.java @@ -17,19 +17,25 @@ * under the License. */ -package com.epam.datalab.backendapi.service; +package com.epam.datalab.backendapi.resources.dto; -import com.epam.datalab.auth.UserInfo; -import com.epam.datalab.backendapi.resources.dto.ConnectedPlatformDTO; -import com.epam.datalab.backendapi.resources.dto.ConnectedPlatformType; +import com.fasterxml.jackson.annotation.JsonProperty; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.EqualsAndHashCode; +import lombok.ToString; import java.util.List; -public interface ConnectedPlatformsService { - List<ConnectedPlatformDTO> getUserPlatforms(String userName); - List<ConnectedPlatformDTO> getAll(); - - void addPlatform(UserInfo user, String name, ConnectedPlatformType type, String url); - - void disconnect(UserInfo user, String name); +@AllArgsConstructor +@Builder +@EqualsAndHashCode +@ToString +public class ConnectedPlatformsInfo { + @JsonProperty + private List<ConnectedPlatformDTO> userPlatforms; + @JsonProperty + private List<ConnectedPlatformType> types; + @JsonProperty + private List<String> platformNames; } diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/service/ConnectedPlatformsService.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/service/ConnectedPlatformsService.java index 5042be304..a1985486d 100644 --- a/services/self-service/src/main/java/com/epam/datalab/backendapi/service/ConnectedPlatformsService.java +++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/service/ConnectedPlatformsService.java @@ -22,11 +22,12 @@ package com.epam.datalab.backendapi.service; import com.epam.datalab.auth.UserInfo; import com.epam.datalab.backendapi.resources.dto.ConnectedPlatformDTO; import com.epam.datalab.backendapi.resources.dto.ConnectedPlatformType; +import com.epam.datalab.backendapi.resources.dto.ConnectedPlatformsInfo; import java.util.List; public interface ConnectedPlatformsService { - List<ConnectedPlatformDTO> getUserPlatforms(String userName); + ConnectedPlatformsInfo getUserPlatforms(String userName); List<ConnectedPlatformDTO> getAll(); void addPlatform(UserInfo user, String name, ConnectedPlatformType type, String url); diff --git a/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/ConnectedPlatformsServiceImpl.java b/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/ConnectedPlatformsServiceImpl.java index f4ee7a3d1..baf7f64f6 100644 --- a/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/ConnectedPlatformsServiceImpl.java +++ b/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/ConnectedPlatformsServiceImpl.java @@ -23,13 +23,17 @@ import com.epam.datalab.auth.UserInfo; import com.epam.datalab.backendapi.dao.ConnectedPlatformsDAO; import com.epam.datalab.backendapi.resources.dto.ConnectedPlatformDTO; import com.epam.datalab.backendapi.resources.dto.ConnectedPlatformType; +import com.epam.datalab.backendapi.resources.dto.ConnectedPlatformsInfo; import com.epam.datalab.backendapi.service.ConnectedPlatformsService; import com.epam.datalab.exceptions.ResourceAlreadyExistException; import com.google.inject.Inject; import com.google.inject.Singleton; import lombok.extern.slf4j.Slf4j; +import java.util.Arrays; import java.util.List; +import java.util.stream.Collectors; + @Singleton @Slf4j public class ConnectedPlatformsServiceImpl implements ConnectedPlatformsService { @@ -45,8 +49,13 @@ public class ConnectedPlatformsServiceImpl implements ConnectedPlatformsService @Override - public List<ConnectedPlatformDTO> getUserPlatforms(String userName) { - return connectedPlatformsDAO.getUserPlatforms(userName); + public ConnectedPlatformsInfo getUserPlatforms(String userName) { + List<String> platformNames = getAll().stream().map(ConnectedPlatformDTO::getName).collect(Collectors.toList()); + return ConnectedPlatformsInfo.builder() + .userPlatforms(connectedPlatformsDAO.getUserPlatforms(userName)) + .types(Arrays.asList(ConnectedPlatformType.values())) + .platformNames(platformNames) + .build(); } @Override --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
