This is an automated email from the ASF dual-hosted git repository. ofuks pushed a commit to branch audit in repository https://gitbox.apache.org/repos/asf/incubator-dlab.git
commit 2c5c0f7419d3035b92c9531ec35e28a3245c1434 Author: Oleh Fuks <olegfuk...@gmail.com> AuthorDate: Tue Jun 9 14:17:53 2020 +0300 Added endpoint to retrieve audit --- .../src/main/java/com/epam/dlab/backendapi/dao/AuditDAO.java | 4 ++++ .../main/java/com/epam/dlab/backendapi/dao/AuditDAOImpl.java | 7 +++++++ .../main/java/com/epam/dlab/backendapi/domain/AuditDTO.java | 4 ++++ .../java/com/epam/dlab/backendapi/resources/AuditResource.java | 10 +++++++++- .../java/com/epam/dlab/backendapi/service/AuditService.java | 4 ++++ .../epam/dlab/backendapi/service/impl/AuditServiceImpl.java | 7 +++++++ 6 files changed, 35 insertions(+), 1 deletion(-) diff --git a/services/self-service/src/main/java/com/epam/dlab/backendapi/dao/AuditDAO.java b/services/self-service/src/main/java/com/epam/dlab/backendapi/dao/AuditDAO.java index d757758..3c9d825 100644 --- a/services/self-service/src/main/java/com/epam/dlab/backendapi/dao/AuditDAO.java +++ b/services/self-service/src/main/java/com/epam/dlab/backendapi/dao/AuditDAO.java @@ -21,6 +21,10 @@ package com.epam.dlab.backendapi.dao; import com.epam.dlab.backendapi.domain.AuditDTO; +import java.util.List; + public interface AuditDAO { void save(AuditDTO audit); + + List<AuditDTO> getAudit(); } diff --git a/services/self-service/src/main/java/com/epam/dlab/backendapi/dao/AuditDAOImpl.java b/services/self-service/src/main/java/com/epam/dlab/backendapi/dao/AuditDAOImpl.java index 987d947..234011f 100644 --- a/services/self-service/src/main/java/com/epam/dlab/backendapi/dao/AuditDAOImpl.java +++ b/services/self-service/src/main/java/com/epam/dlab/backendapi/dao/AuditDAOImpl.java @@ -21,6 +21,8 @@ package com.epam.dlab.backendapi.dao; import com.epam.dlab.backendapi.domain.AuditDTO; +import java.util.List; + public class AuditDAOImpl extends BaseDAO implements AuditDAO { private final static String AUDIT_COLLECTION = "audit"; @@ -28,4 +30,9 @@ public class AuditDAOImpl extends BaseDAO implements AuditDAO { public void save(AuditDTO audit) { insertOne(AUDIT_COLLECTION, audit); } + + @Override + public List<AuditDTO> getAudit() { + return find(AUDIT_COLLECTION, AuditDTO.class); + } } diff --git a/services/self-service/src/main/java/com/epam/dlab/backendapi/domain/AuditDTO.java b/services/self-service/src/main/java/com/epam/dlab/backendapi/domain/AuditDTO.java index 6eb6acf..5af65cd 100644 --- a/services/self-service/src/main/java/com/epam/dlab/backendapi/domain/AuditDTO.java +++ b/services/self-service/src/main/java/com/epam/dlab/backendapi/domain/AuditDTO.java @@ -19,16 +19,20 @@ package com.epam.dlab.backendapi.domain; +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import lombok.Builder; import lombok.Data; +import java.util.Date; import java.util.List; @Data @Builder +@JsonIgnoreProperties(ignoreUnknown = true) public class AuditDTO { private final String user; private final AuditActionEnum action; private final String resourceName; private final List<String> info; + private Date timestamp; } diff --git a/services/self-service/src/main/java/com/epam/dlab/backendapi/resources/AuditResource.java b/services/self-service/src/main/java/com/epam/dlab/backendapi/resources/AuditResource.java index f6a2004..3dccb90 100644 --- a/services/self-service/src/main/java/com/epam/dlab/backendapi/resources/AuditResource.java +++ b/services/self-service/src/main/java/com/epam/dlab/backendapi/resources/AuditResource.java @@ -27,8 +27,10 @@ import io.dropwizard.auth.Auth; import javax.validation.Valid; import javax.ws.rs.Consumes; +import javax.ws.rs.GET; import javax.ws.rs.POST; import javax.ws.rs.Path; +import javax.ws.rs.Produces; import javax.ws.rs.core.MediaType; import javax.ws.rs.core.Response; @@ -43,8 +45,14 @@ public class AuditResource { @POST @Consumes(MediaType.APPLICATION_JSON) - public Response createEndpoint(@Auth UserInfo userInfo, @Valid AuditCreateDTO auditCreateDTO) { + public Response saveAudit(@Auth UserInfo userInfo, @Valid AuditCreateDTO auditCreateDTO) { auditService.save(userInfo.getName(), auditCreateDTO); return Response.ok().build(); } + + @GET + @Produces(MediaType.APPLICATION_JSON) + public Response getAudit(@Auth UserInfo userInfo) { + return Response.ok(auditService.getAudit()).build(); + } } diff --git a/services/self-service/src/main/java/com/epam/dlab/backendapi/service/AuditService.java b/services/self-service/src/main/java/com/epam/dlab/backendapi/service/AuditService.java index 785c59b..e3cf50c 100644 --- a/services/self-service/src/main/java/com/epam/dlab/backendapi/service/AuditService.java +++ b/services/self-service/src/main/java/com/epam/dlab/backendapi/service/AuditService.java @@ -22,8 +22,12 @@ package com.epam.dlab.backendapi.service; import com.epam.dlab.backendapi.domain.AuditCreateDTO; import com.epam.dlab.backendapi.domain.AuditDTO; +import java.util.List; + public interface AuditService { void save(AuditDTO audit); void save(String user, AuditCreateDTO audit); + + List<AuditDTO> getAudit(); } diff --git a/services/self-service/src/main/java/com/epam/dlab/backendapi/service/impl/AuditServiceImpl.java b/services/self-service/src/main/java/com/epam/dlab/backendapi/service/impl/AuditServiceImpl.java index d35e00f..c2d17e0 100644 --- a/services/self-service/src/main/java/com/epam/dlab/backendapi/service/impl/AuditServiceImpl.java +++ b/services/self-service/src/main/java/com/epam/dlab/backendapi/service/impl/AuditServiceImpl.java @@ -26,6 +26,8 @@ import com.epam.dlab.backendapi.domain.AuditDTO; import com.epam.dlab.backendapi.service.AuditService; import com.google.inject.Inject; +import java.util.List; + public class AuditServiceImpl implements AuditService { private final AuditDAO auditDAO; @@ -50,4 +52,9 @@ public class AuditServiceImpl implements AuditService { auditDAO.save(auditDTO); } + + @Override + public List<AuditDTO> getAudit() { + return auditDAO.getAudit(); + } } --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@dlab.apache.org For additional commands, e-mail: commits-h...@dlab.apache.org