- fix collisions between js script from main page and the application,
- fix problem with special characters for etrack,
This commit is contained in:
@@ -7,6 +7,7 @@ import com.release11.klaus.utilis.BusinessKey;
|
||||
import com.release11.klaus.utilis.TrackingClient;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.context.annotation.Profile;
|
||||
import org.springframework.http.HttpHeaders;
|
||||
import org.springframework.http.HttpStatus;
|
||||
import org.springframework.http.RequestEntity;
|
||||
@@ -21,6 +22,7 @@ import java.util.UUID;
|
||||
|
||||
@Controller("/")
|
||||
@Slf4j
|
||||
@Profile({"DEV", "default"})
|
||||
@AllArgsConstructor
|
||||
public class KlausController {
|
||||
|
||||
|
||||
@@ -7,6 +7,7 @@ import com.release11.klaus.utilis.TrackingClient;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.SneakyThrows;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.http.MediaType;
|
||||
import org.springframework.stereotype.Controller;
|
||||
import org.springframework.ui.Model;
|
||||
import org.springframework.validation.BindingResult;
|
||||
@@ -15,6 +16,7 @@ import org.springframework.web.bind.annotation.*;
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.validation.Valid;
|
||||
import java.net.InetAddress;
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.*;
|
||||
|
||||
@Slf4j
|
||||
@@ -23,6 +25,7 @@ import java.util.*;
|
||||
@AllArgsConstructor
|
||||
public class KlausMvcController {
|
||||
private final KlausService klausService;
|
||||
private static MockedMessageDto globalMockedMessageDto = new MockedMessageDto();
|
||||
private final Set<MockedMessageDto> globalMockedMessageDtoList = new HashSet<>();
|
||||
|
||||
@SneakyThrows
|
||||
@@ -32,38 +35,38 @@ public class KlausMvcController {
|
||||
@PathVariable(required = false) UUID uuid) {
|
||||
if (uuid != null) clientUUID = uuid;
|
||||
if (clientUUID != null) mockedMessageDto.setClientUUID(clientUUID);
|
||||
populateModelWithLists(model, mockedMessageDto,true);
|
||||
else mockedMessageDto.setClientUUID(UUID.randomUUID());
|
||||
populateModelVars(model, mockedMessageDto,true);
|
||||
return "index";
|
||||
}
|
||||
|
||||
@PostMapping("/home/{uuid}")
|
||||
public String showHomePost(@Valid final MockedMessageDto mockedMessageDto, BindingResult bindingResult,
|
||||
final Model model) {
|
||||
public String showHomePost(@Valid MockedMessageDto mockedMessageDto, BindingResult bindingResult, Model model) {
|
||||
TrackingClient.setBusinessKeys(Map.of(BusinessKey.INTERFACE_NAME, "setMockedResponse",
|
||||
BusinessKey.CLIENT_UUID, String.valueOf(mockedMessageDto.getClientUUID()),
|
||||
BusinessKey.MESSAGE_ID, String.valueOf(mockedMessageDto.getMockedResponseId())));
|
||||
if (bindingResult.hasErrors()){
|
||||
populateModelWithLists(model, mockedMessageDto,false);
|
||||
populateModelVars(model, mockedMessageDto,false);
|
||||
return "index";
|
||||
}
|
||||
klausService.setMockedResponse(mockedMessageDto);
|
||||
populateModelWithLists(model, mockedMessageDto,true);
|
||||
populateModelVars(model, mockedMessageDto,true);
|
||||
model.addAttribute("mockSaved", "true");
|
||||
model.addAttribute("canTest", "true");
|
||||
return "index";
|
||||
}
|
||||
|
||||
@PostMapping(value="/home/{uuid}", params={"newMessage"})
|
||||
public String newMessage(final Model model, @RequestParam UUID clientUUID) {
|
||||
public String newMessage(Model model, @RequestParam UUID clientUUID) {
|
||||
MockedMessageDto mockedMessageDto = new MockedMessageDto(clientUUID, new LinkedHashMap<>());
|
||||
populateModelWithLists(model, mockedMessageDto, true);
|
||||
populateModelVars(model, mockedMessageDto, true);
|
||||
model.addAttribute("mockedMessageDto", mockedMessageDto);
|
||||
return "index";
|
||||
}
|
||||
|
||||
@GetMapping("/home/getMockedResponse")
|
||||
@ResponseBody
|
||||
public String showGetMockedResponse(final MockedMessageDto mockedMessageDto) {
|
||||
public String showGetMockedResponse(MockedMessageDto mockedMessageDto) {
|
||||
TrackingClient.setBusinessKeys(Map.of(BusinessKey.INTERFACE_NAME, "getMockedResponse",
|
||||
BusinessKey.CLIENT_UUID, String.valueOf(mockedMessageDto.getClientUUID()),
|
||||
BusinessKey.MESSAGE_ID, String.valueOf(mockedMessageDto.getMockedResponseId())));
|
||||
@@ -72,37 +75,37 @@ public class KlausMvcController {
|
||||
}
|
||||
|
||||
@PostMapping(value = "/home/{uuid}", params = {"addHeader"} )
|
||||
public String addHeader(final MockedMessageDto mockedMessageDto, @RequestParam String headerKey,
|
||||
public String addHeader(MockedMessageDto mockedMessageDto, @RequestParam String headerKey,
|
||||
@RequestParam String headerValue, final Model model) {
|
||||
populateModelWithLists(model, mockedMessageDto,false);
|
||||
populateModelVars(model, mockedMessageDto,false);
|
||||
mockedMessageDto.getHttpHeaders().put(headerKey, headerValue);
|
||||
return "index";
|
||||
}
|
||||
|
||||
@PostMapping(value="/home/{uuid}", params={"removeHeader"})
|
||||
public String removeHeader(final MockedMessageDto mockedMessageDto, final HttpServletRequest req, final Model model) {
|
||||
populateModelWithLists(model, mockedMessageDto,false);
|
||||
public String removeHeader(MockedMessageDto mockedMessageDto, final HttpServletRequest req, final Model model) {
|
||||
populateModelVars(model, mockedMessageDto,false);
|
||||
mockedMessageDto.getHttpHeaders().remove(req.getParameter("removeHeader"));
|
||||
return "index";
|
||||
}
|
||||
|
||||
@PostMapping(value="/home/{uuid}", params={"updateMessage"})
|
||||
public String updateMessage(final HttpServletRequest req, final MockedMessageDto mockedMessageDto, final Model model) {
|
||||
public String updateMessage(final HttpServletRequest req, MockedMessageDto mockedMessageDto, final Model model) {
|
||||
populateModelVars(model, mockedMessageDto, false);
|
||||
model.addAttribute("mockedMessageDto", klausService.getMockedResponse(mockedMessageDto.getClientUUID(),
|
||||
Integer.parseInt(req.getParameter("updateMessage"))));
|
||||
populateModelWithLists(model, mockedMessageDto, false);
|
||||
model.addAttribute("canTest", "true");
|
||||
return "index";
|
||||
}
|
||||
|
||||
@PostMapping(value="/home/{uuid}", params={"removeMessage"})
|
||||
public String removeMessage(final MockedMessageDto mockedMessageDto, final HttpServletRequest req, final Model model) {
|
||||
public String removeMessage(MockedMessageDto mockedMessageDto, final HttpServletRequest req, final Model model) {
|
||||
TrackingClient.setBusinessKeys(Map.of(BusinessKey.INTERFACE_NAME, "deleteMockedResponse",
|
||||
BusinessKey.CLIENT_UUID, String.valueOf(mockedMessageDto.getClientUUID()),
|
||||
BusinessKey.MESSAGE_ID, String.valueOf(Integer.parseInt(req.getParameter("removeMessage")))));
|
||||
klausService.deleteMockedResponse(mockedMessageDto.getClientUUID(),
|
||||
Integer.parseInt(req.getParameter("removeMessage")));
|
||||
populateModelWithLists(model, mockedMessageDto, true);
|
||||
populateModelVars(model, mockedMessageDto, true);
|
||||
return "index";
|
||||
}
|
||||
|
||||
@@ -117,17 +120,47 @@ public class KlausMvcController {
|
||||
return UUID.randomUUID();
|
||||
}
|
||||
|
||||
@ModelAttribute("mockedMessageDto")
|
||||
public MockedMessageDto mockedMessageDto() {
|
||||
return new MockedMessageDto(UUID.randomUUID(), new LinkedHashMap<>());
|
||||
public void getModelMockedMessageDto(Model model, MockedMessageDto mockedMessageDto) {
|
||||
System.out.println(mockedMessageDto);
|
||||
System.out.println(globalMockedMessageDto);
|
||||
if (mockedMessageDto.getMockedResponseId() == null){
|
||||
Map<String, String> headers = new HashMap<>();
|
||||
headers.put("Keep-Alive", "timeout=60");
|
||||
headers.put("Connection", "keep-alive");
|
||||
headers.put("Date", LocalDateTime.now().toString());
|
||||
|
||||
globalMockedMessageDto = MockedMessageDto.builder()
|
||||
.clientUUID(mockedMessageDto.getClientUUID())
|
||||
.mockedResponseId(1)
|
||||
.mediaType(MediaType.APPLICATION_XML_VALUE)
|
||||
.messageBody("<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n" +
|
||||
"<note>\n" +
|
||||
" <to>Tove</to>\n" +
|
||||
" <from>Jani</from>\n" +
|
||||
" <heading>Reminder</heading>\n" +
|
||||
" <body>Don't forget me this weekend!</body>\n" +
|
||||
"</note>")
|
||||
.httpHeaders(headers)
|
||||
.httpStatus(200)
|
||||
.build();
|
||||
} else {
|
||||
globalMockedMessageDto = mockedMessageDto;
|
||||
}
|
||||
model.addAttribute("mockedMessageDto", globalMockedMessageDto);
|
||||
}
|
||||
|
||||
private void populateModelWithLists(Model model, MockedMessageDto mockedMessageDto, boolean updateList){
|
||||
private void populateModelVars(Model model, MockedMessageDto mockedMessageDto, boolean updateList){
|
||||
if (updateList){
|
||||
globalMockedMessageDtoList.clear();
|
||||
globalMockedMessageDtoList.addAll(klausService.getAllMockedResponses(mockedMessageDto.getClientUUID()));
|
||||
List<MockedMessageDto> mockedMessageDtoList = klausService.
|
||||
getAllMockedResponses(mockedMessageDto.getClientUUID());
|
||||
System.out.println(mockedMessageDtoList);
|
||||
if (mockedMessageDtoList.size() > 0){
|
||||
globalMockedMessageDtoList.addAll(mockedMessageDtoList);
|
||||
}
|
||||
}
|
||||
model.addAttribute("mockedMessageDtoList", globalMockedMessageDtoList);
|
||||
getModelMockedMessageDto(model, mockedMessageDto);
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user