@Override public String getMethodClassnameFromMethodName(String mName) { boolean useOverriddenHttpMethodImpl = config.getAsBoolean("http.client.use.new.http.uri.factory", false); if (useOverriddenHttpMethodImpl) { return String.format("smartrics.rest.fitnesse.fixture.support.http.%sMethod", mName); } return super.getMethodClassnameFromMethodName(mName); } };
private RequestEntity configureMultipartFileUpload(HttpMethod m, final RestRequest request, RequestEntity requestEntity, Map<String, RestMultipart> multipartFiles) { MultipartRequestEntity multipartRequestEntity = null; // Current File Name reading for tracking missing file String fileName = null; List<Part> fileParts = new ArrayList<Part>(multipartFiles.size()); // Read File Part for (Map.Entry<String, RestMultipart> multipartFile : multipartFiles.entrySet()) { Part filePart = createMultipart(multipartFile.getKey(), multipartFile.getValue()); fileParts.add(filePart); } Part[] parts = fileParts.toArray(new Part[fileParts.size()]); multipartRequestEntity = new MultipartRequestEntity(parts, ((EntityEnclosingMethod) m).getParams()); return multipartRequestEntity; }
/** * See {@link smartrics.rest.client.RestClient#execute(smartrics.rest.client.RestRequest)} */ public RestResponse execute(RestRequest request) { return execute(getBaseUrl(), request); }
addHeaders(m, request); setUri(m, hostAddr, request); m.setQueryString(request.getQuery()); if (m instanceof EntityEnclosingMethod) { String fileName = request.getFileName(); if (fileName != null) { requestEntity = configureFileUpload(fileName); } else { requestEntity = configureMultipartFileUpload(m, request, requestEntity, multipartFiles); } else { requestEntity = new RequestEntity() {
@Override protected URI createUri(String uriString, boolean escaped) throws URIException { boolean useNewHttpUriFactory = config.getAsBoolean("http.client.use.new.http.uri.factory", false); if (useNewHttpUriFactory) { return new HttpURL(uriString); } return super.createUri(uriString, escaped); }
request.setTransactionId(Long.valueOf(System.currentTimeMillis())); LOG.debug("request: {}", request); HttpMethod m = createHttpClientMethod(request); configureHttpMethod(m, hostAddr, request);
private void setUri(HttpMethod m, String hostAddr, RestRequest request) { String host = hostAddr == null ? client.getHostConfiguration().getHost() : hostAddr; if (host == null) throw new IllegalStateException("hostAddress is null: please config httpClient host configuration or " + "pass a valid host address or config a baseUrl on this client"); String uriString = host + request.getResource(); boolean escaped = request.isResourceUriEscaped(); try { m.setURI(createUri(uriString, escaped)); } catch (URIException e) { throw new IllegalStateException("Problem when building URI: " + uriString, e); } catch (NullPointerException e) { throw new IllegalStateException("Building URI with null string", e); } }
protected HttpMethod createHttpClientMethod(RestRequest request) { String mName = request.getMethod().toString(); String className = getMethodClassnameFromMethodName(mName); try { Class<HttpMethod> clazz = (Class<HttpMethod>) Class.forName(className);