added resource-types filter
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 edc1f50..cd7b086 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
@@ -27,5 +27,5 @@
public interface AuditDAO {
void save(AuditDTO audit);
- List<AuditPaginationDTO> getAudit(List<String> users, List<String> projects, List<String> resourceNames, String dateStart, String dateEnd, int pageNumber, int pageSize);
+ List<AuditPaginationDTO> getAudit(List<String> users, List<String> projects, List<String> resourceNames, List<String> resourceTypes, String dateStart, String dateEnd, int pageNumber, int pageSize);
}
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 cde9380..6ae8cbf 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
@@ -73,11 +73,11 @@
}
@Override
- public List<AuditPaginationDTO> getAudit(List<String> users, List<String> projects, List<String> resourceNames, String dateStart, String dateEnd,
+ public List<AuditPaginationDTO> getAudit(List<String> users, List<String> projects, List<String> resourceNames, List<String> resourceTypes, String dateStart, String dateEnd,
int pageNumber, int pageSize) {
List<Bson> valuesPipeline = new ArrayList<>();
List<Bson> countPipeline = new ArrayList<>();
- List<Bson> matchCriteria = matchCriteria(users, projects, resourceNames, dateStart, dateEnd);
+ List<Bson> matchCriteria = matchCriteria(users, projects, resourceNames, resourceTypes, dateStart, dateEnd);
if (!matchCriteria.isEmpty()) {
Bson match = match(Filters.and(matchCriteria));
valuesPipeline.add(match);
@@ -99,11 +99,12 @@
.collect(Collectors.toList());
}
- private List<Bson> matchCriteria(List<String> users, List<String> projects, List<String> resourceNames, String dateStart, String dateEnd) {
+ private List<Bson> matchCriteria(List<String> users, List<String> projects, List<String> resourceNames, List<String> resourceTypes, String dateStart, String dateEnd) {
List<Bson> searchCriteria = new ArrayList<>();
inCriteria(searchCriteria, users, USER);
inCriteria(searchCriteria, projects, PROJECT);
inCriteria(searchCriteria, resourceNames, RESOURCE_NAME_FIELD);
+ inCriteria(searchCriteria, resourceTypes, RESOURCE_TYPE_FIELD);
if (StringUtils.isNotEmpty(dateStart)) {
Instant from = getInstant(dateStart);
searchCriteria.add(gte(TIMESTAMP_FIELD, from));
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 c08350e..188f80d 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
@@ -58,12 +58,13 @@
@QueryParam("users") StringList users,
@QueryParam("projects") StringList projects,
@QueryParam("resource-names") StringList resourceNames,
+ @QueryParam("resource-types") StringList resourceTypes,
@QueryParam("date-start") String dateStart,
@QueryParam("date-end") String dateEnd,
@QueryParam("page-number") int pageNumber,
@QueryParam("page-size") int pageSize) {
return Response
- .ok(auditService.getAudit(users, projects, resourceNames, dateStart, dateEnd, pageNumber, pageSize))
+ .ok(auditService.getAudit(users, projects, resourceNames, resourceTypes, dateStart, dateEnd, pageNumber, pageSize))
.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 8ea9afd..81bbec7 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
@@ -30,5 +30,5 @@
void save(String user, AuditCreateDTO audit);
- List<AuditPaginationDTO> getAudit(List<String> users, List<String> projects, List<String> resourceNames, String dateStart, String dateEnd, int pageNumber, int pageSize);
+ List<AuditPaginationDTO> getAudit(List<String> users, List<String> projects, List<String> resourceNames, List<String> resourceTypes, String dateStart, String dateEnd, int pageNumber, int pageSize);
}
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 6c86411..0e7aebc 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
@@ -57,7 +57,8 @@
}
@Override
- public List<AuditPaginationDTO> getAudit(List<String> users, List<String> projects, List<String> resourceNames, String dateStart, String dateEnd, int pageNumber, int pageSize) {
- return auditDAO.getAudit(users, projects, resourceNames, dateStart, dateEnd, pageNumber, pageSize);
+ public List<AuditPaginationDTO> getAudit(List<String> users, List<String> projects, List<String> resourceNames, List<String> resourceTypes,
+ String dateStart, String dateEnd, int pageNumber, int pageSize) {
+ return auditDAO.getAudit(users, projects, resourceNames, resourceTypes, dateStart, dateEnd, pageNumber, pageSize);
}
}