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

bhliva pushed a commit to branch feature/projects
in repository https://gitbox.apache.org/repos/asf/incubator-dlab.git


The following commit(s) were added to refs/heads/feature/projects by this push:
     new 678d1d6  DLAB-630 added API for getting list of endpoints
678d1d6 is described below

commit 678d1d651d93c7e26561725c837d4514c25f2c05
Author: bhliva <[email protected]>
AuthorDate: Mon May 27 13:44:42 2019 +0300

    DLAB-630 added API for getting list of endpoints
---
 .../main/java/com/epam/dlab/backendapi/dao/EndpointDAO.java  |  2 ++
 .../java/com/epam/dlab/backendapi/dao/EndpointDAOImpl.java   |  6 ++++++
 .../com/epam/dlab/backendapi/resources/EndpointResource.java | 12 ++++++++++++
 .../com/epam/dlab/backendapi/service/EndpointService.java    |  3 +++
 .../dlab/backendapi/service/impl/EndpointServiceImpl.java    |  7 +++++++
 5 files changed, 30 insertions(+)

diff --git 
a/services/self-service/src/main/java/com/epam/dlab/backendapi/dao/EndpointDAO.java
 
b/services/self-service/src/main/java/com/epam/dlab/backendapi/dao/EndpointDAO.java
index 27aa6d7..9b85bc3 100644
--- 
a/services/self-service/src/main/java/com/epam/dlab/backendapi/dao/EndpointDAO.java
+++ 
b/services/self-service/src/main/java/com/epam/dlab/backendapi/dao/EndpointDAO.java
@@ -2,9 +2,11 @@ package com.epam.dlab.backendapi.dao;
 
 import com.epam.dlab.backendapi.domain.EndpointDTO;
 
+import java.util.List;
 import java.util.Optional;
 
 public interface EndpointDAO {
+       List<EndpointDTO> getEndpoints();
        Optional<EndpointDTO> get(String name);
 
        void create(EndpointDTO endpointDTO);
diff --git 
a/services/self-service/src/main/java/com/epam/dlab/backendapi/dao/EndpointDAOImpl.java
 
b/services/self-service/src/main/java/com/epam/dlab/backendapi/dao/EndpointDAOImpl.java
index a7c0e70..a614773 100644
--- 
a/services/self-service/src/main/java/com/epam/dlab/backendapi/dao/EndpointDAOImpl.java
+++ 
b/services/self-service/src/main/java/com/epam/dlab/backendapi/dao/EndpointDAOImpl.java
@@ -3,6 +3,7 @@ package com.epam.dlab.backendapi.dao;
 import com.epam.dlab.backendapi.domain.EndpointDTO;
 import org.bson.conversions.Bson;
 
+import java.util.List;
 import java.util.Optional;
 
 import static com.mongodb.client.model.Filters.eq;
@@ -12,6 +13,11 @@ public class EndpointDAOImpl extends BaseDAO implements 
EndpointDAO {
        private static final String ENDPOINTS_COLLECTION = "endpoints";
 
        @Override
+       public List<EndpointDTO> getEndpoints() {
+               return find(ENDPOINTS_COLLECTION, EndpointDTO.class);
+       }
+
+       @Override
        public Optional<EndpointDTO> get(String name) {
                return findOne(ENDPOINTS_COLLECTION, endpointCondition(name), 
EndpointDTO.class);
        }
diff --git 
a/services/self-service/src/main/java/com/epam/dlab/backendapi/resources/EndpointResource.java
 
b/services/self-service/src/main/java/com/epam/dlab/backendapi/resources/EndpointResource.java
index 0a12c4e..ff206df 100644
--- 
a/services/self-service/src/main/java/com/epam/dlab/backendapi/resources/EndpointResource.java
+++ 
b/services/self-service/src/main/java/com/epam/dlab/backendapi/resources/EndpointResource.java
@@ -77,6 +77,18 @@ public class EndpointResource {
                return Response.ok(endpointService.get(name)).build();
        }
 
+       @Operation(summary = "Get endpoints available in system", tags = 
"endpoint")
+       @ApiResponses({
+                       @ApiResponse(responseCode = "200", description = 
"Return information about endpoints",
+                                       content = @Content(mediaType = 
MediaType.APPLICATION_JSON, schema =
+                                       @Schema(implementation = 
EndpointDTO.class)))
+       })
+       @GET
+       @Produces(MediaType.APPLICATION_JSON)
+       public Response getEndpoints(@Parameter(hidden = true) @Auth UserInfo 
userInfo) {
+               return Response.ok(endpointService.getEndpoints()).build();
+       }
+
 
        @Operation(summary = "Remove endpoint", tags = "endpoint")
        @ApiResponses({
diff --git 
a/services/self-service/src/main/java/com/epam/dlab/backendapi/service/EndpointService.java
 
b/services/self-service/src/main/java/com/epam/dlab/backendapi/service/EndpointService.java
index 1f3161f..fca6c5d 100644
--- 
a/services/self-service/src/main/java/com/epam/dlab/backendapi/service/EndpointService.java
+++ 
b/services/self-service/src/main/java/com/epam/dlab/backendapi/service/EndpointService.java
@@ -2,7 +2,10 @@ package com.epam.dlab.backendapi.service;
 
 import com.epam.dlab.backendapi.domain.EndpointDTO;
 
+import java.util.List;
+
 public interface EndpointService {
+       List<EndpointDTO> getEndpoints();
        EndpointDTO get(String name);
 
        void create(EndpointDTO endpointDTO);
diff --git 
a/services/self-service/src/main/java/com/epam/dlab/backendapi/service/impl/EndpointServiceImpl.java
 
b/services/self-service/src/main/java/com/epam/dlab/backendapi/service/impl/EndpointServiceImpl.java
index a4586a8..564427e 100644
--- 
a/services/self-service/src/main/java/com/epam/dlab/backendapi/service/impl/EndpointServiceImpl.java
+++ 
b/services/self-service/src/main/java/com/epam/dlab/backendapi/service/impl/EndpointServiceImpl.java
@@ -7,6 +7,8 @@ import com.epam.dlab.exceptions.ResourceConflictException;
 import com.epam.dlab.exceptions.ResourceNotFoundException;
 import com.google.inject.Inject;
 
+import java.util.List;
+
 public class EndpointServiceImpl implements EndpointService {
        private final EndpointDAO endpointDAO;
 
@@ -16,6 +18,11 @@ public class EndpointServiceImpl implements EndpointService {
        }
 
        @Override
+       public List<EndpointDTO> getEndpoints() {
+               return null;
+       }
+
+       @Override
        public EndpointDTO get(String name) {
                return endpointDAO.get(name)
                                .orElseThrow(() -> new 
ResourceNotFoundException("Endpoint with name " + name + " not found"));


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

Reply via email to