Removed deprecated classes
diff --git a/httpclient5/src/main/java/org/apache/hc/client5/http/StandardMethods.java b/httpclient5/src/main/java/org/apache/hc/client5/http/StandardMethods.java
deleted file mode 100644
index 39ba814..0000000
--- a/httpclient5/src/main/java/org/apache/hc/client5/http/StandardMethods.java
+++ /dev/null
@@ -1,90 +0,0 @@
-/*
- * ====================================================================
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- * ====================================================================
- *
- * This software consists of voluntary contributions made by many
- * individuals on behalf of the Apache Software Foundation. For more
- * information on the Apache Software Foundation, please see
- * <http://www.apache.org/>.
- *
- */
-
-package org.apache.hc.client5.http;
-
-import java.util.Locale;
-
-/**
- * Common HTTP methods defined by the HTTP spec.
- *
- * @since 5.0
- *
- * @deprecated Use {@link org.apache.hc.core5.http.Methods}
- */
-@Deprecated
-public enum StandardMethods {
-
- GET(true, true),
- HEAD(true, true),
- POST(false, false),
- PUT(false, true),
- DELETE(false, true),
- CONNECT(false, false),
- TRACE(true, true),
- OPTIONS(true, true),
- PATCH(false, false);
-
- private final boolean safe;
- private final boolean idempotent;
-
- StandardMethods(final boolean safe, final boolean idempotent) {
- this.safe = safe;
- this.idempotent = idempotent;
- }
-
- public boolean isSafe() {
- return safe;
- }
-
- public boolean isIdempotent() {
- return idempotent;
- }
-
- public static boolean isSafe(final String value) {
- if (value == null) {
- return false;
- }
- try {
- return valueOf(value.toUpperCase(Locale.ROOT)).safe;
- } catch (final IllegalArgumentException ex) {
- return false;
- }
- }
-
- public static boolean isIdempotent(final String value) {
- if (value == null) {
- return false;
- }
- try {
- return valueOf(value.toUpperCase(Locale.ROOT)).idempotent;
- } catch (final IllegalArgumentException ex) {
- return false;
- }
- }
-
-}
diff --git a/httpclient5/src/main/java/org/apache/hc/client5/http/async/methods/AsyncRequestBuilder.java b/httpclient5/src/main/java/org/apache/hc/client5/http/async/methods/AsyncRequestBuilder.java
deleted file mode 100644
index 91a6f4f..0000000
--- a/httpclient5/src/main/java/org/apache/hc/client5/http/async/methods/AsyncRequestBuilder.java
+++ /dev/null
@@ -1,453 +0,0 @@
-/*
- * ====================================================================
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- * ====================================================================
- *
- * This software consists of voluntary contributions made by many
- * individuals on behalf of the Apache Software Foundation. For more
- * information on the Apache Software Foundation, please see
- * <http://www.apache.org/>.
- *
- */
-
-package org.apache.hc.client5.http.async.methods;
-
-import java.net.URI;
-import java.net.URISyntaxException;
-import java.nio.charset.Charset;
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.LinkedList;
-import java.util.List;
-
-import org.apache.hc.client5.http.config.RequestConfig;
-import org.apache.hc.core5.http.ContentType;
-import org.apache.hc.core5.http.Header;
-import org.apache.hc.core5.http.HttpHost;
-import org.apache.hc.core5.http.Methods;
-import org.apache.hc.core5.http.NameValuePair;
-import org.apache.hc.core5.http.ProtocolVersion;
-import org.apache.hc.core5.http.message.BasicHeader;
-import org.apache.hc.core5.http.message.BasicNameValuePair;
-import org.apache.hc.core5.http.message.HeaderGroup;
-import org.apache.hc.core5.http.nio.AsyncEntityProducer;
-import org.apache.hc.core5.http.nio.AsyncRequestProducer;
-import org.apache.hc.core5.http.nio.entity.BasicAsyncEntityProducer;
-import org.apache.hc.core5.http.nio.entity.StringAsyncEntityProducer;
-import org.apache.hc.core5.http.nio.support.BasicRequestProducer;
-import org.apache.hc.core5.net.URIBuilder;
-import org.apache.hc.core5.net.URLEncodedUtils;
-import org.apache.hc.core5.util.Args;
-import org.apache.hc.core5.util.TextUtils;
-
-/**
- * Builder for {@link AsyncRequestProducer} instances.
- * <p>
- * Please note that this class treats parameters differently depending on composition
- * of the request: if the request has a content entity explicitly set with
- * {@link #setEntity(AsyncEntityProducer)} or it is not an entity enclosing method
- * (such as POST or PUT), parameters will be added to the query component of the request URI.
- * Otherwise, parameters will be added as a URL encoded entity.
- * </p>
- *
- * @since 5.0
- *
- * @deprecated Use {@link org.apache.hc.core5.http.nio.support.AsyncRequestBuilder}
- */
-@Deprecated
-public class AsyncRequestBuilder {
-
- private HttpHost host;
- private String path;
- private URI uri;
- private String method;
- private Charset charset;
- private ProtocolVersion version;
- private HeaderGroup headergroup;
- private AsyncEntityProducer entityProducer;
- private List<NameValuePair> parameters;
- private RequestConfig config;
-
- AsyncRequestBuilder() {
- }
-
- AsyncRequestBuilder(final String method) {
- super();
- this.method = method;
- }
-
- AsyncRequestBuilder(final Methods method) {
- this(method.name());
- }
-
- AsyncRequestBuilder(final String method, final URI uri) {
- super();
- this.method = method;
- this.uri = uri;
- }
-
- AsyncRequestBuilder(final Methods method, final HttpHost host, final String path) {
- super();
- this.method = method.name();
- this.host = host;
- this.path = path;
- }
-
- AsyncRequestBuilder(final Methods method, final URI uri) {
- this(method.name(), uri);
- }
-
- AsyncRequestBuilder(final Methods method, final String uri) {
- this(method.name(), uri != null ? URI.create(uri) : null);
- }
-
- AsyncRequestBuilder(final String method, final String uri) {
- this(method, uri != null ? URI.create(uri) : null);
- }
-
- public static AsyncRequestBuilder create(final String method) {
- Args.notBlank(method, "HTTP method");
- return new AsyncRequestBuilder(method);
- }
-
- public static AsyncRequestBuilder get() {
- return new AsyncRequestBuilder(Methods.GET);
- }
-
- public static AsyncRequestBuilder get(final URI uri) {
- return new AsyncRequestBuilder(Methods.GET, uri);
- }
-
- public static AsyncRequestBuilder get(final String uri) {
- return new AsyncRequestBuilder(Methods.GET, uri);
- }
-
- public static AsyncRequestBuilder get(final HttpHost host, final String path) {
- return new AsyncRequestBuilder(Methods.GET, host, path);
- }
-
- public static AsyncRequestBuilder head() {
- return new AsyncRequestBuilder(Methods.HEAD);
- }
-
- public static AsyncRequestBuilder head(final URI uri) {
- return new AsyncRequestBuilder(Methods.HEAD, uri);
- }
-
- public static AsyncRequestBuilder head(final String uri) {
- return new AsyncRequestBuilder(Methods.HEAD, uri);
- }
-
- public static AsyncRequestBuilder head(final HttpHost host, final String path) {
- return new AsyncRequestBuilder(Methods.HEAD, host, path);
- }
-
- public static AsyncRequestBuilder patch() {
- return new AsyncRequestBuilder(Methods.PATCH);
- }
-
- public static AsyncRequestBuilder patch(final URI uri) {
- return new AsyncRequestBuilder(Methods.PATCH, uri);
- }
-
- public static AsyncRequestBuilder patch(final String uri) {
- return new AsyncRequestBuilder(Methods.PATCH, uri);
- }
-
- public static AsyncRequestBuilder patch(final HttpHost host, final String path) {
- return new AsyncRequestBuilder(Methods.PATCH, host, path);
- }
-
- public static AsyncRequestBuilder post() {
- return new AsyncRequestBuilder(Methods.POST);
- }
-
- public static AsyncRequestBuilder post(final URI uri) {
- return new AsyncRequestBuilder(Methods.POST, uri);
- }
-
- public static AsyncRequestBuilder post(final String uri) {
- return new AsyncRequestBuilder(Methods.POST, uri);
- }
-
- public static AsyncRequestBuilder post(final HttpHost host, final String path) {
- return new AsyncRequestBuilder(Methods.POST, host, path);
- }
-
- public static AsyncRequestBuilder put() {
- return new AsyncRequestBuilder(Methods.PUT);
- }
-
- public static AsyncRequestBuilder put(final URI uri) {
- return new AsyncRequestBuilder(Methods.PUT, uri);
- }
-
- public static AsyncRequestBuilder put(final String uri) {
- return new AsyncRequestBuilder(Methods.PUT, uri);
- }
-
- public static AsyncRequestBuilder put(final HttpHost host, final String path) {
- return new AsyncRequestBuilder(Methods.PUT, host, path);
- }
-
- public static AsyncRequestBuilder delete() {
- return new AsyncRequestBuilder(Methods.DELETE);
- }
-
- public static AsyncRequestBuilder delete(final URI uri) {
- return new AsyncRequestBuilder(Methods.DELETE, uri);
- }
-
- public static AsyncRequestBuilder delete(final String uri) {
- return new AsyncRequestBuilder(Methods.DELETE, uri);
- }
-
- public static AsyncRequestBuilder delete(final HttpHost host, final String path) {
- return new AsyncRequestBuilder(Methods.DELETE, host, path);
- }
-
- public static AsyncRequestBuilder trace() {
- return new AsyncRequestBuilder(Methods.TRACE);
- }
-
- public static AsyncRequestBuilder trace(final URI uri) {
- return new AsyncRequestBuilder(Methods.TRACE, uri);
- }
-
- public static AsyncRequestBuilder trace(final String uri) {
- return new AsyncRequestBuilder(Methods.TRACE, uri);
- }
-
- public static AsyncRequestBuilder trace(final HttpHost host, final String path) {
- return new AsyncRequestBuilder(Methods.TRACE, host, path);
- }
-
- public static AsyncRequestBuilder options() {
- return new AsyncRequestBuilder(Methods.OPTIONS);
- }
-
- public static AsyncRequestBuilder options(final URI uri) {
- return new AsyncRequestBuilder(Methods.OPTIONS, uri);
- }
-
- public static AsyncRequestBuilder options(final String uri) {
- return new AsyncRequestBuilder(Methods.OPTIONS, uri);
- }
-
- public static AsyncRequestBuilder options(final HttpHost host, final String path) {
- return new AsyncRequestBuilder(Methods.OPTIONS, host, path);
- }
-
- public AsyncRequestBuilder setCharset(final Charset charset) {
- this.charset = charset;
- return this;
- }
-
- public Charset getCharset() {
- return charset;
- }
-
- public String getMethod() {
- return method;
- }
-
- public URI getUri() {
- return uri;
- }
-
- public AsyncRequestBuilder setUri(final URI uri) {
- this.uri = uri;
- this.host = null;
- this.path = null;
- return this;
- }
-
- public AsyncRequestBuilder setUri(final String uri) {
- this.uri = uri != null ? URI.create(uri) : null;
- this.host = null;
- this.path = null;
- return this;
- }
-
- public ProtocolVersion getVersion() {
- return version;
- }
-
- public AsyncRequestBuilder setVersion(final ProtocolVersion version) {
- this.version = version;
- return this;
- }
-
- public Header getFirstHeader(final String name) {
- return headergroup != null ? headergroup.getFirstHeader(name) : null;
- }
-
- public Header getLastHeader(final String name) {
- return headergroup != null ? headergroup.getLastHeader(name) : null;
- }
-
- public Header[] getHeaders(final String name) {
- return headergroup != null ? headergroup.getHeaders(name) : null;
- }
-
- public AsyncRequestBuilder addHeader(final Header header) {
- if (headergroup == null) {
- headergroup = new HeaderGroup();
- }
- headergroup.addHeader(header);
- return this;
- }
-
- public AsyncRequestBuilder addHeader(final String name, final String value) {
- if (headergroup == null) {
- headergroup = new HeaderGroup();
- }
- this.headergroup.addHeader(new BasicHeader(name, value));
- return this;
- }
-
- public AsyncRequestBuilder removeHeader(final Header header) {
- if (headergroup == null) {
- headergroup = new HeaderGroup();
- }
- headergroup.removeHeader(header);
- return this;
- }
-
- public AsyncRequestBuilder removeHeaders(final String name) {
- if (name == null || headergroup == null) {
- return this;
- }
- for (final Iterator<Header> i = headergroup.headerIterator(); i.hasNext(); ) {
- final Header header = i.next();
- if (name.equalsIgnoreCase(header.getName())) {
- i.remove();
- }
- }
- return this;
- }
-
- public AsyncRequestBuilder setHeader(final Header header) {
- if (headergroup == null) {
- headergroup = new HeaderGroup();
- }
- this.headergroup.setHeader(header);
- return this;
- }
-
- public AsyncRequestBuilder setHeader(final String name, final String value) {
- if (headergroup == null) {
- headergroup = new HeaderGroup();
- }
- this.headergroup.setHeader(new BasicHeader(name, value));
- return this;
- }
-
- public List<NameValuePair> getParameters() {
- return parameters != null ? new ArrayList<>(parameters) :
- new ArrayList<NameValuePair>();
- }
-
- public AsyncRequestBuilder addParameter(final NameValuePair nvp) {
- Args.notNull(nvp, "Name value pair");
- if (parameters == null) {
- parameters = new LinkedList<>();
- }
- parameters.add(nvp);
- return this;
- }
-
- public AsyncRequestBuilder addParameter(final String name, final String value) {
- return addParameter(new BasicNameValuePair(name, value));
- }
-
- public AsyncRequestBuilder addParameters(final NameValuePair... nvps) {
- for (final NameValuePair nvp: nvps) {
- addParameter(nvp);
- }
- return this;
- }
-
- public RequestConfig getConfig() {
- return config;
- }
-
- public AsyncRequestBuilder setConfig(final RequestConfig config) {
- this.config = config;
- return this;
- }
-
- public AsyncEntityProducer getEntity() {
- return entityProducer;
- }
-
- public AsyncRequestBuilder setEntity(final AsyncEntityProducer entityProducer) {
- this.entityProducer = entityProducer;
- return this;
- }
-
- public AsyncRequestBuilder setEntity(final String content, final ContentType contentType) {
- this.entityProducer = new BasicAsyncEntityProducer(content, contentType);
- return this;
- }
-
- public AsyncRequestBuilder setEntity(final byte[] content, final ContentType contentType) {
- this.entityProducer = new BasicAsyncEntityProducer(content, contentType);
- return this;
- }
-
- public AsyncRequestProducer build() {
- AsyncEntityProducer entityProducerCopy = this.entityProducer;
- if (parameters != null && !parameters.isEmpty()) {
- if (entityProducerCopy == null && (Methods.POST.isSame(method) || Methods.PUT.isSame(method))) {
- final String content = URLEncodedUtils.format(
- parameters,
- charset != null ? charset : ContentType.APPLICATION_FORM_URLENCODED.getCharset());
- entityProducerCopy = new StringAsyncEntityProducer(
- content,
- ContentType.APPLICATION_FORM_URLENCODED);
- } else {
- try {
- uri = new URIBuilder(uri)
- .setCharset(this.charset)
- .addParameters(parameters)
- .build();
- } catch (final URISyntaxException ex) {
- // should never happen
- }
- }
- }
-
- if (entityProducerCopy != null && Methods.isSafe(method)) {
- throw new IllegalStateException(Methods.TRACE + " requests may not include an entity.");
- }
-
- final ConfigurableHttpRequest request = host != null ?
- new ConfigurableHttpRequest(method, host, !TextUtils.isBlank(path) ? path : "/") :
- new ConfigurableHttpRequest(method, uri != null ? uri : URI.create("/"));
- if (this.headergroup != null) {
- request.setHeaders(this.headergroup.getHeaders());
- }
- if (version != null) {
- request.setVersion(version);
- }
- request.setConfig(config);
- return new BasicRequestProducer(request, entityProducerCopy);
- }
-
-}
diff --git a/httpclient5/src/main/java/org/apache/hc/client5/http/classic/methods/RequestBuilder.java b/httpclient5/src/main/java/org/apache/hc/client5/http/classic/methods/RequestBuilder.java
deleted file mode 100644
index 3f8f4ab..0000000
--- a/httpclient5/src/main/java/org/apache/hc/client5/http/classic/methods/RequestBuilder.java
+++ /dev/null
@@ -1,526 +0,0 @@
-/*
- * ====================================================================
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- * ====================================================================
- *
- * This software consists of voluntary contributions made by many
- * individuals on behalf of the Apache Software Foundation. For more
- * information on the Apache Software Foundation, please see
- * <http://www.apache.org/>.
- *
- */
-
-package org.apache.hc.client5.http.classic.methods;
-
-import java.io.IOException;
-import java.net.URI;
-import java.net.URISyntaxException;
-import java.nio.charset.Charset;
-import java.nio.charset.StandardCharsets;
-import java.util.ArrayList;
-import java.util.Iterator;
-import java.util.LinkedList;
-import java.util.List;
-
-import org.apache.hc.client5.http.StandardMethods;
-import org.apache.hc.client5.http.config.Configurable;
-import org.apache.hc.client5.http.config.RequestConfig;
-import org.apache.hc.client5.http.entity.UrlEncodedFormEntity;
-import org.apache.hc.core5.http.ClassicHttpRequest;
-import org.apache.hc.core5.http.ContentType;
-import org.apache.hc.core5.http.Header;
-import org.apache.hc.core5.http.HttpEntity;
-import org.apache.hc.core5.http.HttpVersion;
-import org.apache.hc.core5.http.NameValuePair;
-import org.apache.hc.core5.http.ProtocolVersion;
-import org.apache.hc.core5.http.io.entity.EntityUtils;
-import org.apache.hc.core5.http.message.BasicHeader;
-import org.apache.hc.core5.http.message.BasicNameValuePair;
-import org.apache.hc.core5.http.message.HeaderGroup;
-import org.apache.hc.core5.net.URIBuilder;
-import org.apache.hc.core5.util.Args;
-
-/**
- * Builder for {@link ClassicHttpRequest} instances.
- * <p>
- * Please note that this class treats parameters differently depending on composition
- * of the request: if the request has a content entity explicitly set with
- * {@link #setEntity(org.apache.hc.core5.http.HttpEntity)} or it is not an entity enclosing
- * method (such as POST or PUT), parameters will be added to the query component
- * of the request URI. Otherwise, parameters will be added as a URL encoded
- * {@link UrlEncodedFormEntity entity}.
- * </p>
- *
- * @since 4.3
- *
- * @deprecated Use {@link org.apache.hc.core5.http.io.support.ClassicRequestBuilder}
- */
-@Deprecated
-public class RequestBuilder {
-
- private String method;
- private Charset charset;
- private ProtocolVersion version;
- private URI uri;
- private HeaderGroup headerGroup;
- private HttpEntity entity;
- private List<NameValuePair> parameters;
- private RequestConfig config;
-
- RequestBuilder(final String method) {
- super();
- this.charset = StandardCharsets.UTF_8;
- this.method = method;
- }
-
- RequestBuilder() {
- }
-
- RequestBuilder(final StandardMethods method) {
- this(method.name());
- }
-
- RequestBuilder(final String method, final URI uri) {
- super();
- this.method = method;
- this.uri = uri;
- }
-
- RequestBuilder(final StandardMethods method, final URI uri) {
- this(method.name(), uri);
- }
-
- RequestBuilder(final String method, final String uri) {
- super();
- this.method = method;
- this.uri = uri != null ? URI.create(uri) : null;
- }
-
- RequestBuilder(final StandardMethods method, final String uri) {
- this(method.name(), uri);
- }
-
- public static RequestBuilder create(final String method) {
- Args.notBlank(method, "HTTP method");
- return new RequestBuilder(method);
- }
-
- public static RequestBuilder get() {
- return new RequestBuilder(StandardMethods.GET.name());
- }
-
- /**
- * @since 4.4
- */
- public static RequestBuilder get(final URI uri) {
- return new RequestBuilder(StandardMethods.GET, uri);
- }
-
- /**
- * @since 4.4
- */
- public static RequestBuilder get(final String uri) {
- return new RequestBuilder(StandardMethods.GET, uri);
- }
-
- public static RequestBuilder head() {
- return new RequestBuilder(StandardMethods.HEAD);
- }
-
- /**
- * @since 4.4
- */
- public static RequestBuilder head(final URI uri) {
- return new RequestBuilder(StandardMethods.HEAD, uri);
- }
-
- /**
- * @since 4.4
- */
- public static RequestBuilder head(final String uri) {
- return new RequestBuilder(StandardMethods.HEAD, uri);
- }
-
- /**
- * @since 4.4
- */
- public static RequestBuilder patch() {
- return new RequestBuilder(StandardMethods.PATCH.name());
- }
-
- /**
- * @since 4.4
- */
- public static RequestBuilder patch(final URI uri) {
- return new RequestBuilder(StandardMethods.PATCH, uri);
- }
-
- /**
- * @since 4.4
- */
- public static RequestBuilder patch(final String uri) {
- return new RequestBuilder(StandardMethods.PATCH, uri);
- }
-
- public static RequestBuilder post() {
- return new RequestBuilder(StandardMethods.POST);
- }
-
- /**
- * @since 4.4
- */
- public static RequestBuilder post(final URI uri) {
- return new RequestBuilder(StandardMethods.POST, uri);
- }
-
- /**
- * @since 4.4
- */
- public static RequestBuilder post(final String uri) {
- return new RequestBuilder(StandardMethods.POST, uri);
- }
-
- public static RequestBuilder put() {
- return new RequestBuilder(StandardMethods.PUT);
- }
-
- /**
- * @since 4.4
- */
- public static RequestBuilder put(final URI uri) {
- return new RequestBuilder(StandardMethods.PUT, uri);
- }
-
- /**
- * @since 4.4
- */
- public static RequestBuilder put(final String uri) {
- return new RequestBuilder(StandardMethods.PUT, uri);
- }
-
- public static RequestBuilder delete() {
- return new RequestBuilder(StandardMethods.DELETE);
- }
-
- /**
- * @since 4.4
- */
- public static RequestBuilder delete(final URI uri) {
- return new RequestBuilder(StandardMethods.DELETE, uri);
- }
-
- /**
- * @since 4.4
- */
- public static RequestBuilder delete(final String uri) {
- return new RequestBuilder(StandardMethods.DELETE, uri);
- }
-
- public static RequestBuilder trace() {
- return new RequestBuilder(StandardMethods.TRACE);
- }
-
- /**
- * @since 4.4
- */
- public static RequestBuilder trace(final URI uri) {
- return new RequestBuilder(StandardMethods.TRACE, uri);
- }
-
- /**
- * @since 4.4
- */
- public static RequestBuilder trace(final String uri) {
- return new RequestBuilder(StandardMethods.TRACE, uri);
- }
-
- public static RequestBuilder options() {
- return new RequestBuilder(StandardMethods.OPTIONS);
- }
-
- /**
- * @since 4.4
- */
- public static RequestBuilder options(final URI uri) {
- return new RequestBuilder(StandardMethods.OPTIONS, uri);
- }
-
- /**
- * @since 4.4
- */
- public static RequestBuilder options(final String uri) {
- return new RequestBuilder(StandardMethods.OPTIONS, uri);
- }
-
- public static RequestBuilder copy(final ClassicHttpRequest request) {
- Args.notNull(request, "HTTP request");
- return new RequestBuilder().doCopy(request);
- }
-
- private RequestBuilder doCopy(final ClassicHttpRequest request) {
- if (request == null) {
- return this;
- }
- method = request.getMethod();
- version = request.getVersion();
-
- if (headerGroup == null) {
- headerGroup = new HeaderGroup();
- }
- headerGroup.clear();
- headerGroup.setHeaders(request.getHeaders());
-
- parameters = null;
- entity = null;
-
- final HttpEntity originalEntity = request.getEntity();
- if (originalEntity != null) {
- final ContentType contentType = ContentType.parse(originalEntity.getContentType());
- if (contentType != null &&
- contentType.getMimeType().equals(ContentType.APPLICATION_FORM_URLENCODED.getMimeType())) {
- try {
- final List<NameValuePair> formParams = EntityUtils.parse(originalEntity);
- if (!formParams.isEmpty()) {
- parameters = formParams;
- }
- } catch (final IOException ignore) {
- }
- } else {
- entity = originalEntity;
- }
- }
-
- try {
- uri = request.getUri();
- } catch (final URISyntaxException ignore) {
- }
- if (request instanceof Configurable) {
- config = ((Configurable) request).getConfig();
- } else {
- config = null;
- }
- return this;
- }
-
- /**
- * @since 4.4
- */
- public RequestBuilder setCharset(final Charset charset) {
- this.charset = charset;
- return this;
- }
-
- /**
- * @since 4.4
- */
- public Charset getCharset() {
- return charset;
- }
-
- public String getMethod() {
- return method;
- }
-
- public ProtocolVersion getVersion() {
- return version;
- }
-
- public RequestBuilder setVersion(final ProtocolVersion version) {
- this.version = version;
- return this;
- }
-
- public URI getUri() {
- return uri;
- }
-
- public RequestBuilder setUri(final URI uri) {
- this.uri = uri;
- return this;
- }
-
- public RequestBuilder setUri(final String uri) {
- this.uri = uri != null ? URI.create(uri) : null;
- return this;
- }
-
- public Header getFirstHeader(final String name) {
- return headerGroup != null ? headerGroup.getFirstHeader(name) : null;
- }
-
- public Header getLastHeader(final String name) {
- return headerGroup != null ? headerGroup.getLastHeader(name) : null;
- }
-
- public Header[] getHeaders(final String name) {
- return headerGroup != null ? headerGroup.getHeaders(name) : null;
- }
-
- public RequestBuilder addHeader(final Header header) {
- if (headerGroup == null) {
- headerGroup = new HeaderGroup();
- }
- headerGroup.addHeader(header);
- return this;
- }
-
- public RequestBuilder addHeader(final String name, final String value) {
- if (headerGroup == null) {
- headerGroup = new HeaderGroup();
- }
- this.headerGroup.addHeader(new BasicHeader(name, value));
- return this;
- }
-
- public RequestBuilder removeHeader(final Header header) {
- if (headerGroup == null) {
- headerGroup = new HeaderGroup();
- }
- headerGroup.removeHeader(header);
- return this;
- }
-
- public RequestBuilder removeHeaders(final String name) {
- if (name == null || headerGroup == null) {
- return this;
- }
- for (final Iterator<Header> i = headerGroup.headerIterator(); i.hasNext(); ) {
- final Header header = i.next();
- if (name.equalsIgnoreCase(header.getName())) {
- i.remove();
- }
- }
- return this;
- }
-
- public RequestBuilder setHeader(final Header header) {
- if (headerGroup == null) {
- headerGroup = new HeaderGroup();
- }
- this.headerGroup.setHeader(header);
- return this;
- }
-
- public RequestBuilder setHeader(final String name, final String value) {
- if (headerGroup == null) {
- headerGroup = new HeaderGroup();
- }
- this.headerGroup.setHeader(new BasicHeader(name, value));
- return this;
- }
-
- public HttpEntity getEntity() {
- return entity;
- }
-
- public RequestBuilder setEntity(final HttpEntity entity) {
- this.entity = entity;
- return this;
- }
-
- public List<NameValuePair> getParameters() {
- return parameters != null ? new ArrayList<>(parameters) :
- new ArrayList<NameValuePair>();
- }
-
- public RequestBuilder addParameter(final NameValuePair nvp) {
- Args.notNull(nvp, "Name value pair");
- if (parameters == null) {
- parameters = new LinkedList<>();
- }
- parameters.add(nvp);
- return this;
- }
-
- public RequestBuilder addParameter(final String name, final String value) {
- return addParameter(new BasicNameValuePair(name, value));
- }
-
- public RequestBuilder addParameters(final NameValuePair... nvps) {
- for (final NameValuePair nvp: nvps) {
- addParameter(nvp);
- }
- return this;
- }
-
- public RequestConfig getConfig() {
- return config;
- }
-
- public RequestBuilder setConfig(final RequestConfig config) {
- this.config = config;
- return this;
- }
-
- public ClassicHttpRequest build() {
- URI uriNotNull = this.uri != null ? this.uri : URI.create("/");
- HttpEntity entityCopy = this.entity;
- if (parameters != null && !parameters.isEmpty()) {
- if (entityCopy == null && (StandardMethods.POST.name().equalsIgnoreCase(method)
- || StandardMethods.PUT.name().equalsIgnoreCase(method))) {
- entityCopy = new UrlEncodedFormEntity(parameters, charset != null ? charset : StandardCharsets.ISO_8859_1);
- } else {
- try {
- uriNotNull = new URIBuilder(uriNotNull)
- .setCharset(this.charset)
- .addParameters(parameters)
- .build();
- } catch (final URISyntaxException ex) {
- // should never happen
- }
- }
- }
-
- if (entityCopy != null && StandardMethods.TRACE.name().equalsIgnoreCase(method)) {
- throw new IllegalStateException(StandardMethods.TRACE.name() + " requests may not include an entity.");
- }
-
- final HttpUriRequestBase result = new HttpUriRequestBase(method, uriNotNull);
- result.setVersion(this.version != null ? this.version : HttpVersion.HTTP_1_1);
- if (this.headerGroup != null) {
- result.setHeaders(this.headerGroup.getHeaders());
- }
- result.setEntity(entityCopy);
- result.setConfig(this.config);
- return result;
- }
-
- @Override
- public String toString() {
- final StringBuilder builder = new StringBuilder();
- builder.append("RequestBuilder [method=");
- builder.append(method);
- builder.append(", charset=");
- builder.append(charset);
- builder.append(", version=");
- builder.append(version);
- builder.append(", uri=");
- builder.append(uri);
- builder.append(", headerGroup=");
- builder.append(headerGroup);
- builder.append(", entity=");
- builder.append(entity);
- builder.append(", parameters=");
- builder.append(parameters);
- builder.append(", config=");
- builder.append(config);
- builder.append("]");
- return builder.toString();
- }
-
-}
diff --git a/httpclient5/src/main/java/org/apache/hc/client5/http/ssl/TLS.java b/httpclient5/src/main/java/org/apache/hc/client5/http/ssl/TLS.java
deleted file mode 100644
index 5d175ea..0000000
--- a/httpclient5/src/main/java/org/apache/hc/client5/http/ssl/TLS.java
+++ /dev/null
@@ -1,76 +0,0 @@
-/*
- * ====================================================================
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- * ====================================================================
- *
- * This software consists of voluntary contributions made by many
- * individuals on behalf of the Apache Software Foundation. For more
- * information on the Apache Software Foundation, please see
- * <http://www.apache.org/>.
- *
- */
-
-package org.apache.hc.client5.http.ssl;
-
-import org.apache.hc.core5.http.ParseException;
-import org.apache.hc.core5.http.ProtocolVersion;
-
-/**
- * Supported {@code TLS} protocol versions.
- *
- * @since 5.0
- *
- * @deprecated Use {@link org.apache.hc.core5.http.ssl.TLS}
- */
-@Deprecated
-public enum TLS {
-
- V_1_0("TLSv1", new ProtocolVersion("TLS", 1, 0)),
- V_1_1("TLSv1.1", new ProtocolVersion("TLS", 1, 1)),
- V_1_2("TLSv1.2", new ProtocolVersion("TLS", 1, 2)),
- V_1_3("TLSv1.3", new ProtocolVersion("TLS", 1, 3));
-
- public final String ident;
- public final ProtocolVersion version;
-
- TLS(final String ident, final ProtocolVersion version) {
- this.ident = ident;
- this.version = version;
- }
-
- public boolean isSame(final ProtocolVersion protocolVersion) {
- return version.equals(protocolVersion);
- }
-
- public boolean isComparable(final ProtocolVersion protocolVersion) {
- return version.isComparable(protocolVersion);
- }
-
- public boolean greaterEquals(final ProtocolVersion protocolVersion) {
- return version.greaterEquals(protocolVersion);
- }
-
- public boolean lessEquals(final ProtocolVersion protocolVersion) {
- return version.lessEquals(protocolVersion);
- }
-
- public static ProtocolVersion parse(final String s) throws ParseException {
- return org.apache.hc.core5.http.ssl.TLS.parse(s);
- }
-
-}