/** * The method generates a default response. * @return The newly generated {@link RestMockResponse}. */ protected RestMockResponse generateResponse(){ RestMockResponse restMockResponse = new RestMockResponse(); restMockResponse.setName(AUTO_GENERATED_MOCK_RESPONSE_DEFAULT_NAME); restMockResponse.setHttpStatusCode(DEFAULT_RESPONSE_CODE); restMockResponse.setStatus(RestMockResponseStatus.ENABLED); restMockResponse.setUsingExpressions(true); return restMockResponse; }
/** * The method generates a mocked response based on the provided {@link Response} and the * <code>httpStatusCode</code>. * @param httpStatusCode The HTTP status code that the mocked response will have. Please note that * any mock response with status code different from OK (200), will be * marked as disabled. * @param response The Swagger response that the mocked response will be based on. * @return A new {@link RestMockResponse} based on the provided {@link Response}. */ private RestMockResponse generateResponse(final int httpStatusCode, final Response response){ RestMockResponse restMockResponse = new RestMockResponse(); restMockResponse.setName(response.getDescription()); restMockResponse.setHttpStatusCode(httpStatusCode); restMockResponse.setUsingExpressions(true); if(httpStatusCode == DEFAULT_RESPONSE_CODE){ restMockResponse.setStatus(RestMockResponseStatus.ENABLED); } else { restMockResponse.setStatus(RestMockResponseStatus.DISABLED); } if(response.getHeaders() != null){ for(Map.Entry<String, Property> headerEntry : response.getHeaders().entrySet()){ String headerName = headerEntry.getKey(); HttpHeader httpHeader = new HttpHeader(); httpHeader.setName(headerName); // Swagger does not include an example value for the response. restMockResponse.getHttpHeaders().add(httpHeader); } } return restMockResponse; }
restMockResponse1.setName("Mocked response 1"); restMockResponse1.setStatus(RestMockResponseStatus.ENABLED); restMockResponse1.setUsingExpressions(false); restMockResponse1.setParameterQueries(ImmutableList.of(parameterQuery)); restMockResponse2.setName("Mocked response 2"); restMockResponse2.setStatus(RestMockResponseStatus.ENABLED); restMockResponse2.setUsingExpressions(false); restMockResponse2.setParameterQueries(ImmutableList.of());
restMockResponse.setName("Mocked response"); restMockResponse.setStatus(RestMockResponseStatus.ENABLED); restMockResponse.setUsingExpressions(false);
mockResponse.setStatus(mockResponseV1.getStatus()); mockResponse.setHttpStatusCode(mockResponseV1.getHttpStatusCode()); mockResponse.setUsingExpressions(mockResponseV1.isUsingExpressions());
/** * The process message is responsible for processing an incoming serviceTask and generate * a response based on the incoming serviceTask input * @param serviceTask The serviceTask that will be processed by the service * @return A result based on the processed incoming serviceTask * @see ServiceTask * @see ServiceResult */ @Override public ServiceResult<UpdateRestMockResponseOutput> process(final ServiceTask<UpdateRestMockResponseInput> serviceTask) { final UpdateRestMockResponseInput input = serviceTask.getInput(); final RestMockResponse existing = this.mockResponseRepository.findOne(input.getRestMockResponseId()); final RestMockResponse updatedRestMockResponse = input.getRestMockResponse(); existing.setName(updatedRestMockResponse.getName()); existing.setBody(updatedRestMockResponse.getBody()); existing.setHttpStatusCode(updatedRestMockResponse.getHttpStatusCode()); existing.setHttpHeaders(updatedRestMockResponse.getHttpHeaders()); existing.setStatus(updatedRestMockResponse.getStatus()); existing.setUsingExpressions(updatedRestMockResponse.isUsingExpressions()); existing.setParameterQueries(updatedRestMockResponse.getParameterQueries()); existing.setXpathExpressions(updatedRestMockResponse.getXpathExpressions()); existing.setJsonPathExpressions(updatedRestMockResponse.getJsonPathExpressions()); this.mockResponseRepository.update(input.getRestMockResponseId(), existing); return createServiceResult(UpdateRestMockResponseOutput.builder() .updatedRestMockResponse(updatedRestMockResponse) .build()); } }