import 정리
This commit is contained in:
@@ -2,7 +2,6 @@ package com.eactive.testmaster.api.condition;
|
||||
|
||||
import com.eactive.testmaster.api.dto.MockRequest;
|
||||
import com.eactive.testmaster.api.entity.MockCondition;
|
||||
|
||||
import java.util.Map;
|
||||
|
||||
public interface ConditionMatcher {
|
||||
|
||||
@@ -1,11 +1,10 @@
|
||||
package com.eactive.testmaster.api.condition;
|
||||
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.function.Function;
|
||||
import java.util.stream.Collectors;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
@Service(value = "ConditionMatcherService")
|
||||
public class ConditionMatcherService {
|
||||
|
||||
@@ -2,9 +2,8 @@ package com.eactive.testmaster.api.condition;
|
||||
|
||||
import com.eactive.testmaster.api.dto.MockRequest;
|
||||
import com.eactive.testmaster.api.entity.MockCondition;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import java.util.Map;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
@Component
|
||||
public class HeaderMatcher implements ConditionMatcher {
|
||||
|
||||
@@ -4,9 +4,8 @@ import com.eactive.testmaster.api.dto.MockRequest;
|
||||
import com.eactive.testmaster.api.entity.MockCondition;
|
||||
import com.jayway.jsonpath.JsonPath;
|
||||
import com.jayway.jsonpath.PathNotFoundException;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import java.util.Map;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
|
||||
@Component
|
||||
|
||||
@@ -2,9 +2,8 @@ package com.eactive.testmaster.api.condition;
|
||||
|
||||
import com.eactive.testmaster.api.dto.MockRequest;
|
||||
import com.eactive.testmaster.api.entity.MockCondition;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import java.util.Map;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
@Component
|
||||
public class PathMatcher implements ConditionMatcher {
|
||||
|
||||
@@ -2,9 +2,8 @@ package com.eactive.testmaster.api.condition;
|
||||
|
||||
import com.eactive.testmaster.api.dto.MockRequest;
|
||||
import com.eactive.testmaster.api.entity.MockCondition;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import java.util.Map;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
|
||||
@Component
|
||||
|
||||
@@ -7,6 +7,11 @@ import com.eactive.testmaster.api.entity.MockCondition;
|
||||
import com.eactive.testmaster.api.entity.MockResponse;
|
||||
import com.eactive.testmaster.api.entity.MockRoute;
|
||||
import com.eactive.testmaster.api.service.MockRouteService;
|
||||
import java.io.IOException;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.stream.Collectors;
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
import org.springframework.http.HttpHeaders;
|
||||
@@ -15,12 +20,6 @@ import org.springframework.http.ResponseEntity;
|
||||
import org.springframework.util.AntPathMatcher;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import java.io.IOException;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
@RestController
|
||||
public class MockApiController {
|
||||
|
||||
|
||||
@@ -3,6 +3,8 @@ package com.eactive.testmaster.api.controller;
|
||||
import com.eactive.testmaster.api.entity.MockRoute;
|
||||
import com.eactive.testmaster.api.service.MockRouteService;
|
||||
import com.eactive.testmaster.config.CsrfExclusionService;
|
||||
import javax.annotation.PostConstruct;
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
@@ -11,9 +13,6 @@ import org.springframework.web.bind.annotation.RequestMethod;
|
||||
import org.springframework.web.servlet.mvc.method.RequestMappingInfo;
|
||||
import org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping;
|
||||
|
||||
import javax.annotation.PostConstruct;
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
|
||||
@Component
|
||||
public class MockApiHandlerMapping {
|
||||
|
||||
|
||||
@@ -7,6 +7,8 @@ import com.eactive.testmaster.api.dto.MockRouteUpdateDTO;
|
||||
import com.eactive.testmaster.api.entity.MockRoute;
|
||||
import com.eactive.testmaster.api.mapper.MockRouteMapper;
|
||||
import com.eactive.testmaster.api.service.MockRouteService;
|
||||
import java.util.List;
|
||||
import javax.annotation.PostConstruct;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.data.domain.Page;
|
||||
import org.springframework.data.domain.Pageable;
|
||||
@@ -15,12 +17,13 @@ import org.springframework.stereotype.Controller;
|
||||
import org.springframework.ui.ModelMap;
|
||||
import org.springframework.validation.BindingResult;
|
||||
import org.springframework.validation.Validator;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.ModelAttribute;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RequestParam;
|
||||
import org.springframework.web.servlet.ModelAndView;
|
||||
|
||||
import javax.annotation.PostConstruct;
|
||||
import java.util.List;
|
||||
|
||||
@Controller
|
||||
@RequestMapping("/mgmt/routes")
|
||||
public class MockRouteMgmtController {
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
package com.eactive.testmaster.api.dto;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import java.io.IOException;
|
||||
import java.util.Collections;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
import java.util.stream.Collectors;
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
|
||||
public class MockRequest {
|
||||
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
package com.eactive.testmaster.api.dto;
|
||||
|
||||
import javax.validation.constraints.Min;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import javax.validation.constraints.Min;
|
||||
|
||||
public class MockResponseDTO {
|
||||
|
||||
|
||||
@@ -1,11 +1,10 @@
|
||||
package com.eactive.testmaster.api.dto;
|
||||
|
||||
import com.eactive.testmaster.common.validator.UniqueRoute;
|
||||
|
||||
import javax.validation.constraints.NotEmpty;
|
||||
import javax.validation.constraints.Size;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import javax.validation.constraints.NotEmpty;
|
||||
import javax.validation.constraints.Size;
|
||||
|
||||
@UniqueRoute(path = "pathPattern", method = "method")
|
||||
public class MockRouteRegisterDTO {
|
||||
|
||||
@@ -5,7 +5,6 @@ import com.eactive.testmaster.common.search.BaseSearch;
|
||||
import com.eactive.testmaster.common.search.ColumnSearchModel;
|
||||
import com.eactive.testmaster.common.search.SearchCondition;
|
||||
import com.eactive.testmaster.common.search.SearchModel;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
package com.eactive.testmaster.api.dto;
|
||||
|
||||
import javax.validation.constraints.NotEmpty;
|
||||
import javax.validation.constraints.Size;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import javax.validation.constraints.NotEmpty;
|
||||
import javax.validation.constraints.Size;
|
||||
|
||||
public class MockRouteUpdateDTO {
|
||||
|
||||
|
||||
@@ -1,7 +1,13 @@
|
||||
package com.eactive.testmaster.api.entity;
|
||||
|
||||
|
||||
import javax.persistence.*;
|
||||
import javax.persistence.Entity;
|
||||
import javax.persistence.GeneratedValue;
|
||||
import javax.persistence.GenerationType;
|
||||
import javax.persistence.Id;
|
||||
import javax.persistence.JoinColumn;
|
||||
import javax.persistence.ManyToOne;
|
||||
import javax.persistence.Table;
|
||||
|
||||
@Entity
|
||||
@Table(name = "MOCK_RESPONSE_CONDITION")
|
||||
|
||||
@@ -1,10 +1,23 @@
|
||||
package com.eactive.testmaster.api.entity;
|
||||
|
||||
import javax.persistence.*;
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import javax.persistence.CascadeType;
|
||||
import javax.persistence.CollectionTable;
|
||||
import javax.persistence.Column;
|
||||
import javax.persistence.ElementCollection;
|
||||
import javax.persistence.Entity;
|
||||
import javax.persistence.GeneratedValue;
|
||||
import javax.persistence.GenerationType;
|
||||
import javax.persistence.Id;
|
||||
import javax.persistence.JoinColumn;
|
||||
import javax.persistence.Lob;
|
||||
import javax.persistence.ManyToOne;
|
||||
import javax.persistence.MapKeyColumn;
|
||||
import javax.persistence.OneToMany;
|
||||
import javax.persistence.Table;
|
||||
|
||||
@Entity
|
||||
@Table(name = "MOCK_RESPONSE")
|
||||
|
||||
@@ -1,8 +1,15 @@
|
||||
package com.eactive.testmaster.api.entity;
|
||||
|
||||
import javax.persistence.*;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import javax.persistence.CascadeType;
|
||||
import javax.persistence.Entity;
|
||||
import javax.persistence.FetchType;
|
||||
import javax.persistence.GeneratedValue;
|
||||
import javax.persistence.GenerationType;
|
||||
import javax.persistence.Id;
|
||||
import javax.persistence.OneToMany;
|
||||
import javax.persistence.Table;
|
||||
|
||||
|
||||
@Entity
|
||||
|
||||
@@ -7,17 +7,16 @@ import com.eactive.testmaster.api.dto.MockRouteUpdateDTO;
|
||||
import com.eactive.testmaster.api.entity.MockResponse;
|
||||
import com.eactive.testmaster.api.entity.MockRoute;
|
||||
import com.eactive.testmaster.common.mapper.CommonMapper;
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import org.mapstruct.Mapper;
|
||||
import org.mapstruct.Mapping;
|
||||
import org.mapstruct.Named;
|
||||
import org.mapstruct.ReportingPolicy;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
@Mapper(componentModel = "spring",
|
||||
uses = {CommonMapper.class},
|
||||
unmappedTargetPolicy = ReportingPolicy.IGNORE)
|
||||
|
||||
@@ -5,6 +5,10 @@ import com.eactive.testmaster.api.entity.MockResponse;
|
||||
import com.eactive.testmaster.api.entity.MockRoute;
|
||||
import com.eactive.testmaster.api.repository.MockRouteRepository;
|
||||
import com.eactive.testmaster.common.exception.NotFoundException;
|
||||
import java.lang.reflect.InvocationTargetException;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import javax.transaction.Transactional;
|
||||
import org.apache.commons.beanutils.BeanUtils;
|
||||
import org.hibernate.Hibernate;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
@@ -13,11 +17,6 @@ import org.springframework.data.domain.Pageable;
|
||||
import org.springframework.data.jpa.domain.Specification;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import javax.transaction.Transactional;
|
||||
import java.lang.reflect.InvocationTargetException;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
@Service
|
||||
@Transactional
|
||||
public class MockRouteService {
|
||||
|
||||
@@ -2,13 +2,12 @@ package com.eactive.testmaster.client.controller;
|
||||
|
||||
import com.eactive.testmaster.server.entity.Server;
|
||||
import com.eactive.testmaster.server.repository.ServerRepository;
|
||||
import java.util.List;
|
||||
import org.springframework.security.access.annotation.Secured;
|
||||
import org.springframework.stereotype.Controller;
|
||||
import org.springframework.ui.ModelMap;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Controller
|
||||
public class ApiClientPageController {
|
||||
|
||||
|
||||
+7
-5
@@ -12,12 +12,14 @@ import com.eactive.testmaster.client.service.ApiRequestMgmtService;
|
||||
import com.eactive.testmaster.common.util.SecurityUtil;
|
||||
import com.eactive.testmaster.user.entity.StaffUser;
|
||||
import com.eactive.testmaster.user.service.UserService;
|
||||
import javax.transaction.Transactional;
|
||||
import org.springframework.http.HttpStatus;
|
||||
import org.springframework.http.ResponseEntity;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.util.List;
|
||||
import javax.transaction.Transactional;
|
||||
import org.springframework.http.ResponseEntity;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.PathVariable;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
@RestController
|
||||
public class ApiRequestMgmtController {
|
||||
|
||||
+6
-3
@@ -7,11 +7,14 @@ import com.eactive.testmaster.client.service.ApiScenarioMgmtService;
|
||||
import com.eactive.testmaster.common.util.SecurityUtil;
|
||||
import com.eactive.testmaster.user.entity.StaffUser;
|
||||
import com.eactive.testmaster.user.service.UserService;
|
||||
import java.util.List;
|
||||
import org.springframework.http.HttpStatus;
|
||||
import org.springframework.http.ResponseEntity;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.util.List;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
@RestController
|
||||
@RequestMapping("/mgmt/api_scenario")
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
package com.eactive.testmaster.client.dto;
|
||||
|
||||
import javax.validation.constraints.NotEmpty;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import javax.validation.constraints.NotEmpty;
|
||||
|
||||
public class ApiCollectionDTO {
|
||||
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
package com.eactive.testmaster.client.dto;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Comparator;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
@@ -253,60 +252,60 @@ public class ApiLayoutItemTreeBuilder {
|
||||
return siblings.get(closestIndex);
|
||||
}
|
||||
|
||||
public static void main(String[] args) {
|
||||
ApiLayoutItemDTO root = new ApiLayoutItemDTO();
|
||||
root.setId(1L);
|
||||
root.setLoutName("ROOT");
|
||||
root.setLoutItemDepth(0);
|
||||
root.setChildren(new ArrayList<>(List.of(
|
||||
new ApiLayoutItemDTO(2L, 1L, "Field", "Child 2", 1, 10, "TEST11"),
|
||||
new ApiLayoutItemDTO(3L, 1L, "Group", "Child 3", 1, 0, ""),
|
||||
new ApiLayoutItemDTO(4L, 1L, "Field", "Child 4", 1, 10, "TEST21"),
|
||||
new ApiLayoutItemDTO(5L, 1L, "Field", "Child 5", 1, 10, "TEST22"),
|
||||
// new ApiLayoutItemDTO(6L, 1L, "Group", "Child 6", 1, 0, ""),
|
||||
new ApiLayoutItemDTO(7L, 1L, "Field", "Child 7", 1, 10, "TEST31"),
|
||||
new ApiLayoutItemDTO(8L, 1L, "Field", "Child 8", 1, 10, "TEST33"),
|
||||
new ApiLayoutItemDTO(9L, 1L, "Group", "Child 9", 1, 0, ""),
|
||||
new ApiLayoutItemDTO(10L, 1L, "Field", "Child 10", 1, 10, "TEST31"),
|
||||
new ApiLayoutItemDTO(11L, 1L, "Field", "Child 11", 1, 10, "TEST33")
|
||||
)));
|
||||
|
||||
for (ApiLayoutItemDTO item : root.getChildren()) {
|
||||
item.setChildOccCnt(1);
|
||||
}
|
||||
|
||||
System.out.println("Before moving:");
|
||||
printTree(root);
|
||||
|
||||
moveNodeDepth(root, getNodeById(root, 4L), getNodeById(root, 4L).getLoutItemDepth() + 1);
|
||||
printTree(root);
|
||||
moveNodeDepth(root, getNodeById(root, 5L), getNodeById(root, 5L).getLoutItemDepth() + 1);
|
||||
printTree(root);
|
||||
moveNodeDepth(root, getNodeById(root, 7L), getNodeById(root, 7L).getLoutItemDepth() + 1);
|
||||
printTree(root);
|
||||
moveNodeDepth(root, getNodeById(root, 8L), getNodeById(root, 8L).getLoutItemDepth() + 1);
|
||||
printTree(root);
|
||||
moveNodeDepth(root, getNodeById(root, 10L), getNodeById(root, 10L).getLoutItemDepth() + 1);
|
||||
printTree(root);
|
||||
moveNodeDepth(root, getNodeById(root, 11L), getNodeById(root, 11L).getLoutItemDepth() + 1);
|
||||
printTree(root);
|
||||
moveNodeDepth(root, getNodeById(root, 9L), getNodeById(root, 9L).getLoutItemDepth() + 1);
|
||||
printTree(root);
|
||||
// moveNodeDepth(root, getNodeById(root, 6L), getNodeById(root, 6L).getLoutItemDepth() + 1);
|
||||
// public static void main(String[] args) {
|
||||
// ApiLayoutItemDTO root = new ApiLayoutItemDTO();
|
||||
// root.setId(1L);
|
||||
// root.setLoutName("ROOT");
|
||||
// root.setLoutItemDepth(0);
|
||||
// root.setChildren(new ArrayList<>(List.of(
|
||||
// new ApiLayoutItemDTO(2L, 1L, "Field", "Child 2", 1, 10, "TEST11"),
|
||||
// new ApiLayoutItemDTO(3L, 1L, "Group", "Child 3", 1, 0, ""),
|
||||
// new ApiLayoutItemDTO(4L, 1L, "Field", "Child 4", 1, 10, "TEST21"),
|
||||
// new ApiLayoutItemDTO(5L, 1L, "Field", "Child 5", 1, 10, "TEST22"),
|
||||
//// new ApiLayoutItemDTO(6L, 1L, "Group", "Child 6", 1, 0, ""),
|
||||
// new ApiLayoutItemDTO(7L, 1L, "Field", "Child 7", 1, 10, "TEST31"),
|
||||
// new ApiLayoutItemDTO(8L, 1L, "Field", "Child 8", 1, 10, "TEST33"),
|
||||
// new ApiLayoutItemDTO(9L, 1L, "Group", "Child 9", 1, 0, ""),
|
||||
// new ApiLayoutItemDTO(10L, 1L, "Field", "Child 10", 1, 10, "TEST31"),
|
||||
// new ApiLayoutItemDTO(11L, 1L, "Field", "Child 11", 1, 10, "TEST33")
|
||||
// )));
|
||||
//
|
||||
// for (ApiLayoutItemDTO item : root.getChildren()) {
|
||||
// item.setChildOccCnt(1);
|
||||
// }
|
||||
//
|
||||
// System.out.println("Before moving:");
|
||||
// printTree(root);
|
||||
moveNodeDepth(root, getNodeById(root, 9L), getNodeById(root, 9L).getLoutItemDepth() - 1);
|
||||
printTree(root);
|
||||
|
||||
moveNodeDepth(root, getNodeById(root, 9L), getNodeById(root, 9L).getLoutItemDepth() - 1);
|
||||
printTree(root);
|
||||
|
||||
moveNode(root, getNodeById(root, 9L), true);
|
||||
|
||||
moveNodeDepth(root, getNodeById(root, 3L), getNodeById(root, 3L).getLoutItemDepth() + 1);
|
||||
printTree(root);
|
||||
|
||||
ApiLayoutDTO layout = new ApiLayoutDTO();
|
||||
layout.setComputedLayoutItemRoot(root);
|
||||
System.out.println(layout.buildMessage());
|
||||
}
|
||||
//
|
||||
// moveNodeDepth(root, getNodeById(root, 4L), getNodeById(root, 4L).getLoutItemDepth() + 1);
|
||||
// printTree(root);
|
||||
// moveNodeDepth(root, getNodeById(root, 5L), getNodeById(root, 5L).getLoutItemDepth() + 1);
|
||||
// printTree(root);
|
||||
// moveNodeDepth(root, getNodeById(root, 7L), getNodeById(root, 7L).getLoutItemDepth() + 1);
|
||||
// printTree(root);
|
||||
// moveNodeDepth(root, getNodeById(root, 8L), getNodeById(root, 8L).getLoutItemDepth() + 1);
|
||||
// printTree(root);
|
||||
// moveNodeDepth(root, getNodeById(root, 10L), getNodeById(root, 10L).getLoutItemDepth() + 1);
|
||||
// printTree(root);
|
||||
// moveNodeDepth(root, getNodeById(root, 11L), getNodeById(root, 11L).getLoutItemDepth() + 1);
|
||||
// printTree(root);
|
||||
// moveNodeDepth(root, getNodeById(root, 9L), getNodeById(root, 9L).getLoutItemDepth() + 1);
|
||||
// printTree(root);
|
||||
//// moveNodeDepth(root, getNodeById(root, 6L), getNodeById(root, 6L).getLoutItemDepth() + 1);
|
||||
//// printTree(root);
|
||||
// moveNodeDepth(root, getNodeById(root, 9L), getNodeById(root, 9L).getLoutItemDepth() - 1);
|
||||
// printTree(root);
|
||||
//
|
||||
// moveNodeDepth(root, getNodeById(root, 9L), getNodeById(root, 9L).getLoutItemDepth() - 1);
|
||||
// printTree(root);
|
||||
//
|
||||
// moveNode(root, getNodeById(root, 9L), true);
|
||||
//
|
||||
// moveNodeDepth(root, getNodeById(root, 3L), getNodeById(root, 3L).getLoutItemDepth() + 1);
|
||||
// printTree(root);
|
||||
//
|
||||
// ApiLayoutDTO layout = new ApiLayoutDTO();
|
||||
// layout.setComputedLayoutItemRoot(root);
|
||||
// System.out.println(layout.buildMessage());
|
||||
// }
|
||||
}
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
package com.eactive.testmaster.client.dto;
|
||||
|
||||
import java.io.Serializable;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import javax.validation.constraints.NotNull;
|
||||
|
||||
public class ApiRequestDTO implements Serializable {
|
||||
|
||||
|
||||
@@ -2,7 +2,6 @@ package com.eactive.testmaster.client.dto.internal;
|
||||
|
||||
import com.eactive.testmaster.client.dto.ApiRequestDTO;
|
||||
import com.fasterxml.jackson.annotation.JsonProperty;
|
||||
import java.io.Serializable;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
@@ -1,10 +1,15 @@
|
||||
package com.eactive.testmaster.client.entity;
|
||||
|
||||
import com.eactive.testmaster.user.entity.StaffUser;
|
||||
|
||||
import javax.persistence.*;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import javax.persistence.Entity;
|
||||
import javax.persistence.Id;
|
||||
import javax.persistence.JoinColumn;
|
||||
import javax.persistence.JoinTable;
|
||||
import javax.persistence.ManyToMany;
|
||||
import javax.persistence.ManyToOne;
|
||||
import javax.persistence.Table;
|
||||
|
||||
@Entity
|
||||
@Table(name = "API_COLLECTION")
|
||||
|
||||
@@ -2,10 +2,13 @@ package com.eactive.testmaster.client.entity;
|
||||
|
||||
import com.eactive.testmaster.server.entity.Server;
|
||||
import com.eactive.testmaster.user.entity.StaffUser;
|
||||
import org.hibernate.annotations.Type;
|
||||
|
||||
import javax.persistence.*;
|
||||
import java.time.LocalDateTime;
|
||||
import javax.persistence.GeneratedValue;
|
||||
import javax.persistence.GenerationType;
|
||||
import javax.persistence.Id;
|
||||
import javax.persistence.JoinColumn;
|
||||
import javax.persistence.ManyToOne;
|
||||
import org.hibernate.annotations.Type;
|
||||
|
||||
public class ApiRequestHistory {
|
||||
@Id
|
||||
|
||||
@@ -2,9 +2,13 @@ package com.eactive.testmaster.client.entity;
|
||||
|
||||
import com.eactive.testmaster.server.entity.Server;
|
||||
import com.eactive.testmaster.user.entity.StaffUser;
|
||||
|
||||
import javax.persistence.*;
|
||||
import java.util.Objects;
|
||||
import javax.persistence.Entity;
|
||||
import javax.persistence.Id;
|
||||
import javax.persistence.JoinColumn;
|
||||
import javax.persistence.Lob;
|
||||
import javax.persistence.ManyToOne;
|
||||
import javax.persistence.Table;
|
||||
|
||||
|
||||
@Entity
|
||||
|
||||
@@ -1,8 +1,12 @@
|
||||
package com.eactive.testmaster.client.entity;
|
||||
|
||||
import com.eactive.testmaster.user.entity.StaffUser;
|
||||
|
||||
import javax.persistence.*;
|
||||
import javax.persistence.Entity;
|
||||
import javax.persistence.Id;
|
||||
import javax.persistence.JoinColumn;
|
||||
import javax.persistence.Lob;
|
||||
import javax.persistence.ManyToOne;
|
||||
import javax.persistence.Table;
|
||||
|
||||
@Entity
|
||||
@Table(name = "API_SCENARIO")
|
||||
|
||||
@@ -4,7 +4,6 @@ import com.eactive.testmaster.client.dto.ApiLayoutItemDTO;
|
||||
import com.eactive.testmaster.client.entity.ApiLayoutItem;
|
||||
import com.eactive.testmaster.client.repository.ApiLayoutItemRepository;
|
||||
import com.eactive.testmaster.common.mapper.CommonMapper;
|
||||
import com.fasterxml.jackson.databind.ObjectMapper;
|
||||
import java.util.List;
|
||||
import org.mapstruct.Mapper;
|
||||
import org.mapstruct.ReportingPolicy;
|
||||
|
||||
@@ -3,13 +3,12 @@ package com.eactive.testmaster.client.mapper;
|
||||
import com.eactive.testmaster.client.dto.ApiScenarioDTO;
|
||||
import com.eactive.testmaster.client.entity.ApiScenario;
|
||||
import com.eactive.testmaster.client.repository.ApiScenarioRepository;
|
||||
import java.util.List;
|
||||
import org.mapstruct.Mapper;
|
||||
import org.mapstruct.ReportingPolicy;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Mapper(componentModel = "spring", unmappedTargetPolicy = ReportingPolicy.IGNORE)
|
||||
@Component
|
||||
public abstract class ApiScenarioMapper {
|
||||
|
||||
@@ -2,11 +2,10 @@ package com.eactive.testmaster.client.repository;
|
||||
|
||||
import com.eactive.testmaster.client.entity.ApiCollection;
|
||||
import com.eactive.testmaster.user.entity.StaffUser;
|
||||
import java.util.List;
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public interface ApiCollectionRepository extends JpaRepository<ApiCollection, String>, JpaSpecificationExecutor<ApiCollection> {
|
||||
|
||||
List<ApiCollection> findAllByOwner(StaffUser owner);
|
||||
|
||||
@@ -2,11 +2,10 @@ package com.eactive.testmaster.client.repository;
|
||||
|
||||
import com.eactive.testmaster.client.entity.ApiScenario;
|
||||
import com.eactive.testmaster.user.entity.StaffUser;
|
||||
import java.util.List;
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public interface ApiScenarioRepository extends JpaRepository<ApiScenario, String>, JpaSpecificationExecutor<ApiScenario> {
|
||||
|
||||
List<ApiScenario> findAllByOwner(StaffUser owner);
|
||||
|
||||
@@ -6,14 +6,13 @@ import com.eactive.testmaster.client.repository.ApiCollectionRepository;
|
||||
import com.eactive.testmaster.client.repository.ApiRequestRepository;
|
||||
import com.eactive.testmaster.common.exception.NotFoundException;
|
||||
import com.eactive.testmaster.user.entity.StaffUser;
|
||||
import java.util.List;
|
||||
import java.util.UUID;
|
||||
import javax.transaction.Transactional;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.thymeleaf.util.StringUtils;
|
||||
|
||||
import javax.transaction.Transactional;
|
||||
import java.util.List;
|
||||
import java.util.UUID;
|
||||
|
||||
@Service
|
||||
@Transactional
|
||||
public class ApiRequestMgmtService {
|
||||
|
||||
@@ -1,17 +1,16 @@
|
||||
package com.eactive.testmaster.client.service;
|
||||
|
||||
import com.eactive.testmaster.client.repository.ApiRequestRepository;
|
||||
import java.sql.Connection;
|
||||
import java.sql.Statement;
|
||||
import javax.sql.DataSource;
|
||||
import javax.transaction.Transactional;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.boot.context.event.ApplicationReadyEvent;
|
||||
import org.springframework.context.ApplicationContext;
|
||||
import org.springframework.context.event.EventListener;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import javax.sql.DataSource;
|
||||
import javax.transaction.Transactional;
|
||||
import java.sql.Connection;
|
||||
import java.sql.Statement;
|
||||
|
||||
|
||||
@Service
|
||||
@Transactional
|
||||
|
||||
@@ -2,12 +2,11 @@ package com.eactive.testmaster.client.service;
|
||||
|
||||
import com.eactive.testmaster.client.entity.ApiScenario;
|
||||
import com.eactive.testmaster.client.repository.ApiScenarioRepository;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import javax.transaction.Transactional;
|
||||
import java.util.List;
|
||||
import java.util.UUID;
|
||||
import javax.transaction.Transactional;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
@Service
|
||||
@Transactional
|
||||
|
||||
@@ -7,7 +7,6 @@ import io.netty.channel.SimpleChannelInboundHandler;
|
||||
import io.netty.handler.codec.http.FullHttpResponse;
|
||||
import io.netty.handler.codec.http.HttpHeaders;
|
||||
import io.netty.util.CharsetUtil;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
@@ -15,20 +15,29 @@ import io.netty.channel.ChannelOption;
|
||||
import io.netty.channel.EventLoopGroup;
|
||||
import io.netty.channel.nio.NioEventLoopGroup;
|
||||
import io.netty.channel.socket.nio.NioSocketChannel;
|
||||
import io.netty.handler.codec.http.*;
|
||||
import io.netty.handler.codec.http.DefaultFullHttpRequest;
|
||||
import io.netty.handler.codec.http.DefaultHttpHeaders;
|
||||
import io.netty.handler.codec.http.HttpClientCodec;
|
||||
import io.netty.handler.codec.http.HttpContentDecompressor;
|
||||
import io.netty.handler.codec.http.HttpHeaderNames;
|
||||
import io.netty.handler.codec.http.HttpHeaderValues;
|
||||
import io.netty.handler.codec.http.HttpHeaders;
|
||||
import io.netty.handler.codec.http.HttpMethod;
|
||||
import io.netty.handler.codec.http.HttpObjectAggregator;
|
||||
import io.netty.handler.codec.http.HttpRequest;
|
||||
import io.netty.handler.codec.http.HttpVersion;
|
||||
import io.netty.handler.ssl.SslContext;
|
||||
import io.netty.handler.ssl.SslContextBuilder;
|
||||
import io.netty.handler.ssl.util.InsecureTrustManagerFactory;
|
||||
import io.netty.util.CharsetUtil;
|
||||
import java.util.concurrent.CompletableFuture;
|
||||
import javax.net.ssl.SSLException;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import javax.net.ssl.SSLException;
|
||||
import java.util.concurrent.CompletableFuture;
|
||||
|
||||
@Service
|
||||
public class NettyHttpApiClient implements ApiClient {
|
||||
|
||||
|
||||
@@ -1,5 +1,9 @@
|
||||
package com.eactive.testmaster.common.entity;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
import javax.persistence.Column;
|
||||
import javax.persistence.EntityListeners;
|
||||
import javax.persistence.MappedSuperclass;
|
||||
import org.hibernate.annotations.Type;
|
||||
import org.springframework.data.annotation.CreatedBy;
|
||||
import org.springframework.data.annotation.CreatedDate;
|
||||
@@ -7,11 +11,6 @@ import org.springframework.data.annotation.LastModifiedBy;
|
||||
import org.springframework.data.annotation.LastModifiedDate;
|
||||
import org.springframework.data.jpa.domain.support.AuditingEntityListener;
|
||||
|
||||
import javax.persistence.Column;
|
||||
import javax.persistence.EntityListeners;
|
||||
import javax.persistence.MappedSuperclass;
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
@MappedSuperclass
|
||||
@EntityListeners(AuditingEntityListener.class)
|
||||
public abstract class Auditable {
|
||||
|
||||
+1
-2
@@ -1,5 +1,6 @@
|
||||
package com.eactive.testmaster.common.exception;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
import org.springframework.core.annotation.Order;
|
||||
import org.springframework.http.HttpStatus;
|
||||
import org.springframework.http.ResponseEntity;
|
||||
@@ -9,8 +10,6 @@ import org.springframework.web.bind.annotation.RestControllerAdvice;
|
||||
import org.springframework.web.context.request.WebRequest;
|
||||
import org.springframework.web.servlet.mvc.method.annotation.ResponseEntityExceptionHandler;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
@Order(1)
|
||||
@RestControllerAdvice(annotations = RestController.class)
|
||||
public class CustomGlobalExceptionHandler extends ResponseEntityExceptionHandler {
|
||||
|
||||
@@ -1,14 +1,13 @@
|
||||
package com.eactive.testmaster.common.exception;
|
||||
|
||||
import javax.servlet.RequestDispatcher;
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import org.springframework.boot.web.servlet.error.ErrorController;
|
||||
import org.springframework.stereotype.Controller;
|
||||
import org.springframework.ui.ModelMap;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
|
||||
import javax.servlet.RequestDispatcher;
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
|
||||
@Controller
|
||||
public class PortalErrorController implements ErrorController {
|
||||
|
||||
|
||||
+1
-2
@@ -1,6 +1,7 @@
|
||||
package com.eactive.testmaster.common.exception;
|
||||
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
import org.springframework.core.annotation.Order;
|
||||
@@ -9,8 +10,6 @@ import org.springframework.web.bind.annotation.ControllerAdvice;
|
||||
import org.springframework.web.bind.annotation.ExceptionHandler;
|
||||
import org.springframework.web.servlet.ModelAndView;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
|
||||
@ControllerAdvice(annotations = Controller.class)
|
||||
@Order(2)
|
||||
public class PortalGlobalExceptionHandler {
|
||||
|
||||
@@ -1,17 +1,16 @@
|
||||
package com.eactive.testmaster.common.mapper;
|
||||
|
||||
import com.eactive.testmaster.client.dto.ApiRequestKeyValueDTO;
|
||||
import org.mapstruct.Mapper;
|
||||
import org.mapstruct.Named;
|
||||
import org.mapstruct.ReportingPolicy;
|
||||
import org.springframework.security.core.GrantedAuthority;
|
||||
import org.springframework.util.StringUtils;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
import org.mapstruct.Mapper;
|
||||
import org.mapstruct.Named;
|
||||
import org.mapstruct.ReportingPolicy;
|
||||
import org.springframework.security.core.GrantedAuthority;
|
||||
import org.springframework.util.StringUtils;
|
||||
|
||||
@Mapper(componentModel = "spring",
|
||||
unmappedTargetPolicy = ReportingPolicy.IGNORE)
|
||||
|
||||
+4
-5
@@ -1,13 +1,12 @@
|
||||
package com.eactive.testmaster.common.message;
|
||||
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.core.io.Resource;
|
||||
import org.springframework.core.io.support.PathMatchingResourcePatternResolver;
|
||||
import org.springframework.core.io.support.ResourcePatternResolver;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.core.io.Resource;
|
||||
import org.springframework.core.io.support.PathMatchingResourcePatternResolver;
|
||||
import org.springframework.core.io.support.ResourcePatternResolver;
|
||||
|
||||
public class PortalReloadableResourceBundleMessageSource extends org.springframework.context.support.ReloadableResourceBundleMessageSource {
|
||||
private static final String CLASSPATH_PREFIX = "classpath:";
|
||||
|
||||
@@ -1,8 +1,7 @@
|
||||
package com.eactive.testmaster.common.search;
|
||||
|
||||
import org.springframework.data.jpa.domain.Specification;
|
||||
|
||||
import java.util.List;
|
||||
import org.springframework.data.jpa.domain.Specification;
|
||||
|
||||
/**
|
||||
* Overview:
|
||||
|
||||
@@ -1,11 +1,10 @@
|
||||
package com.eactive.testmaster.common.search;
|
||||
|
||||
import com.eactive.testmaster.common.util.SpecificationUtil;
|
||||
import java.util.Collection;
|
||||
import org.springframework.data.jpa.domain.Specification;
|
||||
import org.springframework.util.ObjectUtils;
|
||||
|
||||
import java.util.Collection;
|
||||
|
||||
public class ColumnSearchModel implements SearchModel {
|
||||
|
||||
private String column;
|
||||
|
||||
@@ -1,8 +1,7 @@
|
||||
package com.eactive.testmaster.common.search;
|
||||
|
||||
import org.springframework.data.jpa.domain.Specification;
|
||||
|
||||
import java.io.Serializable;
|
||||
import org.springframework.data.jpa.domain.Specification;
|
||||
|
||||
public interface SearchModel extends Serializable {
|
||||
|
||||
|
||||
@@ -1,11 +1,10 @@
|
||||
package com.eactive.testmaster.common.util;
|
||||
|
||||
import org.apache.commons.codec.binary.Base64;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import java.security.MessageDigest;
|
||||
import java.security.NoSuchAlgorithmException;
|
||||
import org.apache.commons.codec.binary.Base64;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
/**
|
||||
* @author
|
||||
|
||||
@@ -1,11 +1,14 @@
|
||||
package com.eactive.testmaster.common.util;
|
||||
|
||||
import java.util.Collection;
|
||||
import javax.persistence.criteria.CriteriaBuilder;
|
||||
import javax.persistence.criteria.Join;
|
||||
import javax.persistence.criteria.JoinType;
|
||||
import javax.persistence.criteria.Path;
|
||||
import javax.persistence.criteria.Root;
|
||||
import org.hibernate.query.criteria.internal.path.PluralAttributePath;
|
||||
import org.springframework.data.jpa.domain.Specification;
|
||||
|
||||
import javax.persistence.criteria.*;
|
||||
import java.util.Collection;
|
||||
|
||||
public class SpecificationUtil {
|
||||
|
||||
|
||||
|
||||
@@ -1,8 +1,12 @@
|
||||
package com.eactive.testmaster.common.validator;
|
||||
|
||||
import java.lang.annotation.Documented;
|
||||
import java.lang.annotation.ElementType;
|
||||
import java.lang.annotation.Retention;
|
||||
import java.lang.annotation.RetentionPolicy;
|
||||
import java.lang.annotation.Target;
|
||||
import javax.validation.Constraint;
|
||||
import javax.validation.Payload;
|
||||
import java.lang.annotation.*;
|
||||
|
||||
@Constraint(validatedBy = PasswordMatchValidator.class)
|
||||
@Target({ElementType.TYPE})
|
||||
|
||||
@@ -1,14 +1,13 @@
|
||||
package com.eactive.testmaster.common.validator;
|
||||
|
||||
import com.eactive.testmaster.common.util.ApplicationContextUtil;
|
||||
import java.util.Objects;
|
||||
import javax.validation.ConstraintValidator;
|
||||
import javax.validation.ConstraintValidatorContext;
|
||||
import org.apache.commons.beanutils.PropertyUtils;
|
||||
import org.springframework.context.MessageSource;
|
||||
import org.springframework.context.i18n.LocaleContextHolder;
|
||||
|
||||
import javax.validation.ConstraintValidator;
|
||||
import javax.validation.ConstraintValidatorContext;
|
||||
import java.util.Objects;
|
||||
|
||||
public class PasswordMatchValidator implements ConstraintValidator<PasswordMatch, Object> {
|
||||
|
||||
private String field1;
|
||||
|
||||
@@ -1,8 +1,12 @@
|
||||
package com.eactive.testmaster.common.validator;
|
||||
|
||||
import java.lang.annotation.Documented;
|
||||
import java.lang.annotation.ElementType;
|
||||
import java.lang.annotation.Retention;
|
||||
import java.lang.annotation.RetentionPolicy;
|
||||
import java.lang.annotation.Target;
|
||||
import javax.validation.Constraint;
|
||||
import javax.validation.Payload;
|
||||
import java.lang.annotation.*;
|
||||
|
||||
@Constraint(validatedBy = UniqueUserIdValidator.class)
|
||||
@Target({ElementType.FIELD})
|
||||
|
||||
@@ -1,8 +1,12 @@
|
||||
package com.eactive.testmaster.common.validator;
|
||||
|
||||
import java.lang.annotation.Documented;
|
||||
import java.lang.annotation.ElementType;
|
||||
import java.lang.annotation.Retention;
|
||||
import java.lang.annotation.RetentionPolicy;
|
||||
import java.lang.annotation.Target;
|
||||
import javax.validation.Constraint;
|
||||
import javax.validation.Payload;
|
||||
import java.lang.annotation.*;
|
||||
|
||||
@Constraint(validatedBy = UniqueRouteValidator.class)
|
||||
@Target({ElementType.TYPE})
|
||||
|
||||
@@ -2,10 +2,9 @@ package com.eactive.testmaster.common.validator;
|
||||
|
||||
import com.eactive.testmaster.api.repository.MockRouteRepository;
|
||||
import com.eactive.testmaster.common.util.ApplicationContextUtil;
|
||||
import org.apache.commons.beanutils.PropertyUtils;
|
||||
|
||||
import javax.validation.ConstraintValidator;
|
||||
import javax.validation.ConstraintValidatorContext;
|
||||
import org.apache.commons.beanutils.PropertyUtils;
|
||||
|
||||
public class UniqueRouteValidator implements ConstraintValidator<UniqueRoute, Object> {
|
||||
|
||||
|
||||
@@ -3,7 +3,6 @@ package com.eactive.testmaster.common.validator;
|
||||
import com.eactive.testmaster.common.exception.UserNotFoundException;
|
||||
import com.eactive.testmaster.common.util.ApplicationContextUtil;
|
||||
import com.eactive.testmaster.user.service.UserService;
|
||||
|
||||
import javax.validation.ConstraintValidator;
|
||||
import javax.validation.ConstraintValidatorContext;
|
||||
|
||||
|
||||
@@ -1,9 +1,8 @@
|
||||
package com.eactive.testmaster.config;
|
||||
|
||||
import com.eactive.testmaster.common.util.SecurityUtil;
|
||||
import org.springframework.data.domain.AuditorAware;
|
||||
|
||||
import java.util.Optional;
|
||||
import org.springframework.data.domain.AuditorAware;
|
||||
|
||||
public class AuditorAwareImpl implements AuditorAware<String> {
|
||||
|
||||
|
||||
@@ -7,6 +7,9 @@ import com.eactive.testmaster.user.entity.StaffUser;
|
||||
import com.eactive.testmaster.user.entity.User;
|
||||
import com.eactive.testmaster.user.repository.StaffUserRepository;
|
||||
import com.eactive.testmaster.user.service.UserService;
|
||||
import java.io.IOException;
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
import org.springframework.security.core.AuthenticationException;
|
||||
@@ -15,10 +18,6 @@ import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Propagation;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import java.io.IOException;
|
||||
|
||||
@Service
|
||||
@Transactional
|
||||
public class PortalAuthenticationFailureHandler implements AuthenticationFailureHandler {
|
||||
|
||||
@@ -5,7 +5,11 @@ import com.eactive.testmaster.common.util.EncryptionUtil;
|
||||
import com.eactive.testmaster.user.entity.User;
|
||||
import com.eactive.testmaster.user.service.UserService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.security.authentication.*;
|
||||
import org.springframework.security.authentication.AuthenticationManager;
|
||||
import org.springframework.security.authentication.BadCredentialsException;
|
||||
import org.springframework.security.authentication.DisabledException;
|
||||
import org.springframework.security.authentication.LockedException;
|
||||
import org.springframework.security.authentication.UsernamePasswordAuthenticationToken;
|
||||
import org.springframework.security.core.Authentication;
|
||||
import org.springframework.security.core.AuthenticationException;
|
||||
import org.springframework.security.core.context.SecurityContextHolder;
|
||||
|
||||
@@ -2,6 +2,11 @@ package com.eactive.testmaster.config;
|
||||
|
||||
import com.eactive.testmaster.user.entity.User;
|
||||
import com.eactive.testmaster.user.service.UserService;
|
||||
import java.io.IOException;
|
||||
import javax.servlet.FilterChain;
|
||||
import javax.servlet.ServletException;
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.security.core.Authentication;
|
||||
import org.springframework.security.core.userdetails.UserDetails;
|
||||
@@ -9,12 +14,6 @@ import org.springframework.security.web.authentication.AuthenticationSuccessHand
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import javax.servlet.FilterChain;
|
||||
import javax.servlet.ServletException;
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import java.io.IOException;
|
||||
|
||||
|
||||
@Service
|
||||
@Transactional
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
package com.eactive.testmaster.config;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.concurrent.TimeUnit;
|
||||
import org.springframework.context.annotation.Bean;
|
||||
|
||||
@@ -1,12 +1,6 @@
|
||||
package com.eactive.testmaster.loadtest.dto;
|
||||
|
||||
|
||||
import com.eactive.testmaster.client.entity.ApiScenario;
|
||||
import com.eactive.testmaster.user.entity.StaffUser;
|
||||
import javax.persistence.Id;
|
||||
import javax.persistence.JoinColumn;
|
||||
import javax.persistence.ManyToOne;
|
||||
|
||||
public class LoadTestDTO {
|
||||
|
||||
private String id;
|
||||
|
||||
@@ -3,7 +3,6 @@ package com.eactive.testmaster.loadtest.service;
|
||||
import com.eactive.testmaster.loadtest.dto.LoadTestDTO;
|
||||
import java.util.Map;
|
||||
import java.util.concurrent.Callable;
|
||||
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
|
||||
@@ -1,6 +1,10 @@
|
||||
package com.eactive.testmaster.login.controller;
|
||||
|
||||
import com.eactive.testmaster.user.service.UserService;
|
||||
import java.util.Map;
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import javax.servlet.http.HttpSession;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.http.ResponseEntity;
|
||||
import org.springframework.security.core.Authentication;
|
||||
@@ -12,11 +16,6 @@ import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.RequestParam;
|
||||
import org.springframework.web.bind.annotation.ResponseBody;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import javax.servlet.http.HttpSession;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* 일반 로그인을 처리하는 컨트롤러 클래스
|
||||
*
|
||||
|
||||
@@ -5,6 +5,7 @@ import com.eactive.testmaster.server.dto.ServerSearch;
|
||||
import com.eactive.testmaster.server.entity.Server;
|
||||
import com.eactive.testmaster.server.mapper.ServerMapper;
|
||||
import com.eactive.testmaster.server.service.ServerMgmtService;
|
||||
import java.util.List;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.data.domain.Page;
|
||||
import org.springframework.data.domain.Pageable;
|
||||
@@ -13,9 +14,11 @@ import org.springframework.stereotype.Controller;
|
||||
import org.springframework.ui.ModelMap;
|
||||
import org.springframework.validation.BindingResult;
|
||||
import org.springframework.validation.Validator;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.util.List;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.ModelAttribute;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RequestParam;
|
||||
|
||||
|
||||
@Controller
|
||||
|
||||
@@ -5,10 +5,9 @@ import com.eactive.testmaster.common.search.ColumnSearchModel;
|
||||
import com.eactive.testmaster.common.search.SearchCondition;
|
||||
import com.eactive.testmaster.common.search.SearchModel;
|
||||
import com.eactive.testmaster.server.entity.Server;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
|
||||
public class ServerSearch implements BaseSearch<Server> {
|
||||
|
||||
|
||||
@@ -1,11 +1,10 @@
|
||||
package com.eactive.testmaster.server.repository;
|
||||
|
||||
import com.eactive.testmaster.server.entity.Server;
|
||||
import java.util.List;
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public interface ServerRepository extends JpaRepository<Server, Long>, JpaSpecificationExecutor<Server> {
|
||||
|
||||
|
||||
|
||||
@@ -3,14 +3,13 @@ package com.eactive.testmaster.server.service;
|
||||
import com.eactive.testmaster.common.exception.NotFoundException;
|
||||
import com.eactive.testmaster.server.entity.Server;
|
||||
import com.eactive.testmaster.server.repository.ServerRepository;
|
||||
import javax.transaction.Transactional;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.data.domain.Page;
|
||||
import org.springframework.data.domain.Pageable;
|
||||
import org.springframework.data.jpa.domain.Specification;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import javax.transaction.Transactional;
|
||||
|
||||
@Service
|
||||
@Transactional
|
||||
public class ServerMgmtService {
|
||||
|
||||
@@ -15,7 +15,11 @@ import org.springframework.stereotype.Controller;
|
||||
import org.springframework.ui.ModelMap;
|
||||
import org.springframework.validation.BindingResult;
|
||||
import org.springframework.validation.Validator;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.ModelAttribute;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RequestParam;
|
||||
|
||||
@Controller
|
||||
@RequestMapping("/mgmt/users")
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
package com.eactive.testmaster.user.dto;
|
||||
|
||||
import com.eactive.testmaster.common.validator.PasswordMatch;
|
||||
|
||||
import javax.validation.constraints.NotEmpty;
|
||||
|
||||
@PasswordMatch(input = "newPassword", confirm = "newPassword2")
|
||||
|
||||
@@ -3,10 +3,9 @@ package com.eactive.testmaster.user.dto;
|
||||
import com.eactive.testmaster.common.validator.PasswordMatch;
|
||||
import com.eactive.testmaster.common.validator.UniqueId;
|
||||
import com.eactive.testmaster.user.entity.UserStatus;
|
||||
import org.hibernate.validator.constraints.Length;
|
||||
|
||||
import javax.validation.constraints.NotEmpty;
|
||||
import java.io.Serializable;
|
||||
import javax.validation.constraints.NotEmpty;
|
||||
import org.hibernate.validator.constraints.Length;
|
||||
|
||||
@PasswordMatch(input = "password", confirm = "password2")
|
||||
public class UserRegisterDTO implements Serializable {
|
||||
|
||||
@@ -6,7 +6,6 @@ import com.eactive.testmaster.common.search.SearchCondition;
|
||||
import com.eactive.testmaster.common.search.SearchModel;
|
||||
import com.eactive.testmaster.user.entity.StaffUser;
|
||||
import com.eactive.testmaster.user.entity.UserStatus;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
|
||||
@@ -2,10 +2,9 @@ package com.eactive.testmaster.user.dto;
|
||||
|
||||
import com.eactive.testmaster.common.entity.EnabledStatus;
|
||||
import com.eactive.testmaster.user.entity.UserStatus;
|
||||
|
||||
import java.io.Serializable;
|
||||
import javax.validation.constraints.NotEmpty;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.io.Serializable;
|
||||
|
||||
public class UserUpdateDTO implements Serializable {
|
||||
|
||||
|
||||
@@ -1,7 +1,14 @@
|
||||
package com.eactive.testmaster.user.entity;
|
||||
|
||||
import javax.persistence.*;
|
||||
import java.util.Objects;
|
||||
import javax.persistence.Column;
|
||||
import javax.persistence.Entity;
|
||||
import javax.persistence.EnumType;
|
||||
import javax.persistence.Enumerated;
|
||||
import javax.persistence.JoinColumn;
|
||||
import javax.persistence.ManyToOne;
|
||||
import javax.persistence.Table;
|
||||
import javax.persistence.Transient;
|
||||
|
||||
/**
|
||||
* PT_USER 내부사용자정보
|
||||
|
||||
@@ -2,20 +2,22 @@ package com.eactive.testmaster.user.entity;
|
||||
|
||||
import com.eactive.testmaster.common.entity.Auditable;
|
||||
import com.eactive.testmaster.common.entity.EnabledStatus;
|
||||
import java.io.Serializable;
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
import java.util.Objects;
|
||||
import javax.persistence.Column;
|
||||
import javax.persistence.EnumType;
|
||||
import javax.persistence.Enumerated;
|
||||
import javax.persistence.Id;
|
||||
import javax.persistence.MappedSuperclass;
|
||||
import javax.persistence.Transient;
|
||||
import org.hibernate.annotations.Type;
|
||||
import org.springframework.security.core.GrantedAuthority;
|
||||
import org.springframework.security.core.authority.SimpleGrantedAuthority;
|
||||
import org.springframework.security.core.userdetails.UserDetails;
|
||||
|
||||
import javax.persistence.*;
|
||||
import java.io.Serializable;
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.Arrays;
|
||||
import java.util.Collection;
|
||||
|
||||
@MappedSuperclass
|
||||
public abstract class User extends Auditable implements Serializable, UserDetails {
|
||||
|
||||
|
||||
@@ -1,8 +1,12 @@
|
||||
package com.eactive.testmaster.user.entity;
|
||||
|
||||
import javax.persistence.*;
|
||||
import java.io.Serializable;
|
||||
import java.util.List;
|
||||
import javax.persistence.Entity;
|
||||
import javax.persistence.FetchType;
|
||||
import javax.persistence.Id;
|
||||
import javax.persistence.OneToMany;
|
||||
import javax.persistence.Table;
|
||||
|
||||
@Entity
|
||||
@Table(name = "PT_USER_GROUP")
|
||||
|
||||
@@ -1,12 +1,11 @@
|
||||
package com.eactive.testmaster.user.repository;
|
||||
|
||||
import com.eactive.testmaster.user.entity.StaffUser;
|
||||
import java.util.Optional;
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
import java.util.Optional;
|
||||
|
||||
@Repository
|
||||
public interface StaffUserRepository extends JpaRepository<StaffUser, String>, JpaSpecificationExecutor<StaffUser> {
|
||||
|
||||
|
||||
@@ -1,10 +1,13 @@
|
||||
package com.eactive.testmaster.user.service;
|
||||
|
||||
import static com.eactive.testmaster.user.service.UserService.USER_NOT_FOUND_MESSAGE;
|
||||
|
||||
import com.eactive.testmaster.common.entity.EnabledStatus;
|
||||
import com.eactive.testmaster.common.exception.UserNotFoundException;
|
||||
import com.eactive.testmaster.user.entity.StaffUser;
|
||||
import com.eactive.testmaster.user.entity.UserStatus;
|
||||
import com.eactive.testmaster.user.repository.StaffUserRepository;
|
||||
import java.util.UUID;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.data.domain.Page;
|
||||
import org.springframework.data.domain.Pageable;
|
||||
@@ -12,10 +15,6 @@ import org.springframework.data.jpa.domain.Specification;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.util.UUID;
|
||||
|
||||
import static com.eactive.testmaster.user.service.UserService.USER_NOT_FOUND_MESSAGE;
|
||||
|
||||
@Service
|
||||
@Transactional
|
||||
public class StaffUserService {
|
||||
|
||||
@@ -6,14 +6,13 @@ import com.eactive.testmaster.common.util.EncryptionUtil;
|
||||
import com.eactive.testmaster.user.entity.StaffUser;
|
||||
import com.eactive.testmaster.user.entity.User;
|
||||
import com.eactive.testmaster.user.repository.StaffUserRepository;
|
||||
import java.time.LocalDateTime;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.security.core.userdetails.UserDetails;
|
||||
import org.springframework.security.core.userdetails.UserDetailsService;
|
||||
import org.springframework.security.core.userdetails.UsernameNotFoundException;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
@Service
|
||||
//@Transactional(propagation = Propagation.NESTED)
|
||||
public class UserService implements UserDetailsService {
|
||||
|
||||
Reference in New Issue
Block a user