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 a89ad5b REST refactoring. a89ad5b is described below commit a89ad5b2ad21f7ec5df16034e31ff0179c8dde57 Author: JamesBognar <james.bog...@salesforce.com> AuthorDate: Mon Mar 8 13:22:33 2021 -0500 REST refactoring. --- .../java/org/apache/juneau/http/HttpHeaders.java | 2 +- .../juneau/http/resource/HttpResourceBuilder.java | 2 +- .../juneau/http/response/BasicHttpException.java | 54 ++--- .../juneau/http/response/BasicHttpResponse.java | 56 ++--- .../juneau/http/response/HttpExceptionBuilder.java | 58 ++--- .../juneau/http/response/HttpResponseBuilder.java | 58 ++--- .../java/org/apache/juneau/internal/IOUtils.java | 19 -- .../main/java/org/apache/juneau/utils/IOPipe.java | 250 --------------------- .../juneau/rest/client/remote/RemoteMeta.java | 14 +- 9 files changed, 122 insertions(+), 391 deletions(-) diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/HttpHeaders.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/HttpHeaders.java index 2c3cc5a..f847d5d 100644 --- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/HttpHeaders.java +++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/HttpHeaders.java @@ -3139,7 +3139,7 @@ public class HttpHeaders { * * @return A new empty builder. */ - public static final HeaderListBuilder headerListBuilder() { + public static final HeaderListBuilder headerList() { return HeaderList.create(); } diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/resource/HttpResourceBuilder.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/resource/HttpResourceBuilder.java index a3f565e..04582c6 100644 --- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/resource/HttpResourceBuilder.java +++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/resource/HttpResourceBuilder.java @@ -267,7 +267,7 @@ public class HttpResourceBuilder<T extends BasicResource> { * @return This object (for method chaining). */ @FluentSetter - public HttpResourceBuilder<T> headerList(HeaderList value) { + public HttpResourceBuilder<T> headers(HeaderList value) { headers = value; headersBuilder = null; return this; diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/response/BasicHttpException.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/response/BasicHttpException.java index f271cde..9155db0 100644 --- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/response/BasicHttpException.java +++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/response/BasicHttpException.java @@ -49,9 +49,9 @@ public class BasicHttpException extends BasicRuntimeException implements HttpRes private static final long serialVersionUID = 1L; private static final Header[] EMPTY_HEADERS = new Header[0]; - HeaderList headerList; + HeaderList headers; BasicStatusLine statusLine; - HeaderListBuilder headerListBuilder; + HeaderListBuilder headersBuilder; BasicStatusLineBuilder statusLineBuilder; HttpEntity body; @@ -72,7 +72,7 @@ public class BasicHttpException extends BasicRuntimeException implements HttpRes */ public BasicHttpException(HttpExceptionBuilder<?> builder) { super(builder); - headerList = builder.headerList(); + headers = builder.headers(); statusLine = builder.statusLine(); body = builder.body; } @@ -253,75 +253,75 @@ public class BasicHttpException extends BasicRuntimeException implements HttpRes @Override /* HttpMessage */ public boolean containsHeader(String name) { - return headerList().contains(name); + return headers().contains(name); } @Override /* HttpMessage */ public Header[] getHeaders(String name) { - List<Header> l = headerList().get(name); + List<Header> l = headers().get(name); return l.isEmpty() ? EMPTY_HEADERS : l.toArray(new Header[l.size()]); } @Override /* HttpMessage */ public Header getFirstHeader(String name) { - return headerList().getFirst(name); + return headers().getFirst(name); } @Override /* HttpMessage */ public Header getLastHeader(String name) { - return headerList().getLast(name); + return headers().getLast(name); } @Override /* HttpMessage */ @ResponseHeader("*") public Header[] getAllHeaders() { - List<Header> l = headerList().getAll(); + List<Header> l = headers().getAll(); return l.isEmpty() ? EMPTY_HEADERS : l.toArray(new Header[l.size()]); } @Override /* HttpMessage */ public void addHeader(Header value) { - headerListBuilder().add(value).build(); + headersBuilder().add(value).build(); } @Override /* HttpMessage */ public void addHeader(String name, String value) { - headerListBuilder().add(new BasicHeader(name, value)).build(); + headersBuilder().add(new BasicHeader(name, value)).build(); } @Override /* HttpMessage */ public void setHeader(Header value) { - headerListBuilder().update(value).build(); + headersBuilder().update(value).build(); } @Override /* HttpMessage */ public void setHeader(String name, String value) { - headerListBuilder().update(new BasicHeader(name, value)).build(); + headersBuilder().update(new BasicHeader(name, value)).build(); } @Override /* HttpMessage */ public void setHeaders(Header[] values) { - headerListBuilder().set(values).build(); + headersBuilder().set(values).build(); } @Override /* HttpMessage */ public void removeHeader(Header value) { - headerListBuilder().remove(value).build(); + headersBuilder().remove(value).build(); } @Override /* HttpMessage */ public void removeHeaders(String name) { - headerListBuilder().remove(name).build(); + headersBuilder().remove(name).build(); } @Override /* HttpMessage */ public HeaderIterator headerIterator() { - return headerList().headerIterator(); + return headers().headerIterator(); } @Override /* HttpMessage */ public HeaderIterator headerIterator(String name) { - return headerList().headerIterator(name); + return headers().headerIterator(name); } @SuppressWarnings("deprecation") @@ -398,12 +398,12 @@ public class BasicHttpException extends BasicRuntimeException implements HttpRes return statusLine; } - private HeaderList headerList() { - if (headerList == null) { - headerList = headerListBuilder.build(); - headerListBuilder = null; + private HeaderList headers() { + if (headers == null) { + headers = headersBuilder.build(); + headersBuilder = null; } - return headerList; + return headers; } private BasicStatusLineBuilder statusLineBuilder() { @@ -415,12 +415,12 @@ public class BasicHttpException extends BasicRuntimeException implements HttpRes return statusLineBuilder; } - private HeaderListBuilder headerListBuilder() { + private HeaderListBuilder headersBuilder() { assertModifiable(); - if (headerListBuilder == null) { - headerListBuilder = headerList.copy(); - headerList = null; + if (headersBuilder == null) { + headersBuilder = headers.copy(); + headers = null; } - return headerListBuilder; + return headersBuilder; } } diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/response/BasicHttpResponse.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/response/BasicHttpResponse.java index 4468945..984b6cc 100644 --- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/response/BasicHttpResponse.java +++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/response/BasicHttpResponse.java @@ -44,9 +44,9 @@ public class BasicHttpResponse implements HttpResponse { private static final Header[] EMPTY_HEADERS = new Header[0]; - HeaderList headerList; + HeaderList headers; BasicStatusLine statusLine; - HeaderListBuilder headerListBuilder; + HeaderListBuilder headersBuilder; BasicStatusLineBuilder statusLineBuilder; HttpEntity body; final boolean unmodifiable; @@ -67,7 +67,7 @@ public class BasicHttpResponse implements HttpResponse { * @param builder The builder containing the arguments for this bean. */ public BasicHttpResponse(HttpResponseBuilder<?> builder) { - headerList = builder.headerList(); + headers = builder.headers(); statusLine = builder.statusLine(); body = builder.body; unmodifiable = builder.unmodifiable; @@ -119,7 +119,7 @@ public class BasicHttpResponse implements HttpResponse { @Override /* Object */ public String toString() { - StringBuilder sb = new StringBuilder().append(statusLine()).append(' ').append(headerList()); + StringBuilder sb = new StringBuilder().append(statusLine()).append(' ').append(headers()); if (body != null) sb.append(' ').append(body); return sb.toString(); @@ -132,75 +132,75 @@ public class BasicHttpResponse implements HttpResponse { @Override /* HttpMessage */ public boolean containsHeader(String name) { - return headerList().contains(name); + return headers().contains(name); } @Override /* HttpMessage */ public Header[] getHeaders(String name) { - List<Header> l = headerList().get(name); + List<Header> l = headers().get(name); return l.isEmpty() ? EMPTY_HEADERS : l.toArray(new Header[l.size()]); } @Override /* HttpMessage */ public Header getFirstHeader(String name) { - return headerList().getFirst(name); + return headers().getFirst(name); } @Override /* HttpMessage */ public Header getLastHeader(String name) { - return headerList().getLast(name); + return headers().getLast(name); } @Override /* HttpMessage */ @ResponseHeader("*") public Header[] getAllHeaders() { - List<Header> l = headerList().getAll(); + List<Header> l = headers().getAll(); return l.isEmpty() ? EMPTY_HEADERS : l.toArray(new Header[l.size()]); } @Override /* HttpMessage */ public void addHeader(Header value) { - headerListBuilder().add(value).build(); + headersBuilder().add(value).build(); } @Override /* HttpMessage */ public void addHeader(String name, String value) { - headerListBuilder().add(new BasicHeader(name, value)).build(); + headersBuilder().add(new BasicHeader(name, value)).build(); } @Override /* HttpMessage */ public void setHeader(Header value) { - headerListBuilder().update(value).build(); + headersBuilder().update(value).build(); } @Override /* HttpMessage */ public void setHeader(String name, String value) { - headerListBuilder().update(new BasicHeader(name, value)).build(); + headersBuilder().update(new BasicHeader(name, value)).build(); } @Override /* HttpMessage */ public void setHeaders(Header[] values) { - headerListBuilder().set(values).build(); + headersBuilder().set(values).build(); } @Override /* HttpMessage */ public void removeHeader(Header value) { - headerListBuilder().remove(value).build(); + headersBuilder().remove(value).build(); } @Override /* HttpMessage */ public void removeHeaders(String name) { - headerListBuilder().remove(name).build(); + headersBuilder().remove(name).build(); } @Override /* HttpMessage */ public HeaderIterator headerIterator() { - return headerList().headerIterator(); + return headers().headerIterator(); } @Override /* HttpMessage */ public HeaderIterator headerIterator(String name) { - return headerList().headerIterator(name); + return headers().headerIterator(name); } @SuppressWarnings("deprecation") @@ -277,12 +277,12 @@ public class BasicHttpResponse implements HttpResponse { return statusLine; } - private HeaderList headerList() { - if (headerList == null) { - headerList = headerListBuilder.build(); - headerListBuilder = null; + private HeaderList headers() { + if (headers == null) { + headers = headersBuilder.build(); + headersBuilder = null; } - return headerList; + return headers; } private BasicStatusLineBuilder statusLineBuilder() { @@ -294,13 +294,13 @@ public class BasicHttpResponse implements HttpResponse { return statusLineBuilder; } - private HeaderListBuilder headerListBuilder() { + private HeaderListBuilder headersBuilder() { assertModifiable(); - if (headerListBuilder == null) { - headerListBuilder = headerList.copy(); - headerList = null; + if (headersBuilder == null) { + headersBuilder = headers.copy(); + headers = null; } - return headerListBuilder; + return headersBuilder; } /** diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/response/HttpExceptionBuilder.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/response/HttpExceptionBuilder.java index 9ef54f3..fb950c8 100644 --- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/response/HttpExceptionBuilder.java +++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/response/HttpExceptionBuilder.java @@ -32,9 +32,9 @@ import org.apache.juneau.internal.*; public class HttpExceptionBuilder<T extends BasicHttpException> extends BasicRuntimeExceptionBuilder { BasicStatusLine statusLine; - HeaderList headerList = HeaderList.EMPTY; + HeaderList headers = HeaderList.EMPTY; BasicStatusLineBuilder statusLineBuilder; - HeaderListBuilder headerListBuilder; + HeaderListBuilder headersBuilder; HttpEntity body; private final Class<? extends BasicHttpException> implClass; @@ -59,7 +59,7 @@ public class HttpExceptionBuilder<T extends BasicHttpException> extends BasicRun super(copyFrom); implClass = copyFrom.getClass(); statusLine = copyFrom.statusLine; - headerList = copyFrom.headerList; + headers = copyFrom.headers; body = copyFrom.body; } @@ -98,12 +98,12 @@ public class HttpExceptionBuilder<T extends BasicHttpException> extends BasicRun return statusLine; } - HeaderList headerList() { - if (headerListBuilder != null) - return headerListBuilder.build(); - if (headerList == null) + HeaderList headers() { + if (headersBuilder != null) + return headersBuilder.build(); + if (headers == null) return HeaderList.EMPTY; - return headerList; + return headers; } //----------------------------------------------------------------------------------------------------------------- @@ -216,9 +216,9 @@ public class HttpExceptionBuilder<T extends BasicHttpException> extends BasicRun * @return This object (for method chaining). */ @FluentSetter - public HttpExceptionBuilder<T> headerList(HeaderList value) { - headerList = value; - headerListBuilder = null; + public HttpExceptionBuilder<T> headers(HeaderList value) { + headers = value; + headersBuilder = null; return this; } @@ -228,7 +228,7 @@ public class HttpExceptionBuilder<T extends BasicHttpException> extends BasicRun * @return This object (for method chaining). */ public HttpExceptionBuilder<T> clearHeaders() { - headerListBuilder().clear(); + headersBuilder().clear(); return this; } @@ -239,7 +239,7 @@ public class HttpExceptionBuilder<T extends BasicHttpException> extends BasicRun * @return This object (for method chaining). */ public HttpExceptionBuilder<T> header(Header value) { - headerListBuilder().add(value); + headersBuilder().add(value); return this; } @@ -251,7 +251,7 @@ public class HttpExceptionBuilder<T extends BasicHttpException> extends BasicRun * @return This object (for method chaining). */ public HttpExceptionBuilder<T> header(String name, String value) { - headerListBuilder().add(name, value); + headersBuilder().add(name, value); return this; } @@ -262,7 +262,7 @@ public class HttpExceptionBuilder<T extends BasicHttpException> extends BasicRun * @return This object (for method chaining). */ public HttpExceptionBuilder<T> headers(Header...values) { - headerListBuilder().add(values); + headersBuilder().add(values); return this; } @@ -273,7 +273,7 @@ public class HttpExceptionBuilder<T extends BasicHttpException> extends BasicRun * @return This object (for method chaining). */ public HttpExceptionBuilder<T> headers(List<Header> values) { - headerListBuilder().add(values); + headersBuilder().add(values); return this; } @@ -284,7 +284,7 @@ public class HttpExceptionBuilder<T extends BasicHttpException> extends BasicRun * @return This object (for method chaining). */ public HttpExceptionBuilder<T> removeHeader(Header value) { - headerListBuilder().remove(value); + headersBuilder().remove(value); return this; } @@ -295,7 +295,7 @@ public class HttpExceptionBuilder<T extends BasicHttpException> extends BasicRun * @return This object (for method chaining). */ public HttpExceptionBuilder<T> removeHeaders(Header...values) { - headerListBuilder().remove(values); + headersBuilder().remove(values); return this; } @@ -306,7 +306,7 @@ public class HttpExceptionBuilder<T extends BasicHttpException> extends BasicRun * @return This object (for method chaining). */ public HttpExceptionBuilder<T> removeHeaders(List<Header> values) { - headerListBuilder().remove(values); + headersBuilder().remove(values); return this; } @@ -320,7 +320,7 @@ public class HttpExceptionBuilder<T extends BasicHttpException> extends BasicRun * @return This object (for method chaining). */ public HttpExceptionBuilder<T> updateHeader(Header value) { - headerListBuilder().update(value); + headersBuilder().update(value); return this; } @@ -334,7 +334,7 @@ public class HttpExceptionBuilder<T extends BasicHttpException> extends BasicRun * @return This object (for method chaining). */ public HttpExceptionBuilder<T> updateHeaders(Header...values) { - headerListBuilder().update(values); + headersBuilder().update(values); return this; } @@ -348,7 +348,7 @@ public class HttpExceptionBuilder<T extends BasicHttpException> extends BasicRun * @return This object (for method chaining). */ public HttpExceptionBuilder<T> updateHeaders(List<Header> values) { - headerListBuilder().update(values); + headersBuilder().update(values); return this; } @@ -362,7 +362,7 @@ public class HttpExceptionBuilder<T extends BasicHttpException> extends BasicRun * @return This object (for method chaining). */ public HttpExceptionBuilder<T> setHeaders(Header...values) { - headerListBuilder().set(values); + headersBuilder().set(values); return this; } @@ -376,7 +376,7 @@ public class HttpExceptionBuilder<T extends BasicHttpException> extends BasicRun * @return This object (for method chaining). */ public HttpExceptionBuilder<T> setHeaders(List<Header> values) { - headerListBuilder().set(values); + headersBuilder().set(values); return this; } @@ -418,12 +418,12 @@ public class HttpExceptionBuilder<T extends BasicHttpException> extends BasicRun return statusLineBuilder; } - private HeaderListBuilder headerListBuilder() { - if (headerListBuilder == null) { - headerListBuilder = headerList == null ? HeaderList.create() : headerList.copy(); - headerList = null; + private HeaderListBuilder headersBuilder() { + if (headersBuilder == null) { + headersBuilder = headers == null ? HeaderList.create() : headers.copy(); + headers = null; } - return headerListBuilder; + return headersBuilder; } // <FluentSetters> diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/response/HttpResponseBuilder.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/response/HttpResponseBuilder.java index f8df535..021359b 100644 --- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/response/HttpResponseBuilder.java +++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/http/response/HttpResponseBuilder.java @@ -32,9 +32,9 @@ import org.apache.juneau.internal.*; public class HttpResponseBuilder<T extends BasicHttpResponse> { BasicStatusLine statusLine; - HeaderList headerList = HeaderList.EMPTY; + HeaderList headers = HeaderList.EMPTY; BasicStatusLineBuilder statusLineBuilder; - HeaderListBuilder headerListBuilder; + HeaderListBuilder headersBuilder; HttpEntity body; boolean unmodifiable; @@ -59,7 +59,7 @@ public class HttpResponseBuilder<T extends BasicHttpResponse> { public HttpResponseBuilder(T copyFrom) { implClass = copyFrom.getClass(); statusLine = copyFrom.statusLine; - headerList = copyFrom.headerList; + headers = copyFrom.headers; body = copyFrom.body; } @@ -95,12 +95,12 @@ public class HttpResponseBuilder<T extends BasicHttpResponse> { return statusLine; } - HeaderList headerList() { - if (headerListBuilder != null) - return headerListBuilder.build(); - if (headerList == null) + HeaderList headers() { + if (headersBuilder != null) + return headersBuilder.build(); + if (headers == null) return HeaderList.EMPTY; - return headerList; + return headers; } /** @@ -224,9 +224,9 @@ public class HttpResponseBuilder<T extends BasicHttpResponse> { * @return This object (for method chaining). */ @FluentSetter - public HttpResponseBuilder<T> headerList(HeaderList value) { - headerList = value; - headerListBuilder = null; + public HttpResponseBuilder<T> headers(HeaderList value) { + headers = value; + headersBuilder = null; return this; } @@ -236,7 +236,7 @@ public class HttpResponseBuilder<T extends BasicHttpResponse> { * @return This object (for method chaining). */ public HttpResponseBuilder<T> clearHeaders() { - headerListBuilder().clear(); + headersBuilder().clear(); return this; } @@ -247,7 +247,7 @@ public class HttpResponseBuilder<T extends BasicHttpResponse> { * @return This object (for method chaining). */ public HttpResponseBuilder<T> header(Header value) { - headerListBuilder().add(value); + headersBuilder().add(value); return this; } @@ -259,7 +259,7 @@ public class HttpResponseBuilder<T extends BasicHttpResponse> { * @return This object (for method chaining). */ public HttpResponseBuilder<T> header(String name, String value) { - headerListBuilder().add(name, value); + headersBuilder().add(name, value); return this; } @@ -270,7 +270,7 @@ public class HttpResponseBuilder<T extends BasicHttpResponse> { * @return This object (for method chaining). */ public HttpResponseBuilder<T> headers(Header...values) { - headerListBuilder().add(values); + headersBuilder().add(values); return this; } @@ -281,7 +281,7 @@ public class HttpResponseBuilder<T extends BasicHttpResponse> { * @return This object (for method chaining). */ public HttpResponseBuilder<T> headers(List<Header> values) { - headerListBuilder().add(values); + headersBuilder().add(values); return this; } @@ -292,7 +292,7 @@ public class HttpResponseBuilder<T extends BasicHttpResponse> { * @return This object (for method chaining). */ public HttpResponseBuilder<T> removeHeader(Header value) { - headerListBuilder().remove(value); + headersBuilder().remove(value); return this; } @@ -303,7 +303,7 @@ public class HttpResponseBuilder<T extends BasicHttpResponse> { * @return This object (for method chaining). */ public HttpResponseBuilder<T> removeHeaders(Header...values) { - headerListBuilder().remove(values); + headersBuilder().remove(values); return this; } @@ -314,7 +314,7 @@ public class HttpResponseBuilder<T extends BasicHttpResponse> { * @return This object (for method chaining). */ public HttpResponseBuilder<T> removeHeaders(List<Header> values) { - headerListBuilder().remove(values); + headersBuilder().remove(values); return this; } @@ -328,7 +328,7 @@ public class HttpResponseBuilder<T extends BasicHttpResponse> { * @return This object (for method chaining). */ public HttpResponseBuilder<T> updateHeader(Header value) { - headerListBuilder().update(value); + headersBuilder().update(value); return this; } @@ -342,7 +342,7 @@ public class HttpResponseBuilder<T extends BasicHttpResponse> { * @return This object (for method chaining). */ public HttpResponseBuilder<T> updateHeaders(Header...values) { - headerListBuilder().update(values); + headersBuilder().update(values); return this; } @@ -356,7 +356,7 @@ public class HttpResponseBuilder<T extends BasicHttpResponse> { * @return This object (for method chaining). */ public HttpResponseBuilder<T> updateHeaders(List<Header> values) { - headerListBuilder().update(values); + headersBuilder().update(values); return this; } @@ -370,7 +370,7 @@ public class HttpResponseBuilder<T extends BasicHttpResponse> { * @return This object (for method chaining). */ public HttpResponseBuilder<T> setHeaders(Header...values) { - headerListBuilder().set(values); + headersBuilder().set(values); return this; } @@ -384,7 +384,7 @@ public class HttpResponseBuilder<T extends BasicHttpResponse> { * @return This object (for method chaining). */ public HttpResponseBuilder<T> setHeaders(List<Header> values) { - headerListBuilder().set(values); + headersBuilder().set(values); return this; } @@ -449,12 +449,12 @@ public class HttpResponseBuilder<T extends BasicHttpResponse> { return statusLineBuilder; } - private HeaderListBuilder headerListBuilder() { - if (headerListBuilder == null) { - headerListBuilder = headerList == null ? HeaderList.create() : headerList.copy(); - headerList = null; + private HeaderListBuilder headersBuilder() { + if (headersBuilder == null) { + headersBuilder = headers == null ? HeaderList.create() : headers.copy(); + headers = null; } - return headerListBuilder; + return headersBuilder; } // <FluentSetters> diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/internal/IOUtils.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/internal/IOUtils.java index 1e301b1..11760d0 100644 --- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/internal/IOUtils.java +++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/internal/IOUtils.java @@ -16,8 +16,6 @@ import java.io.*; import java.nio.charset.*; import java.util.*; -import org.apache.juneau.utils.*; - /** * Various I/O related utility methods. */ @@ -167,23 +165,6 @@ public final class IOUtils { } /** - * Pipes the contents of the specified object into the output stream. - * - * <p> - * The input stream is closed, the output stream is not. - * - * @param in - * The input to pipe from. - * @param out - * The writer to pipe to. - * @throws IOException Thrown by underlying stream. - */ - @Deprecated - public static void pipe(Object in, OutputStream out) throws IOException { - IOPipe.create(in, out).run(); - } - - /** * Pipes the specified input stream to the specified output stream. * * <p> diff --git a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/utils/IOPipe.java b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/utils/IOPipe.java deleted file mode 100644 index 9e95d16..0000000 --- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/utils/IOPipe.java +++ /dev/null @@ -1,250 +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. * -// *************************************************************************************************************************** -package org.apache.juneau.utils; - -import static org.apache.juneau.internal.IOUtils.*; -import static org.apache.juneau.internal.ThrowableUtils.*; - -import java.io.*; -import java.util.*; - -import org.apache.juneau.internal.*; - -/** - * A utility class for piping input streams and readers to output streams and writers. - * - * <p> - * A typical usage is as follows... - * <p class='bcode w800'> - * InputStream in = getInputStream(); - * Writer out = getWriter(); - * IOPipe.<jsm>create</jsm>(in, out).closeOut().run(); - * </p> - * - * <p> - * By default, the input stream is closed and the output stream is not. - * This can be changed by calling {@link #closeOut()} and {@link #close(boolean, boolean)}. - */ -public class IOPipe { - - private Object input, output; - private boolean byLines; - private boolean closeIn = true, closeOut; - private int buffSize = 1024; - private LineProcessor lineProcessor; - - private IOPipe(Object input, Object output) { - assertFieldNotNull(input, "input"); - assertFieldNotNull(output, "output"); - - if (input instanceof InputStream || input instanceof Reader || input instanceof File || input instanceof byte[] || input instanceof CharSequence || input == null) - this.input = input; - else - illegalArg("Invalid input class type. Must be one of the following: InputStream, Reader, CharSequence, byte[], File"); - - if (output instanceof OutputStream || output instanceof Writer) - this.output = output; - else - illegalArg("Invalid output class type. Must be one of the following: OutputStream, Writer"); - } - - /** - * Creates a new pipe with the specified input and output. - * - * @param input The input. Must be one of the following types: Reader, InputStream, CharSequence. - * @param output The output. Must be one of the following types: Writer, OutputStream. - * @return This object (for method chaining). - */ - public static IOPipe create(Object input, Object output) { - return new IOPipe(input, output); - } - - /** - * Close output after piping. - * - * @return This object (for method chaining). - */ - public IOPipe closeOut() { - this.closeOut = true; - return this; - } - - /** - * Specifies whether to close the input and output after piping. - * - * @param in Close input stream. Default is <jk>true</jk>. - * @param out Close output stream. Default is <jk>false</jk>. - * @return This object (for method chaining). - */ - public IOPipe close(boolean in, boolean out) { - this.closeIn = in; - this.closeOut = out; - return this; - } - - /** - * Specifies the temporary buffer size. - * - * @param buffSize The buffer size. Default is <c>1024</c>. - * @return This object (for method chaining). - */ - public IOPipe buffSize(int buffSize) { - assertFieldPositive(buffSize, "buffSize"); - this.buffSize = buffSize; - return this; - } - - /** - * Specifies whether the content should be piped line-by-line. - * - * <p> - * This can be useful if you're trying to pipe console-based input. - * - * @param byLines Pipe content line-by-line. Default is <jk>false</jk>. - * @return This object (for method chaining). - */ - public IOPipe byLines(boolean byLines) { - this.byLines = byLines; - return this; - } - - /** - * Same as calling {@link #byLines()} with <jk>true</jk>. - * - * @return This object (for method chaining). - */ - public IOPipe byLines() { - this.byLines = true; - return this; - } - - /** - * Specifies a line processor that can be used to process lines before they're piped to the output. - * - * @param lineProcessor The line processor. - * @return This object (for method chaining). - */ - public IOPipe lineProcessor(LineProcessor lineProcessor) { - this.lineProcessor = lineProcessor; - return this; - } - - /** - * Interface to implement for the {@link #lineProcessor(LineProcessor)} method. - */ - public interface LineProcessor { - /** - * Process the specified line. - * - * @param line The line to process. - * @return The processed line. - */ - public String process(String line); - } - - /** - * Performs the piping of the input to the output. - * - * @return The number of bytes (if streams) or characters (if readers/writers) piped. - * @throws IOException Thrown by underlying stream. - */ - public int run() throws IOException { - - int c = 0; - - try { - if (input == null) - return 0; - - if ((input instanceof InputStream || input instanceof byte[]) && output instanceof OutputStream && lineProcessor == null) { - OutputStream out = (OutputStream)output; - if (input instanceof InputStream) { - InputStream in = (InputStream)input; - byte[] b = new byte[buffSize]; - int i; - while ((i = in.read(b)) > 0) { - c += i; - out.write(b, 0, i); - } - } else { - byte[] b = (byte[])input; - out.write(b); - c = b.length; - } - out.flush(); - } else { - @SuppressWarnings("resource") - Writer out = (output instanceof Writer ? (Writer)output : new OutputStreamWriter((OutputStream)output, UTF8)); - closeIn |= input instanceof File; - if (byLines || lineProcessor != null) { - Reader in = null; - if (input instanceof Reader) - in = (Reader)input; - else if (input instanceof InputStream) - in = new InputStreamReader((InputStream)input, UTF8); - else if (input instanceof File) - in = new FileReader((File)input); - else if (input instanceof byte[]) - in = new StringReader(new String((byte[])input, "UTF8")); - else if (input instanceof CharSequence) - in = new StringReader(input.toString()); - try (Scanner s = new Scanner(in)) { - while (s.hasNextLine()) { - String l = s.nextLine(); - if (lineProcessor != null) - l = lineProcessor.process(l); - if (l != null) { - out.write(l); - out.write("\n"); - out.flush(); - c += l.length() + 1; - } - } - } - } else { - if (input instanceof InputStream) - input = new InputStreamReader((InputStream)input, UTF8); - else if (input instanceof File) - input = new FileReader((File)input); - else if (input instanceof byte[]) - input = new String((byte[])input, UTF8); - - if (input instanceof Reader) { - Reader in = (Reader)input; - int i; - char[] b = new char[buffSize]; - while ((i = in.read(b)) > 0) { - c += i; - out.write(b, 0, i); - } - } else { - String s = input.toString(); - out.write(s); - c = s.length(); - } - } - out.flush(); - } - } finally { - closeQuietly(input, output); - } - return c; - } - - private void closeQuietly(Object input, Object output) { - if (closeIn) - IOUtils.closeQuietly(input); - if (closeOut) - IOUtils.closeQuietly(output); - } -} diff --git a/juneau-rest/juneau-rest-client/src/main/java/org/apache/juneau/rest/client/remote/RemoteMeta.java b/juneau-rest/juneau-rest-client/src/main/java/org/apache/juneau/rest/client/remote/RemoteMeta.java index f2e0b60..f833575 100644 --- a/juneau-rest/juneau-rest-client/src/main/java/org/apache/juneau/rest/client/remote/RemoteMeta.java +++ b/juneau-rest/juneau-rest-client/src/main/java/org/apache/juneau/rest/client/remote/RemoteMeta.java @@ -37,7 +37,7 @@ import org.apache.juneau.svl.*; public class RemoteMeta { private final Map<Method,RemoteOperationMeta> operations; - private final HeaderList headerList; + private final HeaderList headers; /** * Constructor. @@ -53,20 +53,20 @@ public class RemoteMeta { path = trimSlashes(r.path()); String versionHeader = "Client-Version", clientVersion = null; - HeaderListBuilder headerListBuilder = HeaderList.create().resolving(); + HeaderListBuilder headersBuilder = HeaderList.create().resolving(); for (Remote r : ci.getAnnotations(Remote.class)) { if (! r.path().isEmpty()) path = trimSlashes(resolve(r.path())); for (String h : r.headers()) - headerListBuilder.add(basicHeader(resolve(h))); + headersBuilder.add(basicHeader(resolve(h))); if (! r.version().isEmpty()) clientVersion = resolve(r.version()); if (! r.versionHeader().isEmpty()) versionHeader = resolve(r.versionHeader()); if (r.headerList() != HeaderList.Null.class) { try { - headerListBuilder.add(r.headerList().newInstance().getAll()); + headersBuilder.add(r.headerList().newInstance().getAll()); } catch (Exception e) { throw new RuntimeException("Could not instantiate HeaderSupplier class.", e); } @@ -74,14 +74,14 @@ public class RemoteMeta { } if (clientVersion != null) - headerListBuilder.add(stringHeader(versionHeader, clientVersion)); + headersBuilder.add(stringHeader(versionHeader, clientVersion)); AMap<Method,RemoteOperationMeta> operations = AMap.create(); for (MethodInfo m : ci.getPublicMethods()) operations.put(m.inner(), new RemoteOperationMeta(path, m.inner(), "GET")); this.operations = operations.unmodifiable(); - this.headerList = headerListBuilder.build(); + this.headers = headersBuilder.build(); } /** @@ -100,7 +100,7 @@ public class RemoteMeta { * @return The headers to set on all requests. */ public HeaderList getHeaders() { - return headerList; + return headers; } //------------------------------------------------------------------------------------------------------------------