Class EncryptionResponseBodyAdvice
java.lang.Object
io.getlime.security.powerauth.rest.api.spring.filter.EncryptionResponseBodyAdvice
- All Implemented Interfaces:
org.springframework.web.servlet.mvc.method.annotation.ResponseBodyAdvice<java.lang.Object>
@ControllerAdvice
public class EncryptionResponseBodyAdvice
extends java.lang.Object
implements org.springframework.web.servlet.mvc.method.annotation.ResponseBodyAdvice<java.lang.Object>
Controller advice used for encryption of responses of REST endpoints.
- Author:
- Roman Strobl, roman.strobl@wultra.com
-
Constructor Summary
Constructors Constructor Description EncryptionResponseBodyAdvice() -
Method Summary
Modifier and Type Method Description java.lang.ObjectbeforeBodyWrite(java.lang.Object response, org.springframework.core.MethodParameter methodParameter, org.springframework.http.MediaType mediaType, java.lang.Class<? extends org.springframework.http.converter.HttpMessageConverter<?>> converterClass, org.springframework.http.server.ServerHttpRequest serverHttpRequest, org.springframework.http.server.ServerHttpResponse serverHttpResponse)Encrypt response before writing body.voidsetRequestMappingHandlerAdapter(org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter requestMappingHandlerAdapter)booleansupports(org.springframework.core.MethodParameter methodParameter, java.lang.Class<? extends org.springframework.http.converter.HttpMessageConverter<?>> converterClass)Whether method supports encryption.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Constructor Details
-
EncryptionResponseBodyAdvice
public EncryptionResponseBodyAdvice()
-
-
Method Details
-
setRequestMappingHandlerAdapter
@Autowired public void setRequestMappingHandlerAdapter(org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter requestMappingHandlerAdapter) -
supports
public boolean supports(@NonNull org.springframework.core.MethodParameter methodParameter, @NonNull java.lang.Class<? extends org.springframework.http.converter.HttpMessageConverter<?>> converterClass)Whether method supports encryption. Standard implementation supports conversion to JSON, String or byte[].- Specified by:
supportsin interfaceorg.springframework.web.servlet.mvc.method.annotation.ResponseBodyAdvice<java.lang.Object>- Parameters:
methodParameter- Method parameter.converterClass- Chosen HTTP message converter class.- Returns:
- Whether method supports encryption.
-
beforeBodyWrite
public java.lang.Object beforeBodyWrite(java.lang.Object response, @NonNull org.springframework.core.MethodParameter methodParameter, @NonNull org.springframework.http.MediaType mediaType, @NonNull java.lang.Class<? extends org.springframework.http.converter.HttpMessageConverter<?>> converterClass, @NonNull org.springframework.http.server.ServerHttpRequest serverHttpRequest, @NonNull org.springframework.http.server.ServerHttpResponse serverHttpResponse)Encrypt response before writing body.- Specified by:
beforeBodyWritein interfaceorg.springframework.web.servlet.mvc.method.annotation.ResponseBodyAdvice<java.lang.Object>- Parameters:
response- Response object.methodParameter- Method parameter.mediaType- Selected HTTP response media type.converterClass- Selected HTTP message converter class.serverHttpRequest- HTTP request.serverHttpResponse- HTTP response.- Returns:
- ECIES cryptogram.
-