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

ofuks pushed a commit to branch DLAB-1749
in repository https://gitbox.apache.org/repos/asf/incubator-dlab.git


The following commit(s) were added to refs/heads/DLAB-1749 by this push:
     new a4ce996  [DLAB-1749] BE support library installation of particular 
version
a4ce996 is described below

commit a4ce996e0ca52701c9399fab71b8f7b23565dd7f
Author: Oleh Fuks <olegfuk...@gmail.com>
AuthorDate: Mon Jul 13 14:42:00 2020 +0300

    [DLAB-1749] BE support library installation of particular version
---
 .../epam/dlab/dto/exploratory/LibInstallDTO.java   |  2 +-
 .../dlab/backendapi/dao/ExploratoryLibDAO.java     | 38 +++++++++++++++++++---
 2 files changed, 35 insertions(+), 5 deletions(-)

diff --git 
a/services/dlab-model/src/main/java/com/epam/dlab/dto/exploratory/LibInstallDTO.java
 
b/services/dlab-model/src/main/java/com/epam/dlab/dto/exploratory/LibInstallDTO.java
index 1752560..78f6e89 100644
--- 
a/services/dlab-model/src/main/java/com/epam/dlab/dto/exploratory/LibInstallDTO.java
+++ 
b/services/dlab-model/src/main/java/com/epam/dlab/dto/exploratory/LibInstallDTO.java
@@ -55,7 +55,7 @@ public class LibInstallDTO {
        private List<String> availableVersions;
 
        @JsonProperty("add_pkgs")
-       private List<String> transitiveDependencies;
+       private List<String> addedPackages;
 
        public LibInstallDTO(String group, String name, String version) {
                this.group = group;
diff --git 
a/services/self-service/src/main/java/com/epam/dlab/backendapi/dao/ExploratoryLibDAO.java
 
b/services/self-service/src/main/java/com/epam/dlab/backendapi/dao/ExploratoryLibDAO.java
index bcec258..9842673 100644
--- 
a/services/self-service/src/main/java/com/epam/dlab/backendapi/dao/ExploratoryLibDAO.java
+++ 
b/services/self-service/src/main/java/com/epam/dlab/backendapi/dao/ExploratoryLibDAO.java
@@ -61,6 +61,8 @@ public class ExploratoryLibDAO extends BaseDAO {
        public static final String LIB_VERSION = "version";
        private static final String LIB_INSTALL_DATE = "install_date";
        private static final String LIB_ERROR_MESSAGE = "error_message";
+       private static final String LIB_AVAILABLE_VERSION = 
"available_versions";
+       private static final String LIB_ADDED_PACKAGES = "add_pkgs";
        private static final String COMPUTATIONAL_NAME_FIELD = 
"computational_name";
 
        /**
@@ -204,7 +206,7 @@ public class ExploratoryLibDAO extends BaseDAO {
                                        push(EXPLORATORY_LIBS, 
convertToBson(library)));
                        return true;
                } else {
-                       Document values = updateLibraryFields(library, null);
+                       Document values = addLibraryFields(library);
                        if (reinstall) {
                                
values.append(libraryFieldFilter(LIB_INSTALL_DATE), null);
                                
values.append(libraryFieldFilter(LIB_ERROR_MESSAGE), null);
@@ -242,7 +244,7 @@ public class ExploratoryLibDAO extends BaseDAO {
                                        push(COMPUTATIONAL_LIBS + "." + 
computationalName, convertToBson(library)));
                        return true;
                } else {
-                       Document values = 
updateComputationalLibraryFields(computationalName, library, null);
+                       Document values = 
addComputationalLibraryFields(computationalName, library);
                        if (reinstall) {
                                
values.append(computationalLibraryFieldFilter(computationalName, 
LIB_INSTALL_DATE), null);
                                
values.append(computationalLibraryFieldFilter(computationalName, 
LIB_ERROR_MESSAGE), null);
@@ -313,6 +315,15 @@ public class ExploratoryLibDAO extends BaseDAO {
                return and(eq(LIB_GROUP, group), eq(LIB_NAME, name));
        }
 
+       private Document addLibraryFields(LibInstallDTO lib) {
+               Document values = new Document(libraryFieldFilter(STATUS), 
lib.getStatus());
+               if (lib.getVersion() != null) {
+                       values.append(libraryFieldFilter(LIB_VERSION), 
lib.getVersion());
+               }
+
+               return values;
+       }
+
        private Document updateLibraryFields(LibInstallDTO lib, Date uptime) {
                Document values = new Document(libraryFieldFilter(STATUS), 
lib.getStatus());
                if (lib.getVersion() != null) {
@@ -321,7 +332,12 @@ public class ExploratoryLibDAO extends BaseDAO {
                if (uptime != null) {
                        values.append(libraryFieldFilter(LIB_INSTALL_DATE), 
uptime);
                }
-
+               if (lib.getAvailableVersions() != null) {
+                       
values.append(libraryFieldFilter(LIB_AVAILABLE_VERSION), 
lib.getAvailableVersions());
+               }
+               if (lib.getAddedPackages() != null) {
+                       values.append(libraryFieldFilter(LIB_ADDED_PACKAGES), 
lib.getAddedPackages());
+               }
                if (lib.getErrorMessage() != null) {
                        values.append(libraryFieldFilter(LIB_ERROR_MESSAGE),
                                        
DateRemoverUtil.removeDateFormErrorMessage(lib.getErrorMessage()));
@@ -330,6 +346,15 @@ public class ExploratoryLibDAO extends BaseDAO {
                return values;
        }
 
+       private Document addComputationalLibraryFields(String computational, 
LibInstallDTO lib) {
+               Document values = new 
Document(computationalLibraryFieldFilter(computational, STATUS), 
lib.getStatus());
+               if (lib.getVersion() != null) {
+                       
values.append(computationalLibraryFieldFilter(computational, LIB_VERSION), 
lib.getVersion());
+               }
+
+               return values;
+       }
+
        private Document updateComputationalLibraryFields(String computational, 
LibInstallDTO lib, Date uptime) {
                Document values = new 
Document(computationalLibraryFieldFilter(computational, STATUS), 
lib.getStatus());
                if (lib.getVersion() != null) {
@@ -338,7 +363,12 @@ public class ExploratoryLibDAO extends BaseDAO {
                if (uptime != null) {
                        
values.append(computationalLibraryFieldFilter(computational, LIB_INSTALL_DATE), 
uptime);
                }
-
+               if (lib.getAvailableVersions() != null) {
+                       
values.append(computationalLibraryFieldFilter(computational, 
LIB_AVAILABLE_VERSION), lib.getAvailableVersions());
+               }
+               if (lib.getAddedPackages() != null) {
+                       
values.append(computationalLibraryFieldFilter(computational, 
LIB_ADDED_PACKAGES), lib.getAddedPackages());
+               }
                if (lib.getErrorMessage() != null) {
                        
values.append(computationalLibraryFieldFilter(computational, LIB_ERROR_MESSAGE),
                                        
DateRemoverUtil.removeDateFormErrorMessage(lib.getErrorMessage()));


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@dlab.apache.org
For additional commands, e-mail: commits-h...@dlab.apache.org

Reply via email to