Revert "Support SIP TLS"
[sdc.git] / common-app-api / src / main / java / org / openecomp / sdc / common / log / interceptors / ApacheClientLogRequestInterceptor.java
1 package org.openecomp.sdc.common.log.interceptors;
2
3 import java.io.IOException;
4 import java.net.URI;
5 import org.apache.http.HttpException;
6 import org.apache.http.HttpMessage;
7 import org.apache.http.HttpRequest;
8 import org.apache.http.HttpRequestInterceptor;
9 import org.apache.http.HttpResponse;
10 import org.apache.http.protocol.HttpContext;
11 import org.onap.logging.filter.base.AbstractMetricLogFilter;
12 import org.onap.logging.ref.slf4j.ONAPLogConstants;
13 import org.openecomp.sdc.common.log.elements.LogFieldsMdcHandler;
14
15 public class ApacheClientLogRequestInterceptor extends AbstractMetricLogFilter<HttpRequest, HttpResponse, HttpMessage> implements
16     HttpRequestInterceptor {
17
18     private String previousInvocationId;
19
20     @Override
21     protected void addHeader(HttpMessage httpMessage, String s, String s1) {
22         httpMessage.addHeader(s, s1);
23     }
24
25     @Override
26     protected String getTargetServiceName(HttpRequest httpRequest) {
27         return httpRequest.getRequestLine().getUri();
28     }
29
30     @Override
31     protected String getServiceName(HttpRequest httpRequest) {
32         return URI.create(httpRequest.getRequestLine().getUri()).getPath();
33     }
34
35     @Override
36     protected int getHttpStatusCode(HttpResponse httpResponse) {
37         return httpResponse.getStatusLine().getStatusCode();
38     }
39
40     @Override
41     protected String getResponseCode(HttpResponse httpResponse) {
42         return String.valueOf(httpResponse.getStatusLine().getStatusCode());
43     }
44
45     @Override
46     protected String getTargetEntity(HttpRequest httpRequest) {
47         //fallback to default value that provided by AbstractMetricLogFilter
48         return null;
49     }
50
51     @Override
52     protected void additionalPre(HttpRequest httpRequest, HttpMessage httpMessage) {
53         String outgoingInvocationId = httpMessage.getFirstHeader(ONAPLogConstants.Headers.INVOCATION_ID).getValue();
54         LogFieldsMdcHandler.getInstance().setOutgoingInvocationId(outgoingInvocationId);
55         LogFieldsMdcHandler.getInstance().setKeyInvocationId(previousInvocationId);
56     }
57
58     @Override
59     public void process(HttpRequest httpRequest, HttpContext httpContext) throws HttpException, IOException {
60         previousInvocationId = LogFieldsMdcHandler.getInstance().getKeyInvocationId();
61         super.pre(httpRequest, httpRequest);
62     }
63 }