Package sk.antons.sbutils.http
Class LoggingInterceptor
java.lang.Object
sk.antons.sbutils.http.LoggingInterceptor
- All Implemented Interfaces:
org.springframework.http.client.ClientHttpRequestInterceptor
public class LoggingInterceptor
extends Object
implements org.springframework.http.client.ClientHttpRequestInterceptor
ClientHttpRequestInterceptor implementation. It logs http requests and
responses and allows you to define where and how it will be printed.
- Author:
- antons
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classHelper class for default Body to string converters.static classHelper class for default HttpHeaders convertors. -
Method Summary
Modifier and TypeMethodDescriptionvoidaddToTemplate(org.springframework.web.client.RestTemplate template) Add this interceptor to RestTemplate instancestatic LoggingInterceptorinstance()org.springframework.http.client.ClientHttpResponseintercept(org.springframework.http.HttpRequest request, byte[] body, org.springframework.http.client.ClientHttpRequestExecution execution) Method for logging message about request and responseloggerEnabled(BooleanSupplier value) Method for controlling if logging is enabledrequestBody(Function<InputStream, String> value) Method for converting Body content to stringrequestHeaders(Function<org.springframework.http.HttpHeaders, String> value) Method for converting HttpHeaders to stringresponseBody(Function<InputStream, String> value) Method for converting Body content to stringresponseHeaders(Function<org.springframework.http.HttpHeaders, String> value) Method for converting HttpHeaders to string
-
Method Details
-
instance
-
requestHeaders
public LoggingInterceptor requestHeaders(Function<org.springframework.http.HttpHeaders, String> value) Method for converting HttpHeaders to string- Parameters:
value- method- Returns:
- this
-
responseHeaders
public LoggingInterceptor responseHeaders(Function<org.springframework.http.HttpHeaders, String> value) Method for converting HttpHeaders to string- Parameters:
value- method- Returns:
- this
-
requestBody
Method for converting Body content to string- Parameters:
value- method- Returns:
- this
-
responseBody
Method for converting Body content to string- Parameters:
value- method- Returns:
- this
-
logger
Method for logging message about request and response- Parameters:
value- method- Returns:
- this
-
loggerEnabled
Method for controlling if logging is enabled- Parameters:
value- method- Returns:
- this
-
addToTemplate
public void addToTemplate(org.springframework.web.client.RestTemplate template) Add this interceptor to RestTemplate instance- Parameters:
template-
-
intercept
public org.springframework.http.client.ClientHttpResponse intercept(org.springframework.http.HttpRequest request, byte[] body, org.springframework.http.client.ClientHttpRequestExecution execution) throws IOException - Specified by:
interceptin interfaceorg.springframework.http.client.ClientHttpRequestInterceptor- Throws:
IOException
-