Merge branch 'modzeleg' into developer
This commit is contained in:
7
.idea/misc.xml
generated
7
.idea/misc.xml
generated
@@ -1,5 +1,12 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<project version="4">
|
<project version="4">
|
||||||
|
<component name="JavadocGenerationManager">
|
||||||
|
<option name="OUTPUT_DIRECTORY" value="$USER_HOME$/Documents" />
|
||||||
|
<option name="OPTION_SCOPE" value="private" />
|
||||||
|
<option name="OPTION_DOCUMENT_TAG_USE" value="true" />
|
||||||
|
<option name="OPTION_DOCUMENT_TAG_AUTHOR" value="true" />
|
||||||
|
<option name="OPTION_DOCUMENT_TAG_VERSION" value="true" />
|
||||||
|
</component>
|
||||||
<component name="MavenBuildProjectComponent">
|
<component name="MavenBuildProjectComponent">
|
||||||
<option name="mavenExecutable" value="" />
|
<option name="mavenExecutable" value="" />
|
||||||
<option name="Settings File" value="" />
|
<option name="Settings File" value="" />
|
||||||
|
|||||||
@@ -35,39 +35,7 @@ public class KlausController {
|
|||||||
|
|
||||||
private final KlausService klausService;
|
private final KlausService klausService;
|
||||||
|
|
||||||
// TODO: Remove method. It's depracated and duplicated.
|
// TODO: Move to MockController
|
||||||
/**
|
|
||||||
* Deletes message of given id via client request
|
|
||||||
* @param clientUUID the key-uuid of given set of messages
|
|
||||||
* @param mockedResponseId unique id of given message
|
|
||||||
* @return after deletion the confirmation is send with status 200 OK
|
|
||||||
*/
|
|
||||||
@DeleteMapping(value = "/delete/{clientUUID}/{mockedResponseId}")
|
|
||||||
public ResponseEntity<String> deleteMockedResponse(@PathVariable UUID clientUUID,
|
|
||||||
@PathVariable int mockedResponseId){
|
|
||||||
TrackingClient.setBusinessKeys(Map.of(BusinessKey.INTERFACE_NAME, "deleteMockedResponse",
|
|
||||||
BusinessKey.CLIENT_UUID, String.valueOf(clientUUID),
|
|
||||||
BusinessKey.MESSAGE_ID, String.valueOf(mockedResponseId)));
|
|
||||||
klausService.deleteMockedResponse(clientUUID, mockedResponseId);
|
|
||||||
return new ResponseEntity<>("message has been deleted", HttpStatus.OK);
|
|
||||||
}
|
|
||||||
|
|
||||||
//TODO : Remove it's also depracated
|
|
||||||
/**
|
|
||||||
* Returns the full list of messages. It's used by javascript on the client side to initialize homepage
|
|
||||||
* with data from the database.
|
|
||||||
* @param clientUUID the key-uuid of given set of messages
|
|
||||||
* @return responds with 200 OK and list of {@link MockedMessageDto}
|
|
||||||
*/
|
|
||||||
@GetMapping(value = "/getAll/{clientUUID}")
|
|
||||||
public ResponseEntity<String> getAllMockedResponses(@PathVariable UUID clientUUID){
|
|
||||||
TrackingClient.setBusinessKeys(Map.of(BusinessKey.INTERFACE_NAME, "getAllMockedResponse",
|
|
||||||
BusinessKey.CLIENT_UUID, String.valueOf(clientUUID)));
|
|
||||||
List<MockedMessageDto> mockedMessages = klausService.getAllMockedResponses(clientUUID);
|
|
||||||
return new ResponseEntity<>(mockedMessages.toString(), HttpStatus.OK);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* It's one of the most important features - the bread and butter of the Mocked Service. It's link that allows
|
* It's one of the most important features - the bread and butter of the Mocked Service. It's link that allows
|
||||||
* to receive mocked response from the server and use it to mock!
|
* to receive mocked response from the server and use it to mock!
|
||||||
|
|||||||
@@ -10,10 +10,20 @@ import javax.validation.ConstraintViolationException;
|
|||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
//TODO: Find usage and document or remove it
|
//TODO: Is it really necessary?
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Custom exception handler for {@link ConstraintViolationException}
|
||||||
|
* @author Rafał Żukowicz
|
||||||
|
*/
|
||||||
@ControllerAdvice
|
@ControllerAdvice
|
||||||
public class MvcExceptionHandler {
|
public class MvcExceptionHandler {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Provides handling for {@link ConstraintViolationException}
|
||||||
|
* @param e exception argument
|
||||||
|
* @return response with error list and status 400 bad request
|
||||||
|
*/
|
||||||
@ExceptionHandler(ConstraintViolationException.class)
|
@ExceptionHandler(ConstraintViolationException.class)
|
||||||
public ResponseEntity<List> validationErrorHandler(ConstraintViolationException e){
|
public ResponseEntity<List> validationErrorHandler(ConstraintViolationException e){
|
||||||
List<String> errors = new ArrayList<>(e.getConstraintViolations().size());
|
List<String> errors = new ArrayList<>(e.getConstraintViolations().size());
|
||||||
@@ -24,6 +34,11 @@ public class MvcExceptionHandler {
|
|||||||
return new ResponseEntity<>(errors, HttpStatus.BAD_REQUEST);
|
return new ResponseEntity<>(errors, HttpStatus.BAD_REQUEST);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Provides handling for {@link BindException}
|
||||||
|
* @param ex exception argument
|
||||||
|
* @return response with error list and status 400 bad request
|
||||||
|
*/
|
||||||
@ExceptionHandler(BindException.class)
|
@ExceptionHandler(BindException.class)
|
||||||
public ResponseEntity<List> handleBindException(BindException ex){
|
public ResponseEntity<List> handleBindException(BindException ex){
|
||||||
return new ResponseEntity(ex.getAllErrors(), HttpStatus.BAD_REQUEST);
|
return new ResponseEntity(ex.getAllErrors(), HttpStatus.BAD_REQUEST);
|
||||||
|
|||||||
@@ -7,7 +7,11 @@ import java.lang.annotation.Retention;
|
|||||||
import java.lang.annotation.RetentionPolicy;
|
import java.lang.annotation.RetentionPolicy;
|
||||||
import java.lang.annotation.Target;
|
import java.lang.annotation.Target;
|
||||||
|
|
||||||
//TODO: Find usage and document or remove it
|
/**
|
||||||
|
* Annotation interface that is used to annotate Integer fields that contain http status values.
|
||||||
|
* It provides validation and throws an error when trying to send response with incorrect status.
|
||||||
|
* @author Rafał Żukowicz
|
||||||
|
*/
|
||||||
@Target({ ElementType.FIELD})
|
@Target({ ElementType.FIELD})
|
||||||
@Retention(RetentionPolicy.RUNTIME)
|
@Retention(RetentionPolicy.RUNTIME)
|
||||||
@Constraint(validatedBy = HttpCodeValidation.class )
|
@Constraint(validatedBy = HttpCodeValidation.class )
|
||||||
|
|||||||
@@ -1,5 +1,7 @@
|
|||||||
package com.release11.klaus.model.constraints;
|
package com.release11.klaus.model.constraints;
|
||||||
|
|
||||||
|
import com.release11.klaus.model.MockedMessage;
|
||||||
|
import com.release11.klaus.model.MockedMessageDto;
|
||||||
import org.springframework.http.HttpStatus;
|
import org.springframework.http.HttpStatus;
|
||||||
|
|
||||||
import javax.validation.ConstraintValidator;
|
import javax.validation.ConstraintValidator;
|
||||||
@@ -8,10 +10,18 @@ import java.util.Set;
|
|||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
import java.util.stream.Stream;
|
import java.util.stream.Stream;
|
||||||
|
|
||||||
//TODO: Find usage and document or remove it
|
/**
|
||||||
|
* It's validator class. It checks if status value of {@link com.release11.klaus.model.MockedMessageDto} is within bonds of http status values map.
|
||||||
|
* @author Rafał Żukowicz
|
||||||
|
*/
|
||||||
public class HttpCodeValidation implements ConstraintValidator<HttpCode, Integer> {
|
public class HttpCodeValidation implements ConstraintValidator<HttpCode, Integer> {
|
||||||
private Set<Integer> allowedValues;
|
private Set<Integer> allowedValues;
|
||||||
|
|
||||||
|
//TODO: Find use of targetEnum
|
||||||
|
/**
|
||||||
|
* Initializes {@link #allowedValues} with possible http status values.
|
||||||
|
* @param targetEnum HttpCode context
|
||||||
|
*/
|
||||||
@Override
|
@Override
|
||||||
public void initialize(HttpCode targetEnum) {
|
public void initialize(HttpCode targetEnum) {
|
||||||
allowedValues = Stream.of(HttpStatus.values())
|
allowedValues = Stream.of(HttpStatus.values())
|
||||||
@@ -19,6 +29,12 @@ public class HttpCodeValidation implements ConstraintValidator<HttpCode, Integer
|
|||||||
.collect(Collectors.toSet());
|
.collect(Collectors.toSet());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//TODO: Find use of ConstraintValidatorContext
|
||||||
|
/**
|
||||||
|
* @param integer value of {@link MockedMessageDto#getHttpStatus()} or {@link MockedMessage#getHttpStatus()}
|
||||||
|
* @param context context for validation
|
||||||
|
* @return true if valid
|
||||||
|
*/
|
||||||
@Override
|
@Override
|
||||||
public boolean isValid(Integer integer, ConstraintValidatorContext context) {
|
public boolean isValid(Integer integer, ConstraintValidatorContext context) {
|
||||||
return allowedValues.contains(integer);
|
return allowedValues.contains(integer);
|
||||||
|
|||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -10,7 +10,7 @@ import org.springframework.stereotype.Component;
|
|||||||
|
|
||||||
@Generated(
|
@Generated(
|
||||||
value = "org.mapstruct.ap.MappingProcessor",
|
value = "org.mapstruct.ap.MappingProcessor",
|
||||||
date = "2021-03-17T14:12:54+0100",
|
date = "2021-03-23T11:19:42+0100",
|
||||||
comments = "version: 1.3.1.Final, compiler: javac, environment: Java 14.0.1 (Oracle Corporation)"
|
comments = "version: 1.3.1.Final, compiler: javac, environment: Java 14.0.1 (Oracle Corporation)"
|
||||||
)
|
)
|
||||||
@Component
|
@Component
|
||||||
|
|||||||
Reference in New Issue
Block a user