Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- diff --git a/httpcore5/src/main/java/org/apache/hc/core5/http/impl/io/BHttpConnectionBase.java b/httpcore5/src/main/java/org/apache/hc/core5/http/impl/io/BHttpConnectionBase.java
- index fdf4ab0..9a43a90 100644
- --- a/httpcore5/src/main/java/org/apache/hc/core5/http/impl/io/BHttpConnectionBase.java
- +++ b/httpcore5/src/main/java/org/apache/hc/core5/http/impl/io/BHttpConnectionBase.java
- @@ -58,6 +58,7 @@
- import org.apache.hc.core5.http.io.BHttpConnection;
- import org.apache.hc.core5.http.io.SessionInputBuffer;
- import org.apache.hc.core5.http.io.SessionOutputBuffer;
- +import org.apache.hc.core5.http.io.entity.InputStreamEntity;
- import org.apache.hc.core5.io.CloseMode;
- import org.apache.hc.core5.io.Closer;
- import org.apache.hc.core5.net.InetAddressUtils;
- @@ -172,12 +173,20 @@
- final HttpMessage message,
- final SessionInputBuffer inBuffer,
- final InputStream inputStream,
- - final long len) {
- - return new IncomingHttpEntity(
- - createContentInputStream(len, inBuffer, inputStream),
- - len >= 0 ? len : -1, len == ContentLengthStrategy.CHUNKED,
- - message.getFirstHeader(HttpHeaders.CONTENT_TYPE),
- - message.getFirstHeader(HttpHeaders.CONTENT_ENCODING));
- + final long len) {
- + final InputStreamEntity inputStreamEntity = new InputStreamEntity(
- + createContentInputStream(len, inBuffer, inputStream),
- + len >= 0 ? len : -1);
- + inputStreamEntity.setChunked(len == ContentLengthStrategy.CHUNKED);
- + final Header ctHeader = message.getFirstHeader(HttpHeaders.CONTENT_TYPE);
- + if (ctHeader != null) {
- + inputStreamEntity.setContentType(ctHeader.getValue());
- + }
- + final Header ceHeader = message.getFirstHeader(HttpHeaders.CONTENT_ENCODING);
- + if (ceHeader != null) {
- + inputStreamEntity.setContentEncoding(ceHeader.getValue());
- + }
- + return inputStreamEntity;
- }
- @Override
- diff --git a/httpcore5/src/main/java/org/apache/hc/core5/http/impl/io/IncomingHttpEntity.java b/httpcore5/src/main/java/org/apache/hc/core5/http/impl/io/IncomingHttpEntity.java
- deleted file mode 100644
- index 8da8065..0000000
- --- a/httpcore5/src/main/java/org/apache/hc/core5/http/impl/io/IncomingHttpEntity.java
- +++ /dev/null
- @@ -1,107 +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.core5.http.impl.io;
- -
- -import java.io.IOException;
- -import java.io.InputStream;
- -import java.util.Collections;
- -import java.util.List;
- -import java.util.Set;
- -
- -import org.apache.hc.core5.http.Header;
- -import org.apache.hc.core5.function.Supplier;
- -import org.apache.hc.core5.http.io.entity.AbstractImmutableHttpEntity;
- -import org.apache.hc.core5.io.Closer;
- -
- -class IncomingHttpEntity extends AbstractImmutableHttpEntity {
- -
- - private final InputStream content;
- - private final long len;
- - private final boolean chunked;
- - private final Header contentType;
- - private final Header contentEncoding;
- -
- - IncomingHttpEntity(final InputStream content, final long len, final boolean chunked, final Header contentType, final Header contentEncoding) {
- - this.content = content;
- - this.len = len;
- - this.chunked = chunked;
- - this.contentType = contentType;
- - this.contentEncoding = contentEncoding;
- - }
- -
- - @Override
- - public boolean isRepeatable() {
- - return false;
- - }
- -
- - @Override
- - public boolean isChunked() {
- - return chunked;
- - }
- -
- - @Override
- - public long getContentLength() {
- - return len;
- - }
- -
- - @Override
- - public String getContentType() {
- - return contentType != null ? contentType.getValue() : null;
- - }
- -
- - @Override
- - public String getContentEncoding() {
- - return contentEncoding != null ? contentEncoding.getValue() : null;
- - }
- -
- - @Override
- - public InputStream getContent() throws IOException, IllegalStateException {
- - return content;
- - }
- -
- - @Override
- - public boolean isStreaming() {
- - return content != null && content != EmptyInputStream.INSTANCE;
- - }
- -
- - @Override
- - public Supplier<List<? extends Header>> getTrailers() {
- - return null;
- - }
- -
- - @Override
- - public Set<String> getTrailerNames() {
- - return Collections.emptySet();
- - }
- -
- - @Override
- - public void close() throws IOException {
- - Closer.close(content);
- - }
- -
- -}
- diff --git a/httpcore5/src/main/java/org/apache/hc/core5/http/io/entity/InputStreamEntity.java b/httpcore5/src/main/java/org/apache/hc/core5/http/io/entity/InputStreamEntity.java
- index 9180183..19d38be 100644
- --- a/httpcore5/src/main/java/org/apache/hc/core5/http/io/entity/InputStreamEntity.java
- +++ b/httpcore5/src/main/java/org/apache/hc/core5/http/io/entity/InputStreamEntity.java
- @@ -32,6 +32,7 @@
- import java.io.OutputStream;
- import org.apache.hc.core5.http.ContentType;
- +import org.apache.hc.core5.http.impl.io.EmptyInputStream;
- import org.apache.hc.core5.util.Args;
- /**
- @@ -150,7 +151,7 @@
- @Override
- public boolean isStreaming() {
- - return true;
- + return this.content != EmptyInputStream.INSTANCE;
- }
- @Override
Advertisement
Add Comment
Please, Sign In to add comment