private boolean checkInRequestHeaders(final WilmaHttpRequest request, final Parameter parameter) { boolean result; if (!"".equals(parameter.getValue())) { result = checkInHeaders(request, parameter); } else { result = false; } return result; }
private boolean evaluateParameter(final WilmaHttpRequest request, final Parameter parameter) { String paramValue = parameter.getValue(); boolean result = false; if (request.getRequestLine().contains(paramValue)) { result = true; } return result; }
private boolean evaluateParameter(final WilmaHttpRequest request, final Parameter parameter) { String paramValue = parameter.getValue(); boolean result = false; if (request.getRequestLine().contains(paramValue)) { result = true; } return result; }
/** * Gets the parameter value of the given key. * @param key the key of the parameter. * @return the value of the parameter if presented otherwise {@code null}. */ public String get(String key) { String value = null; for (Parameter p : parameters) { if (p.getName().equals(key)) { value = p.getValue(); } } return value; }
private boolean resolverParameters(final Parameter parameter) { return parameter.getValue().startsWith(URL_PREFIX) && (parameter.getName().startsWith(TYPE_PREFIX) || parameter.getName().startsWith(XPATH_PREFIX)); } }
@Override public boolean checkCondition(final WilmaHttpRequest request, final ParameterList parameterList) { List<Parameter> params = parameterList.getAllParameters(); Iterator<Parameter> iterator = params.iterator(); boolean result = !params.isEmpty(); while (iterator.hasNext() && result) { Parameter parameter = iterator.next(); String parameterValue = parameter.getValue(); result = evaluateParameter(request, parameterValue); } return result; }
private boolean checkInHeaders(final WilmaHttpRequest request, final Parameter parameter) { boolean result = false; Iterator<Entry<String, String>> headerIterator = request.getHeaders().entrySet().iterator(); while (headerIterator.hasNext() && !result) { Map.Entry<String, String> header = headerIterator.next(); result = operator.checkTarget(parameter.getValue(), header.getValue()); } return result; }
@Override public boolean checkCondition(final WilmaHttpRequest request, final ParameterList parameterList) { List<Parameter> params = parameterList.getAllParameters(); Iterator<Parameter> iterator = params.iterator(); boolean result = !params.isEmpty(); while (iterator.hasNext() && result) { Parameter parameter = iterator.next(); String parameterValue = parameter.getValue(); result = evaluateParameter(request, parameterValue); } return result; }
private String getTemplate(final byte[] templateResource, final ParameterList params) throws IOException { String template = IOUtils.toString(templateResource, "utf-8"); for (Parameter param : params.getAllParameters()) { String name = param.getName(); String value = param.getValue(); template = template.replace(name, value); } return template; }
private boolean checkInRequestHeaders(final WilmaHttpRequest request, final Parameter parameter) { boolean result; String parameterValue = parameter.getValue(); if (!"".equals(parameterValue)) { result = operator.checkTarget(parameterValue, request.getBody()); } else { result = false; } return result; }
private String checkAndGetXslResourcePath(final ParameterList params) { List<Parameter> paramList = params.getAllParameters(); String xslResourceName = ""; if (paramList.size() == 1) { xslResourceName = paramList.get(0).getValue(); } else { throw new ResponseFormattingFailedException( "The XslBasedResponseFormatter must have one parameter in stub configuration to define necessary xsl template file."); } return (stubResourcePathProvider.getTemplatesPathAsString() + "/" + xslResourceName).replace("\\", "/"); } }
private String evaluateQueryWithParamCheck(final WilmaHttpRequest request, final ParameterList parameterList) { String result = ""; List<Parameter> params = parameterList.getAllParameters(); if (params.size() == 1) { String nodeName = params.iterator().next().getValue(); result = evaluateQuery(request, nodeName); } else { throw new ConditionEvaluationFailedException( "Condition evaluation failed, the XmlRootNodeChecker must have one parameter in the stub configuration file!"); } return result; }
@Override public boolean checkCondition(final WilmaHttpRequest request, final ParameterList parameterList) { List<Parameter> params = parameterList.getAllParameters(); Iterator<Parameter> iterator = params.iterator(); boolean result = !params.isEmpty(); while (iterator.hasNext() && result) { Parameter parameter = iterator.next(); String header = request.getHeader(parameter.getName()); if (header != null) { result = result && header.contains(parameter.getValue()); } else { result = false; } } return result; }
private String getTemplate(final byte[] templateResource, final ParameterList params) throws IOException { String template = IOUtils.toString(templateResource, "utf-8"); for (Parameter param : params.getAllParameters()) { String name = param.getName(); String value = param.getValue(); try { template = template.replaceAll(name, value); } catch (PatternSyntaxException e) { throw new ResponseFormattingFailedException("Pattern syntax :'" + name + "' incorrect!", e); } } return template; }
@Override public void onResponseReceive(final WilmaHttpResponse response, final ParameterList parameters) { if (parameters != null && !parameters.isEmpty()) { List<Parameter> parameterList = parameters.getAllParameters(); for (Parameter parameter : parameterList) { String name = parameter.getName(); String value = parameter.getValue(); if (REMOVE_HEADER.equals(name.toUpperCase())) { // remove header response.addHeaderRemove(value); } else { response.addHeaderUpdate(name, value); } } } }
@Override public void onRequestReceive(final WilmaHttpRequest request, final ParameterList parameters) { if (parameters != null && !parameters.isEmpty()) { List<Parameter> parameterList = parameters.getAllParameters(); for (Parameter parameter : parameterList) { String name = parameter.getName(); String value = parameter.getValue(); if (REMOVE_HEADER.equals(name.toUpperCase())) { // remove header request.addHeaderRemove(value); } else { request.addHeaderUpdate(name, value); } } } }
private String resolveRequest(final WilmaHttpEntity entity, final ParameterList parameters) { String resolvedName = EMPTY; WilmaHttpRequest request = (WilmaHttpRequest) entity; for (Parameter parameter : parameters.getAllParameters()) { if (resolverParameters(parameter)) { String target = getTargetUrl(parameter.getValue()); String url = resolveUrlFromRequestLine(request); if (matches(url, target)) { resolvedName = getType(parameter.getName(), entity); } } } return resolvedName; }
@Test public void testParseNodeShouldReturnTemplateFormatterParam() { //GIVEN getChildNodes(); given(element.getNodeType()).willReturn(Node.ELEMENT_NODE); given(element.getTagName()).willReturn(TEMPLATE_FORMATTER_TAG); mockTemplateFormatterAttributes(); //WHEN Set<ResponseFormatterDescriptor> actual = underTest.parseNode(node, document); //THEN assertEquals(((ResponseFormatterDescriptor) actual.toArray()[0]).getParams().getAllParameters().get(0).getValue(), "value"); }
@Test public void testParseNodeShouldReturnInterceptorDescriptorEvenIfOnlyFirstInterfaceIsImplemented() { //GIVEN NodeList paramNodeList = createParamNodeList(); ResponseInterceptor responseInterceptor = new MockResponseInterceptor(); given(interceptorNode.getAttribute("name")).willReturn(NAME); given(interceptorNode.getAttribute("class")).willReturn(CLASS); given(interceptorNode.getElementsByTagName("param")).willReturn(paramNodeList); given(requestInterceptorInitializer.getExternalClassObject(CLASS)).willReturn(null); given(responseInterceptorInitializer.getExternalClassObject(CLASS)).willReturn(responseInterceptor); //WHEN InterceptorDescriptor actual = underTest.parseNode(interceptorNode, document); //THEN assertEquals(actual.getName(), NAME); assertEquals(actual.getResponseInterceptor(), responseInterceptor); assertEquals(actual.getParams().getAllParameters().get(0).getName(), NAME); assertEquals(actual.getParams().getAllParameters().get(0).getValue(), VALUE); }
@Test public void testParseNodeShouldReturnInterceptorDescriptor() { //GIVEN NodeList paramNodeList = createParamNodeList(); RequestInterceptor requestInterceptor = new MockRequestInterceptor(); ResponseInterceptor responseInterceptor = new MockResponseInterceptor(); given(interceptorNode.getAttribute("name")).willReturn(NAME); given(interceptorNode.getAttribute("class")).willReturn(CLASS); given(interceptorNode.getElementsByTagName("param")).willReturn(paramNodeList); given(requestInterceptorInitializer.getExternalClassObject(CLASS)).willReturn(requestInterceptor); given(responseInterceptorInitializer.getExternalClassObject(CLASS)).willReturn(responseInterceptor); //WHEN InterceptorDescriptor actual = underTest.parseNode(interceptorNode, document); //THEN assertEquals(actual.getName(), NAME); assertEquals(actual.getRequestInterceptor(), requestInterceptor); assertEquals(actual.getResponseInterceptor(), responseInterceptor); assertEquals(actual.getParams().getAllParameters().get(0).getName(), NAME); assertEquals(actual.getParams().getAllParameters().get(0).getValue(), VALUE); }