Catalog alignment
[sdc.git] / common-app-api / src / main / java / org / openecomp / sdc / common / log / interceptors / ApacheClientLogResponseInterceptor.java
1 package org.openecomp.sdc.common.log.interceptors;
2
3 import org.apache.http.*;
4 import org.apache.http.protocol.HttpContext;
5 import org.onap.logging.filter.base.AbstractMetricLogFilter;
6 import org.onap.logging.ref.slf4j.ONAPLogConstants;
7 import org.openecomp.sdc.common.log.elements.LogFieldsMdcHandler;
8
9 import java.io.IOException;
10 import java.net.URI;
11
12 public class ApacheClientLogResponseInterceptor extends AbstractMetricLogFilter<HttpRequest, HttpResponse, HttpMessage> implements HttpResponseInterceptor {
13
14     @Override
15     protected void addHeader(HttpMessage httpMessage, String s, String s1) {
16         httpMessage.addHeader(s, s1);
17     }
18
19     @Override
20     protected String getTargetServiceName(HttpRequest httpRequest) {
21         return httpRequest.getRequestLine().getUri();
22     }
23
24     @Override
25     protected String getServiceName(HttpRequest httpRequest) {
26         return URI.create(httpRequest.getRequestLine().getUri()).getPath();
27     }
28
29     @Override
30     protected int getHttpStatusCode(HttpResponse httpResponse) {
31         return httpResponse.getStatusLine().getStatusCode();
32     }
33
34     @Override
35     protected String getResponseCode(HttpResponse httpResponse) {
36         return String.valueOf(httpResponse.getStatusLine().getStatusCode());
37     }
38
39     @Override
40     protected String getTargetEntity(HttpRequest httpRequest) {
41         //fallback to default value that provided by AbstractMetricLogFilter
42         return null;
43     }
44
45     @Override
46     public void process(HttpResponse httpResponse, HttpContext httpContext) throws HttpException, IOException {
47         super.post(null, httpResponse);
48     }
49 }