This is an automated email from the ASF dual-hosted git repository. jamesbognar pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/juneau.git
The following commit(s) were added to refs/heads/master by this push: new cebe62c MockRestClient improvements. cebe62c is described below commit cebe62cdf6065ed5dfceb43ec78b3a8658007c86 Author: JamesBognar <james.bog...@salesforce.com> AuthorDate: Wed May 27 18:23:34 2020 -0400 MockRestClient improvements. --- .../main/ConfigurablePropertyCodeGenerator.java | 2 +- .../juneau/rest/client2/RestClientBuilder.java | 47 ++++ .../juneau/rest/mock2/MockRestClientBuilder.java | 310 +++++++++++++++++++++ .../juneau/rest/mock2/MockServletRequest.java | 5 + .../apache/juneau/rest/responses/BasicTest.java | 42 ++- 5 files changed, 381 insertions(+), 25 deletions(-) diff --git a/juneau-releng/juneau-all/src/java/main/ConfigurablePropertyCodeGenerator.java b/juneau-releng/juneau-all/src/java/main/ConfigurablePropertyCodeGenerator.java index 39ab810..d2f071d 100644 --- a/juneau-releng/juneau-all/src/java/main/ConfigurablePropertyCodeGenerator.java +++ b/juneau-releng/juneau-all/src/java/main/ConfigurablePropertyCodeGenerator.java @@ -67,7 +67,7 @@ public class ConfigurablePropertyCodeGenerator { JsonSerializerBuilder.class, JsoParserBuilder.class, JsoSerializerBuilder.class, - MockRestClient.class, + MockRestClientBuilder.class, MsgPackParserBuilder.class, MsgPackSerializerBuilder.class, OpenApiParserBuilder.class, diff --git a/juneau-rest/juneau-rest-client/src/main/java/org/apache/juneau/rest/client2/RestClientBuilder.java b/juneau-rest/juneau-rest-client/src/main/java/org/apache/juneau/rest/client2/RestClientBuilder.java index 9ab33a1..12e88c8 100644 --- a/juneau-rest/juneau-rest-client/src/main/java/org/apache/juneau/rest/client2/RestClientBuilder.java +++ b/juneau-rest/juneau-rest-client/src/main/java/org/apache/juneau/rest/client2/RestClientBuilder.java @@ -4722,6 +4722,7 @@ public class RestClientBuilder extends BeanContextBuilder { * @return This object (for method chaining). * @see HttpClientBuilder#disableRedirectHandling() */ + @ConfigurationProperty public RestClientBuilder disableRedirectHandling() { httpClientBuilder.disableRedirectHandling(); return this; @@ -4738,6 +4739,7 @@ public class RestClientBuilder extends BeanContextBuilder { * @return This object (for method chaining). * @see HttpClientBuilder#setRedirectStrategy(RedirectStrategy) */ + @ConfigurationProperty public RestClientBuilder redirectStrategy(RedirectStrategy redirectStrategy) { httpClientBuilder.setRedirectStrategy(redirectStrategy); return this; @@ -4750,6 +4752,7 @@ public class RestClientBuilder extends BeanContextBuilder { * @return This object (for method chaining). * @see HttpClientBuilder#setDefaultCookieSpecRegistry(Lookup) */ + @ConfigurationProperty public RestClientBuilder defaultCookieSpecRegistry(Lookup<CookieSpecProvider> cookieSpecRegistry) { httpClientBuilder.setDefaultCookieSpecRegistry(cookieSpecRegistry); return this; @@ -4762,6 +4765,7 @@ public class RestClientBuilder extends BeanContextBuilder { * @return This object (for method chaining). * @see HttpClientBuilder#setRequestExecutor(HttpRequestExecutor) */ + @ConfigurationProperty public RestClientBuilder requestExecutor(HttpRequestExecutor requestExec) { httpClientBuilder.setRequestExecutor(requestExec); return this; @@ -4779,6 +4783,7 @@ public class RestClientBuilder extends BeanContextBuilder { * @return This object (for method chaining). * @see HttpClientBuilder#setSSLHostnameVerifier(HostnameVerifier) */ + @ConfigurationProperty public RestClientBuilder sslHostnameVerifier(HostnameVerifier hostnameVerifier) { httpClientBuilder.setSSLHostnameVerifier(hostnameVerifier); return this; @@ -4795,6 +4800,7 @@ public class RestClientBuilder extends BeanContextBuilder { * @return This object (for method chaining). * @see HttpClientBuilder#setPublicSuffixMatcher(PublicSuffixMatcher) */ + @ConfigurationProperty public RestClientBuilder publicSuffixMatcher(PublicSuffixMatcher publicSuffixMatcher) { httpClientBuilder.setPublicSuffixMatcher(publicSuffixMatcher); return this; @@ -4812,6 +4818,7 @@ public class RestClientBuilder extends BeanContextBuilder { * @return This object (for method chaining). * @see HttpClientBuilder#setSSLContext(SSLContext) */ + @ConfigurationProperty public RestClientBuilder sslContext(SSLContext sslContext) { httpClientBuilder.setSSLContext(sslContext); return this; @@ -4828,6 +4835,7 @@ public class RestClientBuilder extends BeanContextBuilder { * @return This object (for method chaining). * @see HttpClientBuilder#setSSLSocketFactory(LayeredConnectionSocketFactory) */ + @ConfigurationProperty public RestClientBuilder sslSocketFactory(LayeredConnectionSocketFactory sslSocketFactory) { httpClientBuilder.setSSLSocketFactory(sslSocketFactory); return this; @@ -4844,6 +4852,7 @@ public class RestClientBuilder extends BeanContextBuilder { * @return This object (for method chaining). * @see HttpClientBuilder#setMaxConnTotal(int) */ + @ConfigurationProperty public RestClientBuilder maxConnTotal(int maxConnTotal) { httpClientBuilder.setMaxConnTotal(maxConnTotal); return this; @@ -4860,6 +4869,7 @@ public class RestClientBuilder extends BeanContextBuilder { * @return This object (for method chaining). * @see HttpClientBuilder#setMaxConnPerRoute(int) */ + @ConfigurationProperty public RestClientBuilder maxConnPerRoute(int maxConnPerRoute) { httpClientBuilder.setMaxConnPerRoute(maxConnPerRoute); return this; @@ -4876,6 +4886,7 @@ public class RestClientBuilder extends BeanContextBuilder { * @return This object (for method chaining). * @see HttpClientBuilder#setDefaultSocketConfig(SocketConfig) */ + @ConfigurationProperty public RestClientBuilder defaultSocketConfig(SocketConfig config) { httpClientBuilder.setDefaultSocketConfig(config); return this; @@ -4892,6 +4903,7 @@ public class RestClientBuilder extends BeanContextBuilder { * @return This object (for method chaining). * @see HttpClientBuilder#setDefaultConnectionConfig(ConnectionConfig) */ + @ConfigurationProperty public RestClientBuilder defaultConnectionConfig(ConnectionConfig config) { httpClientBuilder.setDefaultConnectionConfig(config); return this; @@ -4909,6 +4921,7 @@ public class RestClientBuilder extends BeanContextBuilder { * @return This object (for method chaining). * @see HttpClientBuilder#setConnectionTimeToLive(long,TimeUnit) */ + @ConfigurationProperty public RestClientBuilder connectionTimeToLive(long connTimeToLive, TimeUnit connTimeToLiveTimeUnit) { httpClientBuilder.setConnectionTimeToLive(connTimeToLive, connTimeToLiveTimeUnit); return this; @@ -4921,6 +4934,7 @@ public class RestClientBuilder extends BeanContextBuilder { * @return This object (for method chaining). * @see HttpClientBuilder#setConnectionManager(HttpClientConnectionManager) */ + @ConfigurationProperty public RestClientBuilder connectionManager(HttpClientConnectionManager connManager) { this.httpClientConnectionManager = connManager; httpClientBuilder.setConnectionManager(connManager); @@ -4938,6 +4952,7 @@ public class RestClientBuilder extends BeanContextBuilder { * @return This object (for method chaining). * @see HttpClientBuilder#setConnectionManagerShared(boolean) */ + @ConfigurationProperty public RestClientBuilder connectionManagerShared(boolean shared) { httpClientBuilder.setConnectionManagerShared(shared); return this; @@ -4950,6 +4965,7 @@ public class RestClientBuilder extends BeanContextBuilder { * @return This object (for method chaining). * @see HttpClientBuilder#setConnectionReuseStrategy(ConnectionReuseStrategy) */ + @ConfigurationProperty public RestClientBuilder connectionReuseStrategy(ConnectionReuseStrategy reuseStrategy) { httpClientBuilder.setConnectionReuseStrategy(reuseStrategy); return this; @@ -4962,6 +4978,7 @@ public class RestClientBuilder extends BeanContextBuilder { * @return This object (for method chaining). * @see HttpClientBuilder#setKeepAliveStrategy(ConnectionKeepAliveStrategy) */ + @ConfigurationProperty public RestClientBuilder keepAliveStrategy(ConnectionKeepAliveStrategy keepAliveStrategy) { httpClientBuilder.setKeepAliveStrategy(keepAliveStrategy); return this; @@ -4974,6 +4991,7 @@ public class RestClientBuilder extends BeanContextBuilder { * @return This object (for method chaining). * @see HttpClientBuilder#setTargetAuthenticationStrategy(AuthenticationStrategy) */ + @ConfigurationProperty public RestClientBuilder targetAuthenticationStrategy(AuthenticationStrategy targetAuthStrategy) { httpClientBuilder.setTargetAuthenticationStrategy(targetAuthStrategy); return this; @@ -4986,6 +5004,7 @@ public class RestClientBuilder extends BeanContextBuilder { * @return This object (for method chaining). * @see HttpClientBuilder#setProxyAuthenticationStrategy(AuthenticationStrategy) */ + @ConfigurationProperty public RestClientBuilder proxyAuthenticationStrategy(AuthenticationStrategy proxyAuthStrategy) { httpClientBuilder.setProxyAuthenticationStrategy(proxyAuthStrategy); return this; @@ -5002,6 +5021,7 @@ public class RestClientBuilder extends BeanContextBuilder { * @return This object (for method chaining). * @see HttpClientBuilder#setUserTokenHandler(UserTokenHandler) */ + @ConfigurationProperty public RestClientBuilder userTokenHandler(UserTokenHandler userTokenHandler) { httpClientBuilder.setUserTokenHandler(userTokenHandler); return this; @@ -5013,6 +5033,7 @@ public class RestClientBuilder extends BeanContextBuilder { * @return This object (for method chaining). * @see HttpClientBuilder#disableConnectionState() */ + @ConfigurationProperty public RestClientBuilder disableConnectionState() { httpClientBuilder.disableConnectionState(); return this; @@ -5025,6 +5046,7 @@ public class RestClientBuilder extends BeanContextBuilder { * @return This object (for method chaining). * @see HttpClientBuilder#setSchemePortResolver(SchemePortResolver) */ + @ConfigurationProperty public RestClientBuilder schemePortResolver(SchemePortResolver schemePortResolver) { httpClientBuilder.setSchemePortResolver(schemePortResolver); return this; @@ -5042,6 +5064,7 @@ public class RestClientBuilder extends BeanContextBuilder { * @return This object (for method chaining). * @see HttpClientBuilder#setUserAgent(String) */ + @ConfigurationProperty public RestClientBuilder userAgent(String userAgent) { httpClientBuilder.setUserAgent(userAgent); return this; @@ -5059,6 +5082,7 @@ public class RestClientBuilder extends BeanContextBuilder { * @return This object (for method chaining). * @see HttpClientBuilder#setDefaultHeaders(Collection) */ + @ConfigurationProperty public RestClientBuilder defaultHeaders(Collection<? extends Header> defaultHeaders) { httpClientBuilder.setDefaultHeaders(defaultHeaders); return this; @@ -5075,6 +5099,7 @@ public class RestClientBuilder extends BeanContextBuilder { * @return This object (for method chaining). * @see HttpClientBuilder#addInterceptorFirst(HttpResponseInterceptor) */ + @ConfigurationProperty public RestClientBuilder addInterceptorFirst(HttpResponseInterceptor itcp) { httpClientBuilder.addInterceptorFirst(itcp); return this; @@ -5091,6 +5116,7 @@ public class RestClientBuilder extends BeanContextBuilder { * @return This object (for method chaining). * @see HttpClientBuilder#addInterceptorLast(HttpResponseInterceptor) */ + @ConfigurationProperty public RestClientBuilder addInterceptorLast(HttpResponseInterceptor itcp) { httpClientBuilder.addInterceptorLast(itcp); return this; @@ -5107,6 +5133,7 @@ public class RestClientBuilder extends BeanContextBuilder { * @return This object (for method chaining). * @see HttpClientBuilder#addInterceptorFirst(HttpRequestInterceptor) */ + @ConfigurationProperty public RestClientBuilder addInterceptorFirst(HttpRequestInterceptor itcp) { httpClientBuilder.addInterceptorFirst(itcp); return this; @@ -5123,6 +5150,7 @@ public class RestClientBuilder extends BeanContextBuilder { * @return This object (for method chaining). * @see HttpClientBuilder#addInterceptorLast(HttpRequestInterceptor) */ + @ConfigurationProperty public RestClientBuilder addInterceptorLast(HttpRequestInterceptor itcp) { httpClientBuilder.addInterceptorLast(itcp); return this; @@ -5138,6 +5166,7 @@ public class RestClientBuilder extends BeanContextBuilder { * @return This object (for method chaining). * @see HttpClientBuilder#disableCookieManagement() */ + @ConfigurationProperty public RestClientBuilder disableCookieManagement() { httpClientBuilder.disableCookieManagement(); return this; @@ -5153,6 +5182,7 @@ public class RestClientBuilder extends BeanContextBuilder { * @return This object (for method chaining). * @see HttpClientBuilder#disableContentCompression() */ + @ConfigurationProperty public RestClientBuilder disableContentCompression() { httpClientBuilder.disableContentCompression(); return this; @@ -5168,6 +5198,7 @@ public class RestClientBuilder extends BeanContextBuilder { * @return This object (for method chaining). * @see HttpClientBuilder#disableAuthCaching() */ + @ConfigurationProperty public RestClientBuilder disableAuthCaching() { httpClientBuilder.disableAuthCaching(); return this; @@ -5180,6 +5211,7 @@ public class RestClientBuilder extends BeanContextBuilder { * @return This object (for method chaining). * @see HttpClientBuilder#setHttpProcessor(HttpProcessor) */ + @ConfigurationProperty public RestClientBuilder httpProcessor(HttpProcessor httpprocessor) { httpClientBuilder.setHttpProcessor(httpprocessor); return this; @@ -5196,6 +5228,7 @@ public class RestClientBuilder extends BeanContextBuilder { * @return This object (for method chaining). * @see HttpClientBuilder#setRetryHandler(HttpRequestRetryHandler) */ + @ConfigurationProperty public RestClientBuilder retryHandler(HttpRequestRetryHandler retryHandler) { httpClientBuilder.setRetryHandler(retryHandler); return this; @@ -5207,6 +5240,7 @@ public class RestClientBuilder extends BeanContextBuilder { * @return This object (for method chaining). * @see HttpClientBuilder#disableAutomaticRetries() */ + @ConfigurationProperty public RestClientBuilder disableAutomaticRetries() { httpClientBuilder.disableAutomaticRetries(); return this; @@ -5223,6 +5257,7 @@ public class RestClientBuilder extends BeanContextBuilder { * @return This object (for method chaining). * @see HttpClientBuilder#setProxy(HttpHost) */ + @ConfigurationProperty public RestClientBuilder proxy(HttpHost proxy) { httpClientBuilder.setProxy(proxy); return this; @@ -5235,6 +5270,7 @@ public class RestClientBuilder extends BeanContextBuilder { * @return This object (for method chaining). * @see HttpClientBuilder#setRoutePlanner(HttpRoutePlanner) */ + @ConfigurationProperty public RestClientBuilder routePlanner(HttpRoutePlanner routePlanner) { httpClientBuilder.setRoutePlanner(routePlanner); return this; @@ -5247,6 +5283,7 @@ public class RestClientBuilder extends BeanContextBuilder { * @return This object (for method chaining). * @see HttpClientBuilder#setConnectionBackoffStrategy(ConnectionBackoffStrategy) */ + @ConfigurationProperty public RestClientBuilder connectionBackoffStrategy(ConnectionBackoffStrategy connectionBackoffStrategy) { httpClientBuilder.setConnectionBackoffStrategy(connectionBackoffStrategy); return this; @@ -5259,6 +5296,7 @@ public class RestClientBuilder extends BeanContextBuilder { * @return This object (for method chaining). * @see HttpClientBuilder#setBackoffManager(BackoffManager) */ + @ConfigurationProperty public RestClientBuilder backoffManager(BackoffManager backoffManager) { httpClientBuilder.setBackoffManager(backoffManager); return this; @@ -5271,6 +5309,7 @@ public class RestClientBuilder extends BeanContextBuilder { * @return This object (for method chaining). * @see HttpClientBuilder#setServiceUnavailableRetryStrategy(ServiceUnavailableRetryStrategy) */ + @ConfigurationProperty public RestClientBuilder serviceUnavailableRetryStrategy(ServiceUnavailableRetryStrategy serviceUnavailStrategy) { httpClientBuilder.setServiceUnavailableRetryStrategy(serviceUnavailStrategy); return this; @@ -5283,6 +5322,7 @@ public class RestClientBuilder extends BeanContextBuilder { * @return This object (for method chaining). * @see HttpClientBuilder#setDefaultCookieStore(CookieStore) */ + @ConfigurationProperty public RestClientBuilder defaultCookieStore(CookieStore cookieStore) { httpClientBuilder.setDefaultCookieStore(cookieStore); return this; @@ -5295,6 +5335,7 @@ public class RestClientBuilder extends BeanContextBuilder { * @return This object (for method chaining). * @see HttpClientBuilder#setDefaultCredentialsProvider(CredentialsProvider) */ + @ConfigurationProperty public RestClientBuilder defaultCredentialsProvider(CredentialsProvider credentialsProvider) { httpClientBuilder.setDefaultCredentialsProvider(credentialsProvider); return this; @@ -5307,6 +5348,7 @@ public class RestClientBuilder extends BeanContextBuilder { * @return This object (for method chaining). * @see HttpClientBuilder#setDefaultAuthSchemeRegistry(Lookup) */ + @ConfigurationProperty public RestClientBuilder defaultAuthSchemeRegistry(Lookup<AuthSchemeProvider> authSchemeRegistry) { httpClientBuilder.setDefaultAuthSchemeRegistry(authSchemeRegistry); return this; @@ -5319,6 +5361,7 @@ public class RestClientBuilder extends BeanContextBuilder { * @return This object (for method chaining). * @see HttpClientBuilder#setContentDecoderRegistry(Map) */ + @ConfigurationProperty public RestClientBuilder contentDecoderRegistry(Map<String,InputStreamFactory> contentDecoderMap) { httpClientBuilder.setContentDecoderRegistry(contentDecoderMap); return this; @@ -5331,6 +5374,7 @@ public class RestClientBuilder extends BeanContextBuilder { * @return This object (for method chaining). * @see HttpClientBuilder#setDefaultRequestConfig(RequestConfig) */ + @ConfigurationProperty public RestClientBuilder defaultRequestConfig(RequestConfig config) { httpClientBuilder.setDefaultRequestConfig(config); return this; @@ -5342,6 +5386,7 @@ public class RestClientBuilder extends BeanContextBuilder { * @return This object (for method chaining). * @see HttpClientBuilder#useSystemProperties() */ + @ConfigurationProperty public RestClientBuilder useSystemProperties() { httpClientBuilder.useSystemProperties(); return this; @@ -5359,6 +5404,7 @@ public class RestClientBuilder extends BeanContextBuilder { * @return This object (for method chaining). * @see HttpClientBuilder#evictExpiredConnections() */ + @ConfigurationProperty public RestClientBuilder evictExpiredConnections() { httpClientBuilder.evictExpiredConnections(); return this; @@ -5378,6 +5424,7 @@ public class RestClientBuilder extends BeanContextBuilder { * @return This object (for method chaining). * @see HttpClientBuilder#evictIdleConnections(long,TimeUnit) */ + @ConfigurationProperty public RestClientBuilder evictIdleConnections(long maxIdleTime, TimeUnit maxIdleTimeUnit) { httpClientBuilder.evictIdleConnections(maxIdleTime, maxIdleTimeUnit); return this; diff --git a/juneau-rest/juneau-rest-mock/src/main/java/org/apache/juneau/rest/mock2/MockRestClientBuilder.java b/juneau-rest/juneau-rest-mock/src/main/java/org/apache/juneau/rest/mock2/MockRestClientBuilder.java index 63aa1c8..b1143d3 100644 --- a/juneau-rest/juneau-rest-mock/src/main/java/org/apache/juneau/rest/mock2/MockRestClientBuilder.java +++ b/juneau-rest/juneau-rest-mock/src/main/java/org/apache/juneau/rest/mock2/MockRestClientBuilder.java @@ -20,6 +20,10 @@ import java.util.logging.*; import java.lang.annotation.*; import java.lang.reflect.Method; +import org.apache.http.*; +import org.apache.http.client.*; +import org.apache.http.client.entity.*; +import org.apache.http.conn.*; import org.apache.http.impl.client.*; import org.apache.juneau.*; import org.apache.juneau.http.*; @@ -33,6 +37,18 @@ import org.apache.juneau.serializer.*; import org.apache.juneau.svl.*; import org.apache.juneau.uon.*; +import javax.net.ssl.*; + +import org.apache.http.auth.*; +import org.apache.http.client.CookieStore; +import org.apache.http.client.config.*; +import org.apache.http.config.*; +import org.apache.http.conn.routing.*; +import org.apache.http.conn.socket.*; +import org.apache.http.conn.util.*; +import org.apache.http.cookie.*; +import org.apache.http.protocol.*; + /** * Mocked {@link RestClient}. * @@ -545,6 +561,30 @@ public class MockRestClientBuilder extends RestClientBuilder { } @Override /* GENERATED - RestClientBuilder */ + public MockRestClientBuilder addInterceptorFirst(HttpRequestInterceptor itcp) { + super.addInterceptorFirst(itcp); + return this; + } + + @Override /* GENERATED - RestClientBuilder */ + public MockRestClientBuilder addInterceptorFirst(HttpResponseInterceptor itcp) { + super.addInterceptorFirst(itcp); + return this; + } + + @Override /* GENERATED - RestClientBuilder */ + public MockRestClientBuilder addInterceptorLast(HttpRequestInterceptor itcp) { + super.addInterceptorLast(itcp); + return this; + } + + @Override /* GENERATED - RestClientBuilder */ + public MockRestClientBuilder addInterceptorLast(HttpResponseInterceptor itcp) { + super.addInterceptorLast(itcp); + return this; + } + + @Override /* GENERATED - RestClientBuilder */ public MockRestClientBuilder addRootType() { super.addRootType(); return this; @@ -557,6 +597,12 @@ public class MockRestClientBuilder extends RestClientBuilder { } @Override /* GENERATED - RestClientBuilder */ + public MockRestClientBuilder backoffManager(BackoffManager backoffManager) { + super.backoffManager(backoffManager); + return this; + } + + @Override /* GENERATED - RestClientBuilder */ public MockRestClientBuilder basicAuth(String host, int port, String user, String pw) { super.basicAuth(host, port, user, pw); return this; @@ -593,6 +639,42 @@ public class MockRestClientBuilder extends RestClientBuilder { } @Override /* GENERATED - RestClientBuilder */ + public MockRestClientBuilder connectionBackoffStrategy(ConnectionBackoffStrategy connectionBackoffStrategy) { + super.connectionBackoffStrategy(connectionBackoffStrategy); + return this; + } + + @Override /* GENERATED - RestClientBuilder */ + public MockRestClientBuilder connectionManager(HttpClientConnectionManager connManager) { + super.connectionManager(connManager); + return this; + } + + @Override /* GENERATED - RestClientBuilder */ + public MockRestClientBuilder connectionManagerShared(boolean shared) { + super.connectionManagerShared(shared); + return this; + } + + @Override /* GENERATED - RestClientBuilder */ + public MockRestClientBuilder connectionReuseStrategy(ConnectionReuseStrategy reuseStrategy) { + super.connectionReuseStrategy(reuseStrategy); + return this; + } + + @Override /* GENERATED - RestClientBuilder */ + public MockRestClientBuilder connectionTimeToLive(long connTimeToLive, TimeUnit connTimeToLiveTimeUnit) { + super.connectionTimeToLive(connTimeToLive, connTimeToLiveTimeUnit); + return this; + } + + @Override /* GENERATED - RestClientBuilder */ + public MockRestClientBuilder contentDecoderRegistry(Map<String,InputStreamFactory> contentDecoderMap) { + super.contentDecoderRegistry(contentDecoderMap); + return this; + } + + @Override /* GENERATED - RestClientBuilder */ public MockRestClientBuilder contentLength(Object value) { super.contentLength(value); return this; @@ -617,18 +699,114 @@ public class MockRestClientBuilder extends RestClientBuilder { } @Override /* GENERATED - RestClientBuilder */ + public MockRestClientBuilder defaultAuthSchemeRegistry(Lookup<AuthSchemeProvider> authSchemeRegistry) { + super.defaultAuthSchemeRegistry(authSchemeRegistry); + return this; + } + + @Override /* GENERATED - RestClientBuilder */ + public MockRestClientBuilder defaultConnectionConfig(ConnectionConfig config) { + super.defaultConnectionConfig(config); + return this; + } + + @Override /* GENERATED - RestClientBuilder */ + public MockRestClientBuilder defaultCookieSpecRegistry(Lookup<CookieSpecProvider> cookieSpecRegistry) { + super.defaultCookieSpecRegistry(cookieSpecRegistry); + return this; + } + + @Override /* GENERATED - RestClientBuilder */ + public MockRestClientBuilder defaultCookieStore(CookieStore cookieStore) { + super.defaultCookieStore(cookieStore); + return this; + } + + @Override /* GENERATED - RestClientBuilder */ + public MockRestClientBuilder defaultCredentialsProvider(CredentialsProvider credentialsProvider) { + super.defaultCredentialsProvider(credentialsProvider); + return this; + } + + @Override /* GENERATED - RestClientBuilder */ + public MockRestClientBuilder defaultHeaders(Collection<? extends org.apache.http.Header> defaultHeaders) { + super.defaultHeaders(defaultHeaders); + return this; + } + + @Override /* GENERATED - RestClientBuilder */ + public MockRestClientBuilder defaultRequestConfig(RequestConfig config) { + super.defaultRequestConfig(config); + return this; + } + + @Override /* GENERATED - RestClientBuilder */ + public MockRestClientBuilder defaultSocketConfig(SocketConfig config) { + super.defaultSocketConfig(config); + return this; + } + + @Override /* GENERATED - RestClientBuilder */ public MockRestClientBuilder detectRecursions() { super.detectRecursions(); return this; } @Override /* GENERATED - RestClientBuilder */ + public MockRestClientBuilder disableAuthCaching() { + super.disableAuthCaching(); + return this; + } + + @Override /* GENERATED - RestClientBuilder */ + public MockRestClientBuilder disableAutomaticRetries() { + super.disableAutomaticRetries(); + return this; + } + + @Override /* GENERATED - RestClientBuilder */ + public MockRestClientBuilder disableConnectionState() { + super.disableConnectionState(); + return this; + } + + @Override /* GENERATED - RestClientBuilder */ + public MockRestClientBuilder disableContentCompression() { + super.disableContentCompression(); + return this; + } + + @Override /* GENERATED - RestClientBuilder */ + public MockRestClientBuilder disableCookieManagement() { + super.disableCookieManagement(); + return this; + } + + @Override /* GENERATED - RestClientBuilder */ + public MockRestClientBuilder disableRedirectHandling() { + super.disableRedirectHandling(); + return this; + } + + @Override /* GENERATED - RestClientBuilder */ public MockRestClientBuilder errorCodes(Predicate<Integer> value) { super.errorCodes(value); return this; } @Override /* GENERATED - RestClientBuilder */ + public MockRestClientBuilder evictExpiredConnections() { + super.evictExpiredConnections(); + return this; + } + + @Override /* GENERATED - RestClientBuilder */ + public MockRestClientBuilder evictIdleConnections(long maxIdleTime, TimeUnit maxIdleTimeUnit) { + super.evictIdleConnections(maxIdleTime, maxIdleTimeUnit); + return this; + } + + @Override /* GENERATED - RestClientBuilder */ public MockRestClientBuilder executorService(ExecutorService executorService, boolean shutdownOnClose) { super.executorService(executorService, shutdownOnClose); return this; @@ -755,6 +933,12 @@ public class MockRestClientBuilder extends RestClientBuilder { } @Override /* GENERATED - RestClientBuilder */ + public MockRestClientBuilder httpProcessor(HttpProcessor httpprocessor) { + super.httpProcessor(httpprocessor); + return this; + } + + @Override /* GENERATED - RestClientBuilder */ public MockRestClientBuilder ifMatch(Object value) { super.ifMatch(value); return this; @@ -785,6 +969,18 @@ public class MockRestClientBuilder extends RestClientBuilder { } @Override /* GENERATED - RestClientBuilder */ + public MockRestClientBuilder ignoreErrors() { + super.ignoreErrors(); + return this; + } + + @Override /* GENERATED - RestClientBuilder */ + public MockRestClientBuilder ignoreErrors(boolean value) { + super.ignoreErrors(value); + return this; + } + + @Override /* GENERATED - RestClientBuilder */ public MockRestClientBuilder ignoreRecursions() { super.ignoreRecursions(); return this; @@ -816,6 +1012,12 @@ public class MockRestClientBuilder extends RestClientBuilder { } @Override /* GENERATED - RestClientBuilder */ + public MockRestClientBuilder keepAliveStrategy(ConnectionKeepAliveStrategy keepAliveStrategy) { + super.keepAliveStrategy(keepAliveStrategy); + return this; + } + + @Override /* GENERATED - RestClientBuilder */ public MockRestClientBuilder keepHttpClientOpen() { super.keepHttpClientOpen(); return this; @@ -864,6 +1066,18 @@ public class MockRestClientBuilder extends RestClientBuilder { } @Override /* GENERATED - RestClientBuilder */ + public MockRestClientBuilder maxConnPerRoute(int maxConnPerRoute) { + super.maxConnPerRoute(maxConnPerRoute); + return this; + } + + @Override /* GENERATED - RestClientBuilder */ + public MockRestClientBuilder maxConnTotal(int maxConnTotal) { + super.maxConnTotal(maxConnTotal); + return this; + } + + @Override /* GENERATED - RestClientBuilder */ public MockRestClientBuilder maxDepth(int value) { super.maxDepth(value); return this; @@ -997,12 +1211,30 @@ public class MockRestClientBuilder extends RestClientBuilder { } @Override /* GENERATED - RestClientBuilder */ + public MockRestClientBuilder proxy(HttpHost proxy) { + super.proxy(proxy); + return this; + } + + @Override /* GENERATED - RestClientBuilder */ + public MockRestClientBuilder proxyAuthenticationStrategy(AuthenticationStrategy proxyAuthStrategy) { + super.proxyAuthenticationStrategy(proxyAuthStrategy); + return this; + } + + @Override /* GENERATED - RestClientBuilder */ public MockRestClientBuilder proxyAuthorization(Object value) { super.proxyAuthorization(value); return this; } @Override /* GENERATED - RestClientBuilder */ + public MockRestClientBuilder publicSuffixMatcher(PublicSuffixMatcher publicSuffixMatcher) { + super.publicSuffixMatcher(publicSuffixMatcher); + return this; + } + + @Override /* GENERATED - RestClientBuilder */ public MockRestClientBuilder query(Object...params) { super.query(params); return this; @@ -1045,18 +1277,48 @@ public class MockRestClientBuilder extends RestClientBuilder { } @Override /* GENERATED - RestClientBuilder */ + public MockRestClientBuilder redirectStrategy(RedirectStrategy redirectStrategy) { + super.redirectStrategy(redirectStrategy); + return this; + } + + @Override /* GENERATED - RestClientBuilder */ public MockRestClientBuilder referer(Object value) { super.referer(value); return this; } @Override /* GENERATED - RestClientBuilder */ + public MockRestClientBuilder requestExecutor(HttpRequestExecutor requestExec) { + super.requestExecutor(requestExec); + return this; + } + + @Override /* GENERATED - RestClientBuilder */ + public MockRestClientBuilder retryHandler(HttpRequestRetryHandler retryHandler) { + super.retryHandler(retryHandler); + return this; + } + + @Override /* GENERATED - RestClientBuilder */ public MockRestClientBuilder rootUrl(Object value) { super.rootUrl(value); return this; } @Override /* GENERATED - RestClientBuilder */ + public MockRestClientBuilder routePlanner(HttpRoutePlanner routePlanner) { + super.routePlanner(routePlanner); + return this; + } + + @Override /* GENERATED - RestClientBuilder */ + public MockRestClientBuilder schemePortResolver(SchemePortResolver schemePortResolver) { + super.schemePortResolver(schemePortResolver); + return this; + } + + @Override /* GENERATED - RestClientBuilder */ public MockRestClientBuilder serializer(Class<? extends org.apache.juneau.serializer.Serializer> value) { super.serializer(value); return this; @@ -1082,6 +1344,12 @@ public class MockRestClientBuilder extends RestClientBuilder { } @Override /* GENERATED - RestClientBuilder */ + public MockRestClientBuilder serviceUnavailableRetryStrategy(ServiceUnavailableRetryStrategy serviceUnavailStrategy) { + super.serviceUnavailableRetryStrategy(serviceUnavailStrategy); + return this; + } + + @Override /* GENERATED - RestClientBuilder */ public MockRestClientBuilder simpleJson() { super.simpleJson(); return this; @@ -1106,12 +1374,36 @@ public class MockRestClientBuilder extends RestClientBuilder { } @Override /* GENERATED - RestClientBuilder */ + public MockRestClientBuilder sslContext(SSLContext sslContext) { + super.sslContext(sslContext); + return this; + } + + @Override /* GENERATED - RestClientBuilder */ + public MockRestClientBuilder sslHostnameVerifier(HostnameVerifier hostnameVerifier) { + super.sslHostnameVerifier(hostnameVerifier); + return this; + } + + @Override /* GENERATED - RestClientBuilder */ + public MockRestClientBuilder sslSocketFactory(LayeredConnectionSocketFactory sslSocketFactory) { + super.sslSocketFactory(sslSocketFactory); + return this; + } + + @Override /* GENERATED - RestClientBuilder */ public MockRestClientBuilder strict() { super.strict(); return this; } @Override /* GENERATED - RestClientBuilder */ + public MockRestClientBuilder targetAuthenticationStrategy(AuthenticationStrategy targetAuthStrategy) { + super.targetAuthenticationStrategy(targetAuthStrategy); + return this; + } + + @Override /* GENERATED - RestClientBuilder */ public MockRestClientBuilder te(Object value) { super.te(value); return this; @@ -1178,6 +1470,12 @@ public class MockRestClientBuilder extends RestClientBuilder { } @Override /* GENERATED - RestClientBuilder */ + public MockRestClientBuilder useSystemProperties() { + super.useSystemProperties(); + return this; + } + + @Override /* GENERATED - RestClientBuilder */ public MockRestClientBuilder useWhitespace() { super.useWhitespace(); return this; @@ -1190,6 +1488,18 @@ public class MockRestClientBuilder extends RestClientBuilder { } @Override /* GENERATED - RestClientBuilder */ + public MockRestClientBuilder userAgent(String userAgent) { + super.userAgent(userAgent); + return this; + } + + @Override /* GENERATED - RestClientBuilder */ + public MockRestClientBuilder userTokenHandler(UserTokenHandler userTokenHandler) { + super.userTokenHandler(userTokenHandler); + return this; + } + + @Override /* GENERATED - RestClientBuilder */ public MockRestClientBuilder via(Object value) { super.via(value); return this; diff --git a/juneau-rest/juneau-rest-mock/src/main/java/org/apache/juneau/rest/mock2/MockServletRequest.java b/juneau-rest/juneau-rest-mock/src/main/java/org/apache/juneau/rest/mock2/MockServletRequest.java index 89e2acf..cec3e6d 100644 --- a/juneau-rest/juneau-rest-mock/src/main/java/org/apache/juneau/rest/mock2/MockServletRequest.java +++ b/juneau-rest/juneau-rest-mock/src/main/java/org/apache/juneau/rest/mock2/MockServletRequest.java @@ -287,6 +287,11 @@ public class MockServletRequest implements HttpServletRequest, MockHttpRequest { if (res.getStatus() == 0) throw new RuntimeException("Response status was 0."); + // A bug in HttpClient causes an infinite loop if the response is less than 200. + // As a workaround, just add 1000 to the status code (which is better than an infinite loop). + if (res.getStatus() < 200) + res.setStatus(1000 + res.getStatus()); + if (debug) log(this, res); diff --git a/juneau-rest/juneau-rest-server-utest/src/test/java/org/apache/juneau/rest/responses/BasicTest.java b/juneau-rest/juneau-rest-server-utest/src/test/java/org/apache/juneau/rest/responses/BasicTest.java index 04ed8c6..1720dda 100644 --- a/juneau-rest/juneau-rest-server-utest/src/test/java/org/apache/juneau/rest/responses/BasicTest.java +++ b/juneau-rest/juneau-rest-server-utest/src/test/java/org/apache/juneau/rest/responses/BasicTest.java @@ -59,7 +59,7 @@ public class BasicTest { @RestMethod public UseProxy useProxy() { return new UseProxy(); } } - static MockRest a = MockRest.build(A.class); + static MockRestClient a = MockRestClient.create(A.class).disableRedirectHandling().build(); @Test public void a01_accepted() throws Exception { @@ -79,7 +79,7 @@ public class BasicTest { public void a03_continue() throws Exception { a.get("/continue") .run() - .assertStatus().is(100) + .assertStatus().is(1100) .assertBody().is("Continue"); } @Test @@ -93,7 +93,7 @@ public class BasicTest { public void a05_earlyHints() throws Exception { a.get("/earlyHints") .run() - .assertStatus().is(103) + .assertStatus().is(1103) .assertBody().is("Early Hints"); } @Test @@ -135,8 +135,7 @@ public class BasicTest { public void a11_noContent() throws Exception { a.get("/noContent") .run() - .assertStatus().is(204) - .assertBody().is("No Content"); + .assertStatus().is(204); } @Test public void a12_nonAuthoritiveInformation() throws Exception { @@ -149,8 +148,7 @@ public class BasicTest { public void a13_notModified() throws Exception { a.get("/notModified") .run() - .assertStatus().is(304) - .assertBody().is("Not Modified"); + .assertStatus().is(304); } @Test public void a14_ok() throws Exception { @@ -177,15 +175,14 @@ public class BasicTest { public void a17_processing() throws Exception { a.get("/processing") .run() - .assertStatus().is(102) + .assertStatus().is(1102) .assertBody().is("Processing"); } @Test public void a18_resetContent() throws Exception { a.get("/resetContent") .run() - .assertStatus().is(205) - .assertBody().is("Reset Content"); + .assertStatus().is(205); } @Test public void a19_seeOther() throws Exception { @@ -198,7 +195,7 @@ public class BasicTest { public void a20_switchingProtocols() throws Exception { a.get("/switchingProtocols") .run() - .assertStatus().is(101) + .assertStatus().is(1101) .assertBody().is("Switching Protocols"); } @Test @@ -228,7 +225,7 @@ public class BasicTest { @RestMethod public TemporaryRedirect temporaryRedirect() { return new TemporaryRedirect(URI.create("servlet:/foo")); } } - static MockRest b = MockRest.build(B.class); + static MockRestClient b = MockRestClient.create(B.class).disableRedirectHandling().build(); @Test public void b01_movedPermanently() throws Exception { @@ -289,7 +286,7 @@ public class BasicTest { @RestMethod public UseProxy useProxy() { return new UseProxy("foo"); } } - static MockRest c = MockRest.build(C.class); + static MockRestClient c = MockRestClient.create(C.class).disableRedirectHandling().build(); @Test public void c01_accepted() throws Exception { @@ -309,7 +306,7 @@ public class BasicTest { public void c03_continue() throws Exception { c.get("/continue") .run() - .assertStatus().is(100) + .assertStatus().is(1100) .assertBody().is("foo"); } @Test @@ -323,7 +320,7 @@ public class BasicTest { public void c05_earlyHints() throws Exception { c.get("/earlyHints") .run() - .assertStatus().is(103) + .assertStatus().is(1103) .assertBody().is("foo"); } @Test @@ -365,8 +362,7 @@ public class BasicTest { public void c11_noContent() throws Exception { c.get("/noContent") .run() - .assertStatus().is(204) - .assertBody().is("foo"); + .assertStatus().is(204); } @Test public void c12_nonAuthoritiveInformation() throws Exception { @@ -379,8 +375,7 @@ public class BasicTest { public void c13_notModified() throws Exception { c.get("/notModified") .run() - .assertStatus().is(304) - .assertBody().is("foo"); + .assertStatus().is(304); } @Test public void c14_ok() throws Exception { @@ -407,15 +402,14 @@ public class BasicTest { public void c17_processing() throws Exception { c.get("/processing") .run() - .assertStatus().is(102) + .assertStatus().is(1102) .assertBody().is("foo"); } @Test public void c18_resetContent() throws Exception { c.get("/resetContent") .run() - .assertStatus().is(205) - .assertBody().is("foo"); + .assertStatus().is(205); } @Test public void c19_seeOther() throws Exception { @@ -428,7 +422,7 @@ public class BasicTest { public void c20_switchingProtocols() throws Exception { c.get("/switchingProtocols") .run() - .assertStatus().is(101) + .assertStatus().is(1101) .assertBody().is("foo"); } @Test @@ -455,7 +449,7 @@ public class BasicTest { @RestMethod public Accepted accepted() { return new Accepted("foo"); } } - static MockRest d = MockRest.build(D.class); + static MockRestClient d = MockRestClient.build(D.class); @Test public void d01_accepted() throws Exception {