This is an automated email from the ASF dual-hosted git repository.

dyankiv pushed a commit to branch DATALAB-2812
in repository https://gitbox.apache.org/repos/asf/incubator-datalab.git


The following commit(s) were added to refs/heads/DATALAB-2812 by this push:
     new 53a121a79 update image model
53a121a79 is described below

commit 53a121a798801342f5ada0d034205dbda96ff7be
Author: Denys Yankiv <[email protected]>
AuthorDate: Mon May 30 17:29:09 2022 +0300

    update image model
---
 .../backendapi/resources/ImageExploratoryResource.java  | 13 +++++++++++--
 .../backendapi/resources/dto/ImageInfoRecord.java       |  2 ++
 .../backendapi/service/ImageExploratoryService.java     |  3 ++-
 .../service/impl/ImageExploratoryServiceImpl.java       | 17 ++++++++++++++++-
 .../resources/ImageExploratoryResourceTest.java         |  4 +++-
 .../backendapi/service/impl/BillingServiceImplTest.java |  4 +++-
 .../service/impl/ImageExploratoryServiceImplTest.java   |  4 ++--
 7 files changed, 39 insertions(+), 8 deletions(-)

diff --git 
a/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/ImageExploratoryResource.java
 
b/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/ImageExploratoryResource.java
index 03774e657..8c5c76861 100644
--- 
a/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/ImageExploratoryResource.java
+++ 
b/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/ImageExploratoryResource.java
@@ -100,11 +100,20 @@ public class ImageExploratoryResource {
         return Response.ok(images).build();
     }
 
+
+    @GET
+    @Path("user")
+    public Response getImagesForUser(@Auth UserInfo ui) {
+        log.debug("Getting images for user {}", ui.getName());
+        final List<ProjectImagesInfo> images = 
imageExploratoryService.getImagesOfUser(ui);
+        return Response.ok(images).build();
+    }
+
     @POST
     @Path("user")
     public Response getImagesForUser(@Auth UserInfo ui, @Valid @NotNull 
ImageFilter imageFilter) {
-        log.debug("Getting images for user {}", ui.getName());
-        final List<ProjectImagesInfo> images = 
imageExploratoryService.getImagesOfUser(ui ,imageFilter);
+        log.debug("Getting images for user {} with filter {}", ui.getName(), 
imageFilter);
+        final List<ProjectImagesInfo> images = 
imageExploratoryService.getImagesOfUserWithFilter(ui ,imageFilter);
         return Response.ok(images).build();
     }
 
diff --git 
a/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/dto/ImageInfoRecord.java
 
b/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/dto/ImageInfoRecord.java
index b10db48d6..bf5f9fd94 100644
--- 
a/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/dto/ImageInfoRecord.java
+++ 
b/services/self-service/src/main/java/com/epam/datalab/backendapi/resources/dto/ImageInfoRecord.java
@@ -30,6 +30,7 @@ import java.time.LocalDateTime;
 @JsonIgnoreProperties(ignoreUnknown = true)
 public class ImageInfoRecord {
     private final String name;
+    private final String creationDate;
     private final String description;
     private final String project;
     private final String endpoint;
@@ -39,4 +40,5 @@ public class ImageInfoRecord {
     private final CloudProvider cloudProvider;
     private final String fullName;
     private final ImageStatus status;
+    private final boolean isShared;
 }
diff --git 
a/services/self-service/src/main/java/com/epam/datalab/backendapi/service/ImageExploratoryService.java
 
b/services/self-service/src/main/java/com/epam/datalab/backendapi/service/ImageExploratoryService.java
index c08628820..99973f1a6 100644
--- 
a/services/self-service/src/main/java/com/epam/datalab/backendapi/service/ImageExploratoryService.java
+++ 
b/services/self-service/src/main/java/com/epam/datalab/backendapi/service/ImageExploratoryService.java
@@ -39,5 +39,6 @@ public interface ImageExploratoryService {
 
     List<ImageInfoRecord> getImagesForProject(String project);
 
-    List<ProjectImagesInfo> getImagesOfUser(UserInfo user, ImageFilter 
imageFilter);
+    List<ProjectImagesInfo> getImagesOfUser(UserInfo user);
+    List<ProjectImagesInfo> getImagesOfUserWithFilter(UserInfo user, 
ImageFilter imageFilter);
 }
diff --git 
a/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/ImageExploratoryServiceImpl.java
 
b/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/ImageExploratoryServiceImpl.java
index 0a3666c1f..c0cd6e54d 100644
--- 
a/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/ImageExploratoryServiceImpl.java
+++ 
b/services/self-service/src/main/java/com/epam/datalab/backendapi/service/impl/ImageExploratoryServiceImpl.java
@@ -160,7 +160,22 @@ public class ImageExploratoryServiceImpl implements 
ImageExploratoryService {
     }
 
     @Override
-    public List<ProjectImagesInfo> getImagesOfUser(UserInfo user, ImageFilter 
imageFilter) {
+    public List<ProjectImagesInfo> getImagesOfUser(UserInfo user) {
+        log.debug("Loading list of images for user {}", user.getName());
+        return projectService.getUserProjects(user, Boolean.FALSE)
+                .stream()
+                .map( p-> {
+                    List<ImageInfoRecord> images =  
imageExploratoryDao.getImagesOfUser(user.getName(), p.getName());
+                    return ProjectImagesInfo.builder()
+                            .project(p.getName())
+                            .images(images)
+                            .build();
+                })
+                .collect(Collectors.toList());
+    }
+
+    @Override
+    public List<ProjectImagesInfo> getImagesOfUserWithFilter(UserInfo user, 
ImageFilter imageFilter) {
         log.debug("Loading list of images for user {}", user.getName());
         return projectService.getUserProjects(user, Boolean.FALSE)
                 .stream()
diff --git 
a/services/self-service/src/test/java/com/epam/datalab/backendapi/resources/ImageExploratoryResourceTest.java
 
b/services/self-service/src/test/java/com/epam/datalab/backendapi/resources/ImageExploratoryResourceTest.java
index 7a28c670c..eea7497cb 100644
--- 
a/services/self-service/src/test/java/com/epam/datalab/backendapi/resources/ImageExploratoryResourceTest.java
+++ 
b/services/self-service/src/test/java/com/epam/datalab/backendapi/resources/ImageExploratoryResourceTest.java
@@ -278,6 +278,7 @@ public class ImageExploratoryResourceTest extends TestBase {
 
     private List<ImageInfoRecord> getImageList() {
         ImageInfoRecord imageInfoRecord = new ImageInfoRecord("someName",
+                "2020-02-02",
                 "someDescription",
                 "someProject",
                 "someEndpoint",
@@ -286,7 +287,8 @@ public class ImageExploratoryResourceTest extends TestBase {
                 "someInstance",
                 CloudProvider.AWS,
                 "someFullName",
-                ImageStatus.CREATED);
+                ImageStatus.CREATED,
+                false);
         return Collections.singletonList(imageInfoRecord);
     }
 }
diff --git 
a/services/self-service/src/test/java/com/epam/datalab/backendapi/service/impl/BillingServiceImplTest.java
 
b/services/self-service/src/test/java/com/epam/datalab/backendapi/service/impl/BillingServiceImplTest.java
index fc6629c85..39bf539e0 100644
--- 
a/services/self-service/src/test/java/com/epam/datalab/backendapi/service/impl/BillingServiceImplTest.java
+++ 
b/services/self-service/src/test/java/com/epam/datalab/backendapi/service/impl/BillingServiceImplTest.java
@@ -748,6 +748,7 @@ public class BillingServiceImplTest extends TestBase {
         return Collections.singletonList(
                 new ImageInfoRecord(
                         IMAGE_NAME,
+                        "2020-02-02",
                         IMAGE_DESCRIPTION,
                         PROJECT,
                         ENDPOINT,
@@ -756,7 +757,8 @@ public class BillingServiceImplTest extends TestBase {
                         EXPLORATORY_NAME,
                         CloudProvider.GENERAL,
                         IMAGE_FULL_NAME,
-                        ImageStatus.CREATED)
+                        ImageStatus.CREATED,
+                        false)
         );
     }
 }
\ No newline at end of file
diff --git 
a/services/self-service/src/test/java/com/epam/datalab/backendapi/service/impl/ImageExploratoryServiceImplTest.java
 
b/services/self-service/src/test/java/com/epam/datalab/backendapi/service/impl/ImageExploratoryServiceImplTest.java
index c89fda149..4d4cd2ad8 100644
--- 
a/services/self-service/src/test/java/com/epam/datalab/backendapi/service/impl/ImageExploratoryServiceImplTest.java
+++ 
b/services/self-service/src/test/java/com/epam/datalab/backendapi/service/impl/ImageExploratoryServiceImplTest.java
@@ -309,8 +309,8 @@ public class ImageExploratoryServiceImplTest {
     }
 
     private ImageInfoRecord getImageInfoRecord() {
-        return new ImageInfoRecord("someName", "someDescription", 
"someProject", "someEndpoint", "someUser", "someApp",
-                "someInstance",CloudProvider.GENERAL,"someFullName", 
ImageStatus.CREATED);
+        return new ImageInfoRecord("someName", "2020-02-02","someDescription", 
"someProject", "someEndpoint", "someUser", "someApp",
+                "someInstance",CloudProvider.GENERAL,"someFullName", 
ImageStatus.CREATED, false);
     }
 
     private Image fetchImage() {


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to