diff --git a/.idea/workspace.xml b/.idea/workspace.xml index 2bcab80..b91fa87 100644 --- a/.idea/workspace.xml +++ b/.idea/workspace.xml @@ -20,9 +20,12 @@ - + + + + file://$PROJECT_DIR$/src/main/java/com/release11/klaus/controller/KlausController.java - 72 + 100 diff --git a/src/main/java/com/release11/klaus/controller/KlausController.java b/src/main/java/com/release11/klaus/controller/KlausController.java index bb78ebf..930fc9a 100644 --- a/src/main/java/com/release11/klaus/controller/KlausController.java +++ b/src/main/java/com/release11/klaus/controller/KlausController.java @@ -2,6 +2,7 @@ package com.release11.klaus.controller; import com.release11.klaus.model.MockedMessageDto; +import com.release11.klaus.model.MockedMessageDtoTest; import com.release11.klaus.model.TestModel; import com.release11.klaus.service.KlausService; import com.release11.klaus.utilis.BusinessKey; @@ -15,6 +16,7 @@ import org.springframework.http.ResponseEntity; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.*; +import java.time.LocalDateTime; import java.util.*; @@ -29,22 +31,48 @@ import java.util.*; public class KlausController { private final KlausService klausService; -// MockedMessageDto msg = MockedMessageDto.builder() -// .clientUUID(UUID.randomUUID()) -// .httpStatus(200) -// .mediaType("text/xml") -// .messageBody("Hello world") -// .mockedResponseId(1) -// .httpHeaders(new HashMap<>()) -// .build(); + MockedMessageDto msg = MockedMessageDto.builder() + .clientUUID(UUID.randomUUID()) + .httpStatus(200) + .mediaType("text/xml") + .messageBody("Hello world") + .mockedResponseId(1) + .httpHeaders(new HashMap<>()) + .build(); @ResponseBody - @GetMapping(value = "klaus/v1/get/test") - public TestModel getTestMessage(){ + @GetMapping(value = "klaus/v1/get/test/test") + public TestModel getTestTest(){ TestModel testModel = new TestModel(); return testModel; } + @ResponseBody + @GetMapping(value = "klaus/v1/get/test/msgtest") + public MockedMessageDtoTest getTestMessageTest(){ + MockedMessageDtoTest msg = new MockedMessageDtoTest(); + return msg; + } + + @ResponseBody + @GetMapping(value = "klaus/v1/get/test/msg") + public MockedMessageDto getTestMessage(){ + Map headers = new HashMap<>(); + headers.put("Keep-Alive", "timeout=60"); + headers.put("Connection", "keep-alive"); + headers.put("Date", LocalDateTime.now().toString()); + MockedMessageDto msg = MockedMessageDto.builder() + .clientUUID(UUID.randomUUID()) + .httpStatus(200) + .mediaType("text/xml") + .messageBody("Hello world") + .mockedResponseId(1) + .httpHeaders(headers) + .build(); + return msg; + } + + @DeleteMapping(value = "klaus/v1/delete/{clientUUID}/{mockedResponseId}") public ResponseEntity deleteMockedResponse(@PathVariable UUID clientUUID, @PathVariable int mockedResponseId){ diff --git a/src/main/java/com/release11/klaus/model/MockedMessageDto.java b/src/main/java/com/release11/klaus/model/MockedMessageDto.java index 54f4701..317e23c 100644 --- a/src/main/java/com/release11/klaus/model/MockedMessageDto.java +++ b/src/main/java/com/release11/klaus/model/MockedMessageDto.java @@ -5,6 +5,7 @@ import lombok.*; import javax.validation.constraints.NotNull; import javax.validation.constraints.Positive; +import java.io.Serializable; import java.util.Map; import java.util.UUID; @@ -18,7 +19,7 @@ import java.util.UUID; @ToString @NoArgsConstructor @AllArgsConstructor -public class MockedMessageDto { +public class MockedMessageDto implements Serializable { private UUID clientUUID; @NotNull @Positive diff --git a/src/main/java/com/release11/klaus/model/MockedMessageDtoTest.java b/src/main/java/com/release11/klaus/model/MockedMessageDtoTest.java new file mode 100644 index 0000000..9efd4e3 --- /dev/null +++ b/src/main/java/com/release11/klaus/model/MockedMessageDtoTest.java @@ -0,0 +1,40 @@ +package com.release11.klaus.model; + +import com.release11.klaus.model.constraints.HttpCode; +import lombok.*; + +import javax.validation.constraints.NotNull; +import javax.validation.constraints.Positive; +import java.io.Serializable; + +/** + * it appears that instance of this class contains info about mocked response + * To which UUID it is bound, whats its id, the list of headers, type of content and message body, + * as well as status it has to return. + */ +@Data +@Builder +@ToString +@NoArgsConstructor +@AllArgsConstructor +public class MockedMessageDtoTest implements Serializable { +// private UUID clientUUID; + @NotNull + @Positive + private Integer mockedResponseId = 1; + private String mediaType = "media"; + private String messageBody = "clean body"; +// private Map httpHeaders; + @HttpCode + private Integer httpStatus = 200; + +// public MockedMessageDtoTest(UUID clientUUID) { +// this.clientUUID = clientUUID; +// } +// public MockedMessageDtoTest(UUID clientUUID, Map httpHeaders) { +// this.clientUUID = clientUUID; +// this.httpHeaders = httpHeaders; +// } + + +} \ No newline at end of file diff --git a/src/main/java/com/release11/klaus/model/TestModel.java b/src/main/java/com/release11/klaus/model/TestModel.java index d9cd9d7..e117c61 100644 --- a/src/main/java/com/release11/klaus/model/TestModel.java +++ b/src/main/java/com/release11/klaus/model/TestModel.java @@ -2,10 +2,8 @@ package com.release11.klaus.model; import com.fasterxml.jackson.annotation.JsonPropertyOrder; -import java.io.Serializable; - @JsonPropertyOrder({ "name", "lastname" }) -public class TestModel implements Serializable { +public class TestModel { private String name = "Jason"; private String lastname = "Born"; diff --git a/src/main/resources/static/json/mockedmessagedto.json b/src/main/resources/static/json/mockedmessagedto.json new file mode 100644 index 0000000..fafd22c --- /dev/null +++ b/src/main/resources/static/json/mockedmessagedto.json @@ -0,0 +1,12 @@ +{ + "clientUUID": "acc39106-f351-46bb-b81b-31b860af3e56", + "mockedResponseId": 1, + "mediaType": "text/xml", + "messageBody": "Hello world", + "httpHeaders": { + "Keep-Alive": "timeout=60", + "Connection": "keep-alive", + "Date": "2021-01-27T15:45:05.892356" + }, + "httpStatus": 200 +} \ No newline at end of file