2 * ============LICENSE_START======================================================================
3 * Copyright (C) 2020-2021 Nokia. All rights reserved.
4 * ===============================================================================================
5 * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
6 * in compliance with the License. You may obtain a copy of the License at
8 * http://www.apache.org/licenses/LICENSE-2.0
10 * Unless required by applicable law or agreed to in writing, software distributed under the License
11 * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
12 * or implied. See the License for the specific language governing permissions and limitations under
14 * ============LICENSE_END========================================================================
16 package org.onap.dcaegen2.collectors.datafile.http;
18 import io.netty.handler.codec.http.HttpHeaders;
19 import io.netty.handler.codec.http.HttpMethod;
20 import io.netty.handler.codec.http.HttpResponseStatus;
21 import io.netty.handler.codec.http.HttpVersion;
22 import io.netty.handler.codec.http.cookie.Cookie;
23 import org.apache.http.Header;
24 import org.apache.http.HeaderIterator;
25 import org.apache.http.HttpEntity;
26 import org.apache.http.ProtocolVersion;
27 import org.apache.http.StatusLine;
28 import org.apache.http.client.methods.CloseableHttpResponse;
29 import org.apache.http.params.HttpParams;
30 import reactor.netty.http.client.HttpClientResponse;
31 import reactor.util.context.Context;
32 import reactor.util.context.ContextView;
34 import java.io.ByteArrayInputStream;
35 import java.io.IOException;
36 import java.io.InputStream;
37 import java.io.OutputStream;
38 import java.util.Locale;
42 public class HttpClientResponseHelper {
44 public static final HttpClientResponse NETTY_RESPONSE_OK = new HttpClientResponse() {
47 public Map<CharSequence, Set<Cookie>> cookies() {
52 public boolean isKeepAlive() {
57 public boolean isWebsocket() {
62 public HttpMethod method() {
67 public String path() {
72 public String fullPath() {
77 public String requestId() {
87 public HttpVersion version() {
92 public Context currentContext() {
97 public ContextView currentContextView() {
102 public String[] redirectedFrom() {
103 return new String[0];
107 public HttpHeaders requestHeaders() {
112 public String resourceUrl() {
117 public HttpHeaders responseHeaders() {
122 public HttpResponseStatus status() {
123 return HttpResponseStatus.OK;
127 public static final HttpClientResponse RESPONSE_ANY_NO_OK = new HttpClientResponse() {
130 public Map<CharSequence, Set<Cookie>> cookies() {
135 public boolean isKeepAlive() {
140 public boolean isWebsocket() {
145 public HttpMethod method() {
150 public String fullPath() {
155 public String requestId() {
160 public String uri() {
165 public HttpVersion version() {
169 @Override public Context currentContext() {
173 @Override public ContextView currentContextView() {
177 @Override public String[] redirectedFrom() {
178 return new String[0];
181 @Override public HttpHeaders requestHeaders() {
185 @Override public String resourceUrl() {
189 @Override public HttpHeaders responseHeaders() {
193 @Override public HttpResponseStatus status() {
194 return HttpResponseStatus.NOT_IMPLEMENTED;
198 public static final CloseableHttpResponse APACHE_RESPONSE_OK = new CloseableHttpResponse() {
199 @Override public void close() throws IOException {
200 getEntity().getContent().close();
203 @Override public StatusLine getStatusLine() {
204 return new StatusLine() {
205 @Override public ProtocolVersion getProtocolVersion() {
209 @Override public int getStatusCode() {
213 @Override public String getReasonPhrase() {
219 @Override public void setStatusLine(StatusLine statusLine) {
223 @Override public void setStatusLine(ProtocolVersion protocolVersion, int i) {
227 @Override public void setStatusLine(ProtocolVersion protocolVersion, int i, String s) {
231 @Override public void setStatusCode(int i) throws IllegalStateException {
235 @Override public void setReasonPhrase(String s) throws IllegalStateException {
239 @Override public HttpEntity getEntity() {
240 return new HttpEntity() {
241 @Override public boolean isRepeatable() {
245 @Override public boolean isChunked() {
249 @Override public long getContentLength() {
253 @Override public Header getContentType() {
257 @Override public Header getContentEncoding() {
261 @Override public InputStream getContent() throws IOException, UnsupportedOperationException {
262 return new ByteArrayInputStream("abc".getBytes());
265 @Override public void writeTo(OutputStream outputStream) throws IOException {
269 @Override public boolean isStreaming() {
273 @Override public void consumeContent() throws IOException {
279 @Override public void setEntity(HttpEntity httpEntity) {
283 @Override public Locale getLocale() {
287 @Override public void setLocale(Locale locale) {
291 @Override public ProtocolVersion getProtocolVersion() {
295 @Override public boolean containsHeader(String s) {
299 @Override public Header[] getHeaders(String s) {
300 return new Header[0];
303 @Override public Header getFirstHeader(String s) {
307 @Override public Header getLastHeader(String s) {
311 @Override public Header[] getAllHeaders() {
312 return new Header[0];
315 @Override public void addHeader(Header header) {
319 @Override public void addHeader(String s, String s1) {
323 @Override public void setHeader(Header header) {
327 @Override public void setHeader(String s, String s1) {
331 @Override public void setHeaders(Header[] headers) {
335 @Override public void removeHeader(Header header) {
339 @Override public void removeHeaders(String s) {
343 @Override public HeaderIterator headerIterator() {
347 @Override public HeaderIterator headerIterator(String s) {
351 @Override public HttpParams getParams() {
355 @Override public void setParams(HttpParams httpParams) {